iostat
является частью sysstat
пакета, который может показывать все iops, если это необходимо, или показывать их разделенными чтением / записью.
Запустите iostat
с флагом -d, чтобы показать только страницу информации об устройстве, и -x для подробной информации (отдельная статистика чтения / записи). Вы можете указать устройство, для которого вы хотите получить информацию, просто добавив его в командной строке.
Попробуйте запустить iostat -dx
и посмотреть на резюме, чтобы почувствовать результат. Вы также можете использовать iostat -dx 1
для отображения постоянно обновляющегося вывода, который полезен для устранения неполадок или мониторинга в реальном времени,
Использование awk
поля 4 даст вам чтения / секунду , а поле 5 даст вам записи / секунду .
Только чтение / секунда:
iostat -dx <your disk name> | grep <your disk name> | awk '{ print $4; }'
Пишет / сек только:
iostat -dx <your disk name> | grep <your disk name> | awk '{ print $5; }'
Чтение / сек и запись / сек, разделенные косой чертой:
iostat -dx <your disk name> | grep <your disk name> | awk '{ print $4"/"$5; }'
Общий IOPS (о чем говорит большинство людей):
iostat -d <your disk name> | grep <your disk name> | awk '{ print $2; }'
Например, выполнение последней команды с моим основным диском / dev / sda выглядит следующим образом:
dan@daneel ~ $ iostat -dx sda | grep sda | awk '{ print $4"/"$5; }'
15.59/2.70
Обратите внимание, что вам не нужно быть пользователем root для запуска этого, что делает его полезным для непривилегированных пользователей.
TL; DR: Если вы просто заинтересованы sda
, следующая команда даст вам общее количество операций ввода-вывода в секунду для sda
:
iostat -d sda | grep sda | awk '{ print $2; }'
Если вы хотите добавить IOPS на всех устройствах, вы можете снова использовать awk:
iostat -d | tail -n +4 | head -n -1 | awk '{s+=$2} END {print s}'
Это производит вывод примерно так:
dan@daneel ~ $ iostat -d | tail -n +4 | head -n -1 | awk '{s+=$2} END {print s}'
18.88
iostat -dx 1
я получаю ответ как этоLinux 2.6.35.14-106.fc14.i686 (shashi) 08/24/2015 _i686_ (2 CPU) Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util sda 2.46 13.80 2.27 2.03 136.26 123.91 60.53 0.11 25.77 4.43 1.91 dm-0 0.00 0.00 2.35 0.77 93.07 6.11 31.86 0.17 53.73 2.59 0.81 dm-1 0.00 0.00 1.02 2.83 8.14 22.66 8.00 0.83 214.34 0.60 0.23 dm-2 0.00 0.00 1.37 11.89 34.77 95.14 9.80 1.67 126.06 0.84 1.11
для dm-0, dm-1, dm-2 рекурсивно я должен добавить?sda
. Если вы просто хотите увидеть IOPS для вашего жесткого диска, то используйте эту последнюю команду для общего IOPS (iostat -d sda | grep sda | awk '{ print $2; }'
)dm-*
тем, чтобы я спросил, мне нужно выполнить сложение на этих разделахdm-x
устройство:lvdisplay|awk '/LV Name/{n=$3} /Block device/{d=$3; sub(".*:","dm-",d); print d,n;}'
- Я обновлю ответ с этим, а также как добавить результаты.