iostat
fait partie du sysstat
package, qui peut afficher les iops globaux si vous le souhaitez, ou les montrer séparés par des lectures / écritures.
Exécutez iostat
avec l'option -d pour afficher uniquement la page d'informations sur le périphérique et -x pour des informations détaillées (statistiques de lecture / écriture distinctes). Vous pouvez spécifier le périphérique pour lequel vous souhaitez obtenir des informations en l'ajoutant simplement par la suite sur la ligne de commande.
Essayez de courir iostat -dx
et de regarder le résumé pour avoir une idée de la sortie. Vous pouvez également utiliser iostat -dx 1
pour afficher une sortie actualisée en continu, utile pour le dépannage ou la surveillance en direct,
En utilisant awk
, le champ 4 vous donnera des lectures / seconde , tandis que le champ 5 vous donnera des écritures / seconde .
Lectures / seconde uniquement:
iostat -dx <your disk name> | grep <your disk name> | awk '{ print $4; }'
Écrit / s uniquement:
iostat -dx <your disk name> | grep <your disk name> | awk '{ print $5; }'
Lectures / sec et écrit / sec séparés par une barre oblique:
iostat -dx <your disk name> | grep <your disk name> | awk '{ print $4"/"$5; }'
IOPS globales (ce dont la plupart des gens parlent):
iostat -d <your disk name> | grep <your disk name> | awk '{ print $2; }'
Par exemple, l'exécution de la dernière commande avec mon lecteur principal, / dev / sda, ressemble à ceci:
dan@daneel ~ $ iostat -dx sda | grep sda | awk '{ print $4"/"$5; }'
15.59/2.70
Notez que vous n'avez pas besoin d'être root pour l'exécuter non plus, ce qui le rend utile pour les utilisateurs non privilégiés.
TL; DR: Si vous êtes simplement intéressé sda
, la commande suivante vous donnera des IOPS globaux pour sda
:
iostat -d sda | grep sda | awk '{ print $2; }'
Si vous souhaitez ajouter les IOPS sur tous les appareils, vous pouvez utiliser à nouveau awk:
iostat -d | tail -n +4 | head -n -1 | awk '{s+=$2} END {print s}'
Cela produit une sortie comme ceci:
dan@daneel ~ $ iostat -d | tail -n +4 | head -n -1 | awk '{s+=$2} END {print s}'
18.88