В прошлой статье из серии "оптимизация Linux под нагрузку" мы рассмотрели как устроено кэширование операций записи в Debian. В этой статье мы рассмотрим какие инструменты есть в Debian для диагностирования проблем с диском.
Команда top
Команда top является "классическим" инструментом диагностики с которого начинается большинство задач. В случае диагностики проблем с операциями ввода вывода нам помогут параметры:
swap used — по этому параметру мы узнаем используется ли наш сервер swap, и если активно использует, то нашему серверу не хватает оперативной памяти.
wa — показывает процент времени, которое процессор простаивает в связи с операциями ввода-вывода.
В качестве альтернативы команде top можно использовать команду htop, которая есть в репозитариях Debian.
Команда iotop
Команда iotop показывает список процессов, которые выполняют операции ввода-вывода. Благодаря этой программе можно быстро увидеть процесс, который "тормозит" сервер, выполняя операции чтения/записи на диск.
Команда atop
Команда atop, на мой взгляд, может полностью заменить использование top и iotop. В этой программе можно увидеть нагрузку на каждый жесткий диск в отдельности.
Команда inotifywait
Команда inotifywait осуществляет мониторинг файловой системы. С помощью этой команды мы можем увидеть имена файлов, с которыми производятся операции ввода-вывода. В частности, с помощью этой программы мы без проблем можем увидеть файлы, в которые в данный момент пишется информация.
Установка inotifywait достаточно проста
aptitude install inotify-tools
Для слежения за файлами в каталоге /home, в которые производится запись достаточно выполнить команду
inotifywait -e modify -r -m /home