Распределение нагрузки ввода-вывода на диске Linux по пути к файловой системе и / или процессу?

15

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

Я часто использую утилиту iostat, чтобы узнать, сколько дисковой активности происходит на хосте Linux. «iostat» обеспечивает разбивку по каждому устройству, поэтому вы можете видеть активность на конкретном блочном устройстве. Но это не идет глубже - вы не можете, например, запросить загрузку записи, сгенерированную 'httpd' в каталоге '/ var / log / httpd /'.

Райан Б. Линч
источник
Вы не можете реально отслеживать путь файловой системы, так как к тому времени, когда ядро ​​начинает играть с блочным устройством, нет информации о том, где в дереве находится запрос. Знание того, какой процесс наносит ущерб, с другой стороны, заставляет кого-то выстраиваться, что в итоге обычно составляет одно и то же.
womble
4
Основываясь на этих ответах, я попробовал как htop, так и iotop, и похоже, что у них обоих есть базовая функциональность, позволяющая разбить скорости ввода-вывода на процесс. Некоторые большие различия: * htop имеет множество функций и измеряет все виды системной статистики, тогда как iotop смотрит только на скорости ввода-вывода для каждого процесса. * Использование iotop в первый раз немного проще, так как это проще. Флаг '-o' ("only") * iotop скрывает процессы, не участвующие в IO, что ОЧЕНЬ полезно при устранении неполадок с дисками. Я не мог найти что-то подобное в htop. Оба инструмента работают, но для этого я буду использовать iotop.
Райан Б. Линч
1
также есть наверху, который отображает живые и исторические данные для каждого процесса в интерактивном режиме.
Тобу

Ответы:

18

Вы можете использовать iotop для этой цели.

Я работаю как обычный топ, я не могу сказать намного больше. Большинство дистрибутивов будут упакованы, но вот его домашняя страница . Вам понадобится свежее ядро.

cstamas
источник
iotop великолепен!
Джозеф Керн
24

Используя htop, сделайте следующее.

htop
F5 (Tree view)
F2 (Setup)
Select columns
Select RBYTES WBYTES
F10 (Done)

И вот, в реальном времени, для каждого процесса ввода-вывода диска.

Джозеф Керн
источник
1
Выдающийся ответ
Дейв Чейни
1
почему HTOP не добавил бы это по умолчанию? : S
confiq
1
Похоже, для доступа к отчетам о других процессах требуется привилегированный доступ (во многом аналогично iotop) - возможно, поэтому его тоже не по умолчанию ...
Пол Риджуэй
0

Collectl также может отображать загрузку процессов ввода-вывода, но, поскольку он также может контролировать практически все ваши другие системные ресурсы, вы получаете все это в одном инструменте. Например, вы можете прямо сейчас посмотреть на основные процессы ввода-вывода или процессора, а также на диск, сеть и т. Д. НО вы также можете воспроизводить исторические данные и отображать те же типы данных. Кроме того, ядро ​​на самом деле предоставляет 7 различных процессов ввода / вывода. Collectl может показать их все и даже позволить вам сортировать их. -отметка


источник