ZFS를 사용하여 FreeBSD 10에서 디스크에 주기적으로 디스크에 기록하는 (hdd led에 따라) 일부 프로세스를 찾을 수있는 방법이 있습니까 (ZFS를 자세한 로깅 모드로 전환 할 수 있음)?
lsof
다른 통계 집계 유틸리티는 디스크 액세스 순간이 짧기 때문에 어떤 것도 포착 할 수없는 것 같습니다.
답변
DTrace 는 FreeBSD에서 vfs 정보와 다른 프로브의 래프팅을보고 할 수 있습니다. DTrace는 기본적으로 10 커널에서 활성화되므로 모듈을로드 한 다음 dtrace 스크립트를 실행하기 만하면됩니다.
DTrace 모듈로드
kldload dtraceall
FreeBSD 포럼에서 vfssnoop.d 스크립트를 받으십시오 . 전체 스레드는 디스크 모니터링을위한 보물이다.
그것을 실행 :
./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
답변
운영: top -m io -o write -s 1
그러면 프로세스 목록이 인쇄되며 디스크에 쓰는 양에 따라 정렬되어 1 초마다 업데이트됩니다.