Você pode usar o comando top
para uma determinada unidade de disco ou, se realmente quiser ser um usuário específico, use iostat -xd /proc
.
Eu gostaria de analisar e visualizar o disco através da colocação de certos processos ao longo do tempo para ver quantos dados são gravados no disco e ver em quais momentos um processo não utiliza toda a capacidade de desempenho do disco. Por exemplo, porque ele está executando uma tarefa intensiva da CPU ou porque acessa muitos arquivos pequenos e o disco precisa fazer muito reposicionamento da cabeça.
Eu já sei sobre essa questão: Como posso monitorar o disco io . Mostra como posso monitorar o disco IO por processo. Em particular iotop -aoP
mostra o IO cumulativo por processo. Isso é bom se eu quiser rastrear, por exemplo, quantos dados um processo já escreveu desde o início do IO Top. Mas faz um trabalho ruim em visualizar os dados ao longo do tempo.
Parte 1: Essencialmente, estou procurando algo semelhante ao histórico da rede em gnome-system-monitor
, mas listado por processo e não totalmente para todo o disco.
Em segundo lugar, o processo que grava no disco não precisa necessariamente ser o processo que causa o IO. Por exemplo, se eu acessar um sistema de arquivos NTFS, os dados serão gravados primeiro em mount.ntfs-3g
, que os grava no disco. Portanto, se eu quiser controlar o desempenho de um processo de qemu
escrito em um arquivo img que está em um armazenamento NTFS, vejo todos os IOs acontecerem no processo mount.ntfs-3g
e não no processo qemu. Suponho que os dados sejam canalizados do processo qemu
para os processos mount.ntfs-3g
antes de serem gravados no disco.
Parte 2: Então a segunda parte da questão é se eu posso de alguma forma visualizar o IO apenas para o processo qemu.
Você pode usar o comando top
para uma determinada unidade de disco ou, se realmente quiser ser um usuário específico, use iostat -xd /proc
.
Tags monitoring