Taglinux

strace нескольких процессов одновременно

Иногда надо стрейсить, а конкретный pid процесса неизвестен. И следовать fork-у тоже нельзя, т.к. дофига посторонних процессов. Но в моем случае я знал под каким пользователем плодятся нужные мне процессы. Придумал такую конструкцию:

for pid in $(pgrep -U USER);do (nohup strace -o filename.${pid}.strace -s4096 -e trace=network,file,ipc -p${pid} &) ;  done

Параметры strace подстраиваете уже под себя.

У меня указаны группы системных вызовов для отслеживания, все это можно вычитать из man strace :).

Проблема данного метода в том, что он конечно же не поймает новые процессы, если в этом есть необходимость — можно уже написать скрипт, хоть на bash, хоть на python, который будет висеть как демон и сканировать наличие процессов заданного юзера, и при появлении новых pid-ов, добавлять новые strace-команды.

Linux memory management p1 (тезисно)

В процессе систематизации знаний по linux системам, пришла идея создавать циклы статей, в которых тезисно описывать суть выбранной темы.

Безусловно это все не заменит чтения книг и вдумчивого разбора полетов, но для тех у кого уже есть понимание и опыт, это возможно поможет систематизировать имеющиеся знания и привнести некую структуру в них.

Сразу оговорюсь, что данные записи скорее носят роль дневника, чем мануалов по которым можно учиться, поэтому абсолютно не гарантирую, что они кому-то будут полезны или на 100% правильны.

Continue reading

Уменьшение ploop диска

В случае когда используется ploop для openvz контейнеров, иногда требуется проводить ревизию блочных устройств на предмет их размера. У них такая особенность — они автоматически растягиваются в пределах созданной файловой системы, но естественно не сжимаются (собственно особенности FS ext4 например).

В целом это ок, и не доставляет проблем, но допустим у вас заканчивается место, произошел просчет с максимально выделенным диском под контейнеры, и теперь ай-ай — места нет. Но при этом есть такие контейнеры, которые когда-то разрослись до максимума, а потом сжались обратно. Мало ли по какой причине — это не важно.

Continue reading

Intel i350 driver on Linux

Недавно настраивал bond для 4х таких карточек на сервере, столкнулся с проблемкой — по дефолту карты не определяются системой и надо ставить отдельно драйвер.

Скачал где положено исходники.

Вроде бы все поставилось, но карты так и не определяются… В логе нашел такую ошибку:

NVM Checksum Is Not Valid

Continue reading

Roundcube Error No. [500]

Иногда можно столкнуться с подобной проблемой, после попытки авторизации в этом почтовом клиенте, возвращается ошибка 500.

Что характерно — ошибка отдается именно самим roundcube-ом, а не веб-сервером, поэтому никаких полезных записей в логах найти нельзя.

После долгих мучений обнаружилось, что к такому поведению приводит кривая директива des_key в /etc/roundcubemail/config.inc.php.

По факту она должна быть 24 символа длинной, сгенерить её можно например так:

pwgen -c -s 24 1

 

© 2017 servadmin.ru

Theme by Anders NorénUp ↑