Как известно, с серверами случается всякое. Иногда они даже свопятся или как-то по-другому насилуют диск, и тогда на них бывает трудно зайти по ssh, он просто не отвечает, подвисая на ожидании ввода-вывода. Как этого избежать? Поможет ли повышение nice и ionice для sshd? Обязательно ли использовать штуки вроде memlockd? Мне кажется так как-то не энтерпрайзненько...
Всем привет.
Собственно, должно быть очевидно, но видимо не хватает знаний сетей.
Есть team из нескольких сетевух в редхате 7 в режиме round-robin. teamd при поднятии интрерфейса team0 выставляет всем портам один и тот же MAC-адрес. Соответственно, свич видит, что на разные порты летят кадры с одинаковыми маками и ругается на это. В мане не нашел способ задать разные MACи для раунд-робин режима.
Есть ли способ этого избежать в таком режиме, или только LACP/active-backup?
Товарищи, а кто может посоветовать не шибко навороченную панель для управления ДНС-серверами? Доменов относительно немного, в пределах тысячи. Основные требования:
индивидуальный контроль доступа к зонам для пользователей
не комбайн (модуль к webmin не пойдет)
в активном состоянии
желательно чтобы могло управлять BIND9
Сейчас используем proBIND, но оно умерло и не умеет в права доступа. Из того, что нагуглил, все тоже какое-то наколеночное и неживое. Есть ли что-нибудь качественное из опенсорса в этой сфере? Ну или хоть проприетарщина, если совсем все плохо...
Пишу несколько либ, которые потом используются в общем проекте, но могут, естественно, линковаться и по-отдельности. В каждой есть свой набор кодов ошибок, многие из которых, однако, пересекаются. Например, часто встречается что-то вроде CORRUPT_MESSAGE, OUT_OF_MEMORY и т.п. Есть ли стратегия, позволяющая избежать дублирования кодов ошибок?
В порядке дискуссии, может вообще стоит перейти на более продвинутую обработку ошибок, вроде метода OpenSSL, setjmp/longjmp или еще чего-нибудь?
Есть следующая проблема: некоторые офтопиковые клиенты почему считают, что сервер отдает имена файлов в какой-то странной кодировке (скорей всего автодетектит 1252). Видимо, по этой причине не может скачать файлы, в которых есть не-ascii символы (умляуты и т.п.). Кусок лога.
Можно ли как-то на стороне сервера заставить sftp-server отдавать имена в другой кодировке? И почему вообще кодировка детектится неверно? В манах ничего не нашел. На сервере локаль sv_SE.utf8.
Ни локаль сервера ни настройки клиента менять нельзя, к сожалению.
Всем привет. Возможно, вопрос дебильный, но: разве не должен tracepath вторым хопом показывать шлюз, настроенный в таблице маршрутизиции? У меня настроен шлюз .249, а ответ приходит от .248, при том что про .248 вообще в маршрутах ничего нет.
[root@server root]# ip route get 192.168.100.156
192.168.100.156 via 192.168.54.249 dev eth0 src 192.168.54.36
cache mtu 1500 advmss 1460
[root@server root]# tracepath 192.168.100.156
1?: [LOCALHOST] pmtu 1500
1: 192.168.54.248 (192.168.54.248) 1.687ms
2: no reply
2: 192.168.54.248 (192.168.54.248) asymm 1 2006.398ms !H
Resume: pmtu 1500
[root@server root]# ip route | grep 248
[root@server root]# ip route | grep default
default via 192.168.54.254 dev eth0
Нет, правда. Вот на данный момент (а это, на минуточку, почти 2014 год) в никсах отсутствует единообразная вменяемая система контроля доступа к объектам, отличным от файлов.
Нельзя сказать, что только пользователь пупкин может посылать пакеты по сети. А если бы сокет открывался каким-нибудь ioctl'ом на девайсе /dev/tcp/socket, который бы создавал файл /dev/tcp/sockets/443-192.168.1.10, то никаких проблем бы не было. То же со звуком, видео, вводом и т.п.
Почему все забили на такую удобную и простую абстракцию и кинулись делать свой апи?
inb4 Plan9
UPD: понятно, что нельзя все реализовать через файлы. Тот же вывод на экран не сделать через универсальный write(), но контроль доступа, управление и пр. некритичные к производительности вещи вроде как делаются на ура.
Собственно, хочется следующего: поставить пароль на то, чтобы поднять из фона определенные приложения. Нужно это для того, чтобы когда ты даешь другу телефон поиграться в энгри бердс, он не мог прочитать смски от любовницы или почту. Пароль, блокирующий весь телефон, в этом случае бесполезен. Да и вообще он бесполезен.
edit: хочется готовый апп, но если такого нет, то хотя бы есть ли соответствующие хуки в ведроиде (или как там это называется у них)
Всем известно, что сам проект Tor на 80% финансируется правительством США. Сейчас в сети около 3500 узлов, что весьма не много. Что мешает большей части из этих узлов быть подконтрольными тому или иному большому брату (NSA и т.п.), давая ему 99% шанс на деанонимизацию пользователя? Или тор уже не предполагает использования в качестве «абсолютного» анонимайзера, позволяя спрятаться только от неправительственных и не особо влиятельных лиц/организаций?
Чую, что какая-то страшная глупость, но что-то не придумывается.
rm -f dir/* на пустом каталоге работает нормально (т.е. ничего не делает и не выдает ошибок) на локальной ФС, а на смонтированной шаре выдает сабжевую ошибку. Монтирутся с дефолтными опциями, ничего путного в мане mount.cifs не нашел. Двойные кавычки не помогают.
Приспичило делать бэкапы линуксовой машины на smb-шару. На данный момент для бэкапов я пользуюсь rsnapshot, но оно требует поддержки хардлинков и прочих позиксовых фич на целевой фс. Чем и как можно делать инкрементальные бэкапы на smb-шару? rdiff-backup и backupPC пока завести также не удалось, сыпят ошибками.
Я думаю, эту тему уже не раз поднимали, но что-то не гуглится конкретных дел: подавалась ли кем-нибудь когда-нибудь жалоба в ФАС на то, что ОС вероятного противника предустановлена на большей части продаваемых компьютеров? Если да, то с каким результатом, если нет, то почему?
Собственно, задача стоит такая: есть зоопарк систем (linux, solaris, hp-ux, freebsd etc.), на которых нельзя ничего устанавливать в /, но надо запустить Puppet. Т.е. надо установить его в изолированное окружение, наподобие jail. Большим бонусом будет единообразие установки и обновления.
Из универсальных решений пока в голову пришло использовать Gentoo Prefix, куда потом воткнуть Puppet. Это позволит даже обновлять Puppet пакетным менеджером. Но, во-первых, расходуется куча места, а во-вторых надо будет много чего править ручками и конпелировать.
Сразу оговорюсь, что я не ахти какой спец по безопасности.
Но чего я не могу понять, так это зачем хранить в базе случайную соль? Если я правильно понимаю, хэши солятся для того, чтобы нельзя было подобрать пароль по радужным (или каким-либо другим) таблицам. При этом считается, что чем больше соль содержит энтропии, тем менее вероятно провести успешную атаку по такой таблице.
? Кто-то считает, что взломщик будет генерить таблицу по такой хренотени, причем сделает это заранее (потому что генерить ее очень долго)? Или есть еще какие-то причины?
Хочется сделать домашний мини-сервер, который будет выступать в качестве файлопомойки-торрентокачалки, роутера, полигона для тестирования всякой херни (веб-сервер, бд и т.п.), впн, ссш и прокси сервера для удаленной работы, а также, в далеком будущем, домашнего кинотеатра и точки доступа (эти два пункта не обязательно, но желательно).
Соответственно, требования:
достаточно быстрый, чтобы держать 50Мбит по L2TP
пассивное охлаждение
возможность подключить как минимум 4 (лучше 6) винтов
как минимум один свободный слот pci-e
как минимум 2 ethernet
не дороже 10к деревянных вместе с цпу и сата-контроллером
Желательно, но не критично:
возможность смотреть hd-видео и наличие соответствующих выходов
какая-нибудь встроенная ви-фи карточка, которая может работать как точка доступа
mini-itx
В принципе, предложений такого типа довольно много, можно даже найти на яндекс.маркете. Но я бы хотел спросить следующее: есть ли у кого опыт сборки подобной хрени и рекомендации? Не знает ли кто-нибудь недорогого решения в «максимальной» комплектации, т.е. CPU + 4xSATA +2xLAN + WI-FI + IrDa + OnBoard video + ... ?
У меня всегда был заремаплен CapsLock на Control. Делалось это в файле ~/.Xmodmap так:
remove Lock = Caps_Lock
remove Control = Control_L
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L
и работало уже несколько лет без каких-либо проблем. Сегодня обнаружил, что капс снова работает как капс и попытка выполнить xmodmap ~/.Xmodmap выдает следующее:
gaga@gaga:~$ xmodmap ~/.Xmodmap
xmodmap: /home/gaga/.Xmodmap:1: bad keysym in remove modifier list 'Caps_Lock', no corresponding keycodes
xmodmap: /home/gaga/.Xmodmap:3: bad keysym target keysym 'Caps_Lock', no corresponding keycodes
xmodmap: 2 errors encountered, aborting.
Пример из мана, скопипащенный один в один, тоже не работает. С чего это взялось и как с этим бороться?
Это, естественно, работает, когда объявления и реализация разнесены по разным файлам. Но у меня класс шаблонный, целиком определен в хедере и поэтому при линковке генерится ошибка multiple definition of SomeClass::A, потому что хедер включается в несколько файлов.
Собственно, как быть? Отдельный файл специально под это дело заводить не хочется.
Мне поступило заманчивое предложение сделать интерактивную онлайн-просматривалку для графа вызова функций или состояний программы. Выглядеть это должно примерно так, каждый узел - функция, по клику на него должно открываться ее описание. Ну и граф больше и на несколько экранов.
Проблемы тут две с половиной: 1. Я совсем не умею в веб-разработку, умею только в сишечки и прочие жабы; 2. Граф может довольно большим и может не влезать на экран; 2.5. Клиентские машины не самые топовые и подгрузить весь граф в память, скорее всего, будет проблематично без тормозов. Да и сервер фейсбуковским не чета.
Как это можно сделать? Подгружать узлы порциями и лепить в svg-картинку? Использовать canvas? Чисто на js/css без этих новомодных html5-примочек? Просто генерить на сервере плитку из картинок, как это делается в яндекс-картах (сервер будет сильно загружен)?
Пишу простую велосипедную библиотеку для ведения логов из программы. Она должна уметь писать в один файл из нескольких потоков. Поскольку при добавлении записи в лог туда пишется еще и заголовок, и еще много чего делается, функция записи блокируется:
Хочется теперь добавить возможность вручную получить в клиентском коде блокировку записи в лог на некоторое время, чтобы иметь возможность добавить несколько сообщений, которые гарантированно идут подряд:
Как бы это получше сделать? Очевидный вариант - использовать мьютекс с атрибутом PTHREAD_MUTEX_ERRORCHECK и дополнительный флаг manually_locked, и снимать блокировку, только если этот флаг не установлен. При этом все вызовы pthread_mutex_lock до снятия вручную блокировки будут просто возвращать EDEADLK и все ок. Проблема в том, что такие мьютексы тормозные и непереносимые.