Sistemas de arquivos de próxima geração: log de uso do espaço em disco? [fechadas]

5

Ocasionalmente, tenho problemas quando os discos rígidos do servidor (Linux) são preenchidos rapidamente com muitos arquivos pequenos. Quando isso acontece, eu tenho que tentar descobrir quanto espaço está sendo ocupado e onde os arquivos estão ocupando o espaço. Esta pode ser uma tarefa surpreendentemente frustrante porque:

  1. Basta fazer coisas simples, como executar ls em um diretório com muitos arquivos, pode levar muito tempo.
  2. df é rápido, mas impreciso e impreciso
  3. du é preciso e pode dizer para onde está indo todo o seu espaço, mas leva uma eternidade para ser executado

Eu quero saber, com rapidez e precisão, onde todo o meu espaço está indo em um disco rígido, onde terabytes de espaço podem ser ocupados por milhões de arquivos pequenos.

Parece que isso é impossível com sistemas de arquivos convencionais (se não, eu gostaria de ouvir sobre isso)

A minha pergunta é se algum dos novos sistemas de arquivos disponíveis no Linux (btrfs, zfs, reiserfs, etc) tem algum recurso super-inteligente que possa ajudar com este problema. Por exemplo, posso imaginar algum tipo de registro - que é constantemente atualizado toda vez que houver uma gravação - que contenha um registro da quantidade de espaço ocupado em cada ramificação no sistema de arquivos. Então, fazer a minha pergunta seria apenas uma questão de ler o log.

Esse é apenas um exemplo do tipo de recurso que pode ajudar, mas estou solicitando exemplos de qualquer tipo de recurso que possa ajudar a responder à pergunta: diga-me, rapidamente e com precisão, exatamente onde o espaço está sendo usado no meu disco rígido .

Obrigado Tom

    
por Tom Scrace 02.09.2013 / 16:55

2 respostas

2

Eu só tenho experiência com o ZFS na lista que você mencionou. Com o ZFS você pode fazer volumes hierárquicos, por exemplo, você pode fazer;

  • tanque / categoria
  • tanque / categoria / produto
  • tanque / categoria / produto / a
  • tanque / categoria / produto / b

etc

Com o comando "zfs list", você pode obter o espaço usado, disponível e de referência para cada volume em segundos. Mas este curso só funciona quando você é capaz de deixar o seu aplicativo dividir o caminho certo.

    
por 02.09.2013 / 17:18
2

Eu ainda uso o ncdu com os meus sistemas de arquivos ZFS. É ainda mais importante agora, já que é compatível com arquivos esparsos e ajuda a entender os sistemas de arquivos compactados do ZFS.

Veja: Como posso determinar o que está ocupando tanto espaço?

    
por 02.09.2013 / 18:36