Comment puis-je suivre le suivi de l'utilisation des E / S sous Linux et autres * nix OS '?

15

Parfois, quelque chose sur mon système commence à marteler le disque. Je voudrais enregistrer des données qui me permettraient de connaître l'utilisation des E / S par processus, puis je pourrais y revenir plus tard et voir ce qui continue de faire cela. Comment dois-je procéder pour résoudre ce problème? Points bonus pour résoudre ce problème pour les appareils à blocs arbitraires.

kbyrd
la source

Réponses:

12

Je donnerais iotopun essai (Linux seulement). C'est assez bon pour vous donner les processus avec des transferts d'E / S élevés, mais iotopc'est plus pour afficher l'état actuel que pour la journalisation.

Pour la journalisation, sarest toujours un bon outil pour les aspects de performance.

txwikinger
la source
1
il convient de noter que iotop est uniquement Linux. (au moins, je suis sûr à 99%)
xenoterracide
sar est également disponible sur toutes les versions unix avec lesquelles j'ai travaillé.
txwikinger
2
Sur les systèmes Ubuntu (cela peut s'appliquer à tous les Linux), il y a des débats qui iotopfonctionnent correctement. Voir bugs.launchpad.net/ubuntu/+source/linux/+bug/493156
Stefan Lasiewski
@Stefan: D'après ce que j'ai lu, cela n'affectera que les distributions qui ont configuré leur noyau avec CONFIG_TASK_DELAY_ACCT activé. Y a-t-il autre chose dans le fil que j'ai manqué?
Steven D