Ferramenta Linux para rastrear o espaço do diretório ao longo do tempo

8

Existem ferramentas comuns do Linux que rastreiam o espaço em disco ao longo do tempo, não apenas um sistema de arquivos em geral, mas por exemplo, para que eu pudesse ver facilmente quais árvores de diretório aumentaram e diminuíram historicamente? O problema acontece em servidores que parecem continuar batendo 0 espaço livre, apesar casa-limpeza de rotina de arquivos de cache e TMP, registros etc eu já usam ferramentas como df, due lsofmuitas vezes e agendar attrabalhos para encontrar arquivos com idade superior a um tamanho certo / Tipo quando baixa marcas d'água são atingidas, etc.

De preferência um pacote Debian / Ubuntu.

Marcos
fonte
Acho que você quer algo mais amigável do que du -srodar no cron, certo?
Peterph
1
Eu acho que eles estão querendo um cálculo histórico da utilização do espaço em disco, como o que você obteria com a CPU ou a utilização de E / S, executando um comando "sar".
Bratchley
Isso pode ser feito com pouca sobrecarga, usando uma ferramenta que monitora e extrai dados relevantes do diário (ext3)?
Michael Martinez

Respostas:

3

Algumas coisas tornariam a criação de uma ferramenta como esta problemática:

  1. O kernel não mantém históricos de tamanho de arquivo ou diretório específicos de arquivo (como ocorre com o uso de memória, atividade de E / S ou tempo de CPU); portanto, qualquer coisa escrita deve estar no espaço do usuário.
  2. Mesmo que algo tenha sido escrito usando inotify ou algo assim, em servidores ocupados, a sobrecarga de um daemon de espaço do usuário gravando a saída de "du -s" depois que cada alteração de arquivo seria enorme. Em servidores menos ocupados, você provavelmente não teria essa preocupação. Então, você se depara com a situação em que a ferramenta é útil apenas para as pessoas que não podem pagar suas despesas gerais.
  3. Os daemons do Network Monitoring, como o Zabbix ou o Nagios, contêm algum monitoramento primitivo da utilização do disco (de sistemas de arquivos inteiros) com históricos que atendem às necessidades da maioria dos administradores nesse sentido. As necessidades além disso são tipicamente quebrar / corrigir o local em que você acessa o sistema de arquivos em questão e verificar o que está ocupando espaço após o fato (usando o monitoramento de rede para alertar proativamente sobre possíveis problemas).
  4. Se você realmente precisa saber disso e aguardar que seus avisos proativos notifiquem você quando isso acontecer novamente (para que você possa verificá-lo) não é uma opção, você poderá escrever um script para monitorar os diretórios em questão sobre. (basicamente gravando a saída de "find / path / to / dir -type d -exec du -sh {} \;" de alguma forma isso será fácil para você revisar).

Portanto, não há uma demanda real para a criação de uma ferramenta de espaço do usuário para fazer isso, pois seria difícil fazer corretamente e as soluções existentes o aproximam do ideal.

Resposta curta: Não conheço essa ferramenta, mas faz sentido que não haja.

Bratchley
fonte
Está ao meu alcance hackear scripts de espaço do usuário para, por exemplo. grave duinstantâneos periódicos do cron de todos / alguns diretórios, armazene-os no SQL / CSV para análises posteriores para diminuir onde o armazenamento está sendo consumido quando e faça relatórios amigáveis ​​para identificar isso. Com capacidade de ampliar a hierarquia de diretórios, espera-se. Mas isso consome tempo e espero que exista algo semelhante, mesmo que imperfeito (hardlinks etc.).
Marcos
1
Gostaria de saber se isso, com muito menos sobrecarga do que "du -s", poderia ser feito com alguma ferramenta que observe o diário do sistema de arquivos?
Michael Martinez