У меня есть постоянная скорость чтения ввода-вывода 1,4 мегабайта / сек на одном сервере (см. Вывод iostat ниже). Что я могу сделать, чтобы выяснить, какой процесс является причиной? Я уже пробовал iotop и htop, но не смог определить проблему с помощью thoses:
Linux 2.6.35.4-x86_64-linode16 (la-machine) 02/16/11 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.16 0.01 0.11 0.68 0.01 99.03
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
xvda 42.29 1.39 0.08 568159 30959
xvdb 0.45 0.00 0.00 988 1202
Любой намек на использование htop / iotop или другого инструмента, который поможет мне узнать, какой процесс съедает диск? (Это сервер с нулевым трафиком в настоящее время).
Спасибо!
http://www.linuxinsight.com/proc_sys_vm_block_dump.html
Устанавливать vm.block_dump
на секунду, а затем сразу выключите (sysctl -w ... ; sleep 1; sysctl -w ...
). dmesg
потом раскрывает всю подноготную.
Поскольку вы уже использовали iotop, я не уверен, насколько это полезно, но вы можете использовать systemtap, например
stap -v iotop.stp
и он даст вам результат
Process KB Read KB Written
Xorg 21 0
crond 10 0
wfica 2 0
попробуйте с учетом процесса.
Такие инструменты, как верхняя часть в сочетании с учетом процессов, смогут показать вам, какие процессы используют дисковый ввод-вывод больше всего.
вы также можете проверить инструмент командной строки "sa", чтобы интерпретировать информацию об учете процессов и сортировать процессы по (среднему) количеству операций ввода-вывода
Что ж, вы можете начать с запуска lsof, чтобы сузить, какие процессы открывают файлы в любой файловой системе, расположенной на / dev / xvda. Проверьте свои /etc/fstab
чтобы определить, какая это файловая система.