FreeBSD 10: Festplattenaktivität verfolgen

FreeBSD 10: Festplattenaktivität verfolgen

Gibt es eine Möglichkeit, unter FreeBSD 10 mit ZFS einen Prozess zu finden, der regelmäßig auf die Festplatte schreibt (gemäß Festplatten-LED) (vielleicht indem ZFS in den ausführlichen Protokollierungsmodus versetzt wird)?

lsofund andere Dienstprogramme zur sofortigen Statistikaggregation scheinen aufgrund der kurzen Zeitspanne vom Festplattenzugriff nichts erfassen zu können.

Antwort1

DTracekann VFS-Informationen in FreeBSD (sowie eine Reihe anderer Sonden) melden. DTrace ist im 10er-Kernel standardmäßig aktiviert, Sie müssen also nur das Modul laden und dann das DTrace-Skript ausführen.

Laden Sie das DTrace-Modul

kldload dtraceall

Bekommen dasvfssnoop.dSkript aus den FreeBSD-Foren. Dasganzer Threadist eine Fundgrube für die Festplattenüberwachung.

Starte es:

./vfssnoop.d

Achten Sie auf die Ausgabe, um zu sehen, worauf zugegriffen wird:

# ./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

Antwort2

laufen:top -m io -o write -s 1

Dadurch wird die Liste der Prozesse ausgedruckt, sortiert nach der Menge, die sie auf die Festplatte schreiben, und jede Sekunde aktualisiert.

verwandte Informationen