J'ai quelques processus avec un nom connu qui écrivent tous dans des fichiers dans un seul répertoire. Je souhaite consigner le nombre de lectures et écritures de blocs de disque sur une période (pas uniquement l'accès aux fichiers) pour tester si une modification de paramètre réduit considérablement la quantité d'E/S. J'utilise actuellement iostat -d -p
, mais cela est limité à toute la partition.
Réponse acceptée :
Je me rends compte que cela va sembler à la fois simpliste et absurde, mais si vous avez
le contrôle sur les applications en question (peut-être dans un environnement de test), vous pouvez
monter UNIQUEMENT ce répertoire sur une partition qui lui est propre, puis iostat
, etc. ne vous diraient
qu'à ce sujet, et rien d'autre à cet endroit.
S'il y a des disques physiques impliqués, vous pouvez le simuler avec un loopback
mount à la
dd if=/dev/zero of=/bigdisk/LOOPFILE bs=1024m count=1024m # 1gb loopback file
mke2fs -j /bigdisk/LOOPFILE
mkdir /tmpcopy
mount -o loop /tmpcopy /bigdisk/LOOPFILE
cp -r -p $SPECIALDIR2MONITOR /tmpcopy
umount /tmpcopy
mount -o loop $SPECIALDIR2MONITOR /bigdisk/LOOPFILE,
Cela ne supprimerait pas complètement toutes les E/S de disque concurrentes, mais
je suis à peu près sûr que iostat
La sortie de serait plus spécifique à votre besoin.