Проблемы с обновлением одной версии за раз?

Вы могли бы хотя бы начать с iotop. Он не скажет вам, какая файловая система записывается, но она даст вам некоторые процессы для исследования.

sudo apt-get install iotop
sudo iotop

Показывает мгновенные чтения и записи диска и имя команды чтения или записи.

Если вы пытаетесь поймать процесс, который пишет нечасто, вы можете использовать параметр --accumulate или записывать вывод в файл:

sudo -i
iotop --batch > iotop_log_file

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

К этому моменту вы сможете найти некоторые подозрительные процессы кандидата. В левом столбце в iotop показан pid. Затем выясните, какой файловый дескриптор процесса записывает:

sudo -i
strace -p <pid> 2>&1 | grep write

Вы должны увидеть вывод, как это, когда процесс пишет:

write(1, "\n", 1)                       = 1
write(4, "test\n", 5)                   = 5
write(1, ">>> ", 4)                     = 4

Первый аргумент для записи - файловый дескриптор. Вероятно, мы ищем значения больше 2, потому что 0, 1 и 2 - это только stdin, stdout и stderr. Файловый дескриптор 4 выглядит интересным.

Теперь вы можете узнать, к какому файлу относится файловый дескриптор:

lsof -p <pid>

Который должен выдавать вывод, например:

...
python  23908  rob  mem    REG    8,1    26258 8392656 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
python  23908  rob    0u   CHR  136,5      0t0       8 /dev/pts/5
python  23908  rob    1u   CHR  136,5      0t0       8 /dev/pts/5
python  23908  rob    2u   CHR  136,5      0t0       8 /dev/pts/5
python  23908  rob    3w   REG   0,25      909 9049082 /home/rob/testfile
python  23908  rob    4w   REG   0,25       20 9049087 /home/rob/another_test_file

Посмотрите на четвертую колонку. 4w означает, что файловый дескриптор 4 открыт для записи, а файл - another_test_file.

Процесс можно открыть, записать, а затем закрыть файл, и в этом случае lsof не будет показывать Это. Вы могли бы поймать это с помощью:

strace -p <pid> 2>&1 | grep open
1
задан 3 January 2014 в 21:07

0 ответов

Другие вопросы по тегам:

Похожие вопросы: