Talvez o pacote blktrace
esteja disponível para o CentOS 5.5? O comando btrace
fornece uma visão muito detalhada do subsistema de E / S.
Portanto, tenho que chegar ao meu conhecimento que o iotop não está disponível para o 2.6.18, já que é menor que 2.6.20 e requer o Python 2.6+. Eu fiz algumas pesquisas e me deparei com este artigo: link
De acordo com isto, se estes processos tiverem status io em / proc / pid # / io (onde pid # é o processo #) é possível independentemente da versão do kernel. Então, na realidade, eu poderia atualizar o Python para o 2.6 e testar o iotop. No entanto, o meu sabor do Linux, o CentOS release 5.5 (Final), suporta apenas o Python 2.4.3-44.el5 atualmente. Se eu fosse desinstalar do yum, não ficaria tão bonito. Ele acaba querendo desinstalar 235 pacotes, a maioria dos quais é muito importante!
Eu leio em um lugar, on-line (esqueci o URL de ontem), que você pode instalar o Python 2.6 + paralelo a este, e ter a instalação do rpm para o uso do iotop. Bem, eu não escolhi essa rota.
Eu imaginei, que diabos, vamos escrever iotop (não copiá-lo, mas fazer engenharia reversa sem realmente olhar para o código em uso) no bash. Eu pensei que seria apenas pegar o arquivo / proc / pid # / io e analisar estatísticas.
Então eu escrevi um script para pegar o top 10 rchar, wchar, read_bytes e write_bytes coletando todas essas estatísticas de todos os arquivos / proc / pid # / io, classificando-os por cada métrica, e então pegando o top 10 mais alto valores.
A conclusão, os dados parecem completamente inúteis.
Alguém conhece algum recurso para Linux avançado onde eu possa descobrir como pegar esses diretórios / proc / pid # / e descobrir o que diabos eles estão fazendo com o io no disco?
Meu objetivo principal é descobrir exatamente o que está causando alta carga no meu disco. Eu só sei que está na partição / (/ dev / sda2 neste caso), e não tenho certeza como reduzi-la sem a ajuda da iotop. Se eu rodar o iostat para pegar métricas por 1 minuto, a cada segundo, o primeiro resultado que ele me dá mostra um alto 'kB_read / s', então isso me faz pensar, ele está lendo principalmente. No entanto, se eu observar a atualização que ela me fornece a cada segundo, ela mostrará apenas valores para kB_wrtn / s. Isso me faz pensar que o valor inicial que o iostat me dá é enganoso.
Talvez o pacote blktrace
esteja disponível para o CentOS 5.5? O comando btrace
fornece uma visão muito detalhada do subsistema de E / S.
Tags performance bash io linux