FreeBSD 10 трассировка активности диска

FreeBSD 10 трассировка активности диска

Есть ли способ найти какой-либо процесс, который периодически записывает данные на диск (согласно hdd led) на FreeBSD 10 с ZFS (возможно, перевести ZFS в режим подробного журналирования)?

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

решение1

DTraceспособен сообщать информацию о vfs в FreeBSD (а также о множестве других зондов). DTrace включен по умолчанию в ядре 10, поэтому все, что вам нужно сделать, это загрузить модуль, а затем запустить скрипт dtrace.

Загрузите модуль DTrace

kldload dtraceall

Получитьvfssnoop.dскрипт с форумов FreeBSD.вся веткаэто настоящая сокровищница для мониторинга дисков.

Запустить его:

./vfssnoop.d

Посмотрите на вывод, чтобы узнать, к чему осуществляется доступ:

# ./vfssnoop.d 
cc1: warning:  is shorter than expected
TIMESTAMP           UID    PID PROCESS          CALL             SIZE PATH/FILE
1555479476691083      0   1225 nfsd             vop_getattr         - /share/netboot
1555479478601010      0   1225 nfsd             vop_inactive        - /share/netboot
1555479482457241      0   1225 nfsd             vop_getattr         - /share/wpad.dat
1555480557262388      0   1432 cron             vop_getattr         - /var/cron/tabs
1555480557302178      0   1432 cron             vop_inactive        - /var/cron/tabs
1555480557336414      0   1432 cron             vop_inactive        - /etc
1555480557346224      0   1432 cron             vop_getattr         - /etc/crontab

решение2

бегать:top -m io -o write -s 1

Это выведет список процессов, отсортированный по объему записи на диск, обновляемый каждую секунду.

Связанный контент