Как найти процесс, который делает io часто?

Я использую ubuntu. Существуют некоторые процессы, которые часто выполняются на моем сервере, даже команда "ls" будет стоить 1 секунду для выполнения. Я хочу узнать, какой процесс делает так сильно, есть ли какая-нибудь хорошая команда или инструмент?

Спасибо.

Ответы

Ответ 1

Вы можете использовать iotop для поиска процессов, которые являются тяжелыми.

Ответ 2

Быстрый способ - посмотреть файл /proc/[PID]/io.

Пример:

$ cat /proc/1944/io
read_bytes: 17961091072
write_bytes: 8192000
cancelled_write_bytes: 32768

Ответ 3

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

Ответ 4

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

Disk utilization — key 'd'

Ответ 5

вы можете попробовать pidstat. Я нашел это полезным, когда мне нужно определить, какой процесс сделал с высоким уровнем io.