Il existe plusieurs outils en ligne de commande qui peuvent aider à suivre ce type de choses. Pour savoir ce qui cause de l'activité sur le disque, j'utiliserais fs_usage
. Voici un exemple de son utilisation pour surveiller mon volume de rechange pendant que je crée un fichier depuis bash :
$ sudo fs_usage | grep /Volumes/Spare
Password: [entrer le mot de passe admin ; il ne s'affichera pas]
08:56:10 open /Volumes/Spare/somefile 0.000827 bash
08:56:10 lstat64 /Volumes/Spare 0.000029 fseventsd
08:56:10 getattrlist /Volumes/Spare 0.000017 Finder
08:56:10 getattrlist /Volumes/Spare 0.000030 Finder
08:56:10 getattrlist /Volumes/Spare 0.000013 Finder
08:56:10 access_extended /Volumes/Spare 0.000045 Finder
08:56:10 lstat64 /Volumes/Spare/somefile 0.000038 mdworker
08:56:10 getattrlist /Volumes/Spare/somefile 0.000023 mdworker
08:56:10 getattrlist /Volumes/Spare/somefile 0.000034 mdworker
08:56:10 open /Volumes/Spare/somefile 0.000027 mdworker
08:56:10 getattrlist /Volumes/Spare/somefile 0.000018 mdworker
08:56:10 open /Volumes/Spare/somefile 0.000016 mdworker
08:56:10 getattrlist /Volumes/Spare/somefile 0.000017 mdworker
08:56:10 getattrlist /Volumes/Spare/somefile 0.000012 mdworker
^C
(Remarques : lorsque fs_usage
est redirigé vers une autre commande, il formate sa sortie pour un affichage en colonnes de 132 caractères -- pour le rendre lisible, vous devriez élargir votre fenêtre Terminal en conséquence. De plus, utilisez control-C pour sortir). Les colonnes intéressantes ici sont la troisième (chemin du fichier) et la dernière (nom du processus) -- dans cet exemple, bash a créé /Volumes/Spare/somefile, Finder a remarqué que quelque chose avait changé et a vérifié les attributs du dossier, et mdworker (partie de Spotlight) a remarqué le nouveau fichier et l'a examiné pour l'ajouter à l'index de recherche du volume.
Un autre outil utile pour ce type de chose est lsof
(liste des fichiers ouverts) :
$ sudo lsof | grep /Volumes/Spare
mds 30 root txt REG 14,4 2 430 /Volumes/Spare/.Spotlight-V100/Store-V1/Stores/0DF7E0C0-E376-45EF-81DC-0F0C64676526/0.indexGroups
mds 30 root txt REG 14,4 2056 435 /Volumes/Spare/.Spotlight-V100/Store-V1/Stores/0DF7E0C0-E376-45EF-81DC-0F0C64676526/0.indexDirectory
mds 30 root txt REG 14,4 8 436 /Volumes/Spare/.Spotlight-V100/Store-V1/Stores/0DF7E0C0-E376-45EF-81DC-0F0C64676526/0.indexCompactDirectory
mds 30 root txt REG 14,4 2731 400 /Volumes/Spare/.Spotlight-V100/Store-V1/Stores/0DF7E0C0-E376-45EF-81DC-0F0C64676526/live.0.indexGroups
mds 30 root txt REG 14,4 1024 406 /Volumes/Spare/.Spotlight-V100/Store-V1/Stores/0DF7E0C0-E376-45EF-81DC-0F0C64676526/live.0.indexCompactDirectory
[...etc...]
Ici, le nom du processus est dans la première colonne, et le chemin du fichier est à la fin (et l'affichage est encore plus large). Dans cet exemple, tout ce qu'il y a, c'est mds (une autre partie de Spotlight) qui est là avec sa base de données d'index ouverte.
Alors que fs_usage
est bon pour observer l'activité sur une période de temps (mais ne montrera pas les fichiers qui sont ouverts mais inactifs), lsof
donne un instantané des programmes qui utilisent quels fichiers (mais ne montrera pas à quel point ils sont actifs et manquera les fichiers qui sont ouverts, utilisés, puis immédiatement fermés). En les utilisant ensemble, ces outils offrent une image plutôt bonne de ce qui se passe.