Pequenos Comandos, Grandes Ações: du

Medir o consumo de espaço em disco pelo terminal nunca ficou tão fácil.
Tão fácil quanto comer galinha com quiabo!

| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. 
Mais detalhes clicando aqui.

PCGA: Pequenos comandos, grandes ações!

Dando continuidade aqui no site dessa série que foi um sucesso na página homônima no Facebook, trago comandos simples, a maioria deles curtos com parâmetros diretos, que podem agilizar seu trabalho como sysadmin de qualquer sistema baseado em UNIX. Comandos como ls, mkdir, chmod, etc são descritos em toda sua glória e praticidade, para enriquecer seu leque de possibilidades de uso para com o Terminal, seja ele qual for, de qual distro Linux você utilizar.

Du

Existe um pequeno – e bota pequeno nisso – comando do terminal linux que tem a função de reunir de forma direta e simples o espaço em disco consumido pelos seus aplicativos, arquivos e pastas: o comando Du!

Não, não este Du. É outro! – Arte de Tesnuzzik

Com o comando Du (Disk Usage) você pode monitorar diretórios usando shell script com facilidade, permitindo até monitorar grandes arquivos que ocupam muito espaço em disco – na faixa dos terabytes – criando sistemas de despejo automático e cotas limites para eles a partir do Du.

Uma pequena limitação do comando é o fato de que os tamanhos de diretórios e arquivos que ele reporta são aproximações, não números exatos. Portanto freqüentemente há uma pequena discrepância entre esses tamanhos e os tamanhos relatados por outros comandos. No entanto, isso raramente diminui sua utilidade.

Além disso, du só pode ser usado para estimar o consumo de espaço para diretórios e arquivos para os quais o usuário tem permissão de leitura. Assim, um usuário comum geralmente não poderia usar du para determinar o consumo de espaço para arquivos ou diretórios pertencentes a outros usuários, incluindo aqueles pertencentes à conta do root. No entanto, como du é usado principalmente por administradores de sistema, isso geralmente não é um problema.

Utilização

Sem argumentos, o comando du exibirá uma lista com todos os arquivos e seu tamanho aproximado.

$ du

As opções de argumentos são:

  • -h
    Legível para humanos.
    Assim os valores estarão resumidos como Mb ou Gb
  • -s
    Resumir.
    Dessa forma, o comando vai suprimir os resultados de subdiretórios, exibindo apenas o diretório atual.
  • -a /etc
    Todos.
    O comando relata não apenas o uso total de disco para cada diretório em cada nível em uma árvore de diretórios, mas também relata o consumo de espaço para cada arquivo individual em qualquer lugar dentro da árvore. Assim, por exemplo, o exemplo listaria o nome e o tamanho de cada diretório e arquivo no diretório /etc para o qual o usuário possui permissão de leitura.
  • -c
    Total geral será exibido na última linha!
  • –max-depth=1
    Define a profundidade máxima dos subdiretórios.
  • –time
    Lista os diretórios e arquivos baseado na data de criação.
Du irritado com tantas opções!

Todos os comandos acima podem ser mesclados, por exemplo:

$ du -shc /dir

Outros Usos

O comando pode aceitar qualquer número de argumentos, e eles podem ser qualquer combinação de arquivos e diretórios. Quando há vários argumentos, nenhum total geral é fornecido por padrão, embora um total ainda seja fornecido para cada argumento.

Exemplo:

$ du /sbin/file1 /sbin/file2

Você poderá usar o comando Du com outros argumentos como pipes.

Exemplos:

Para organizar os itens de saída de acordo com o tamanho, du pode ser canalizado para o comando sort, cuja opção -n informa para listar a saída em ordem numérica com os arquivos menores primeiro, da seguinte maneira:

$ du | sort -n

Como muitas vezes geram mais saída do que cabe na tela do monitor ao mesmo tempo, a saída carregará em alta velocidade e será praticamente ilegível. Felizmente, é fácil exibir a saída de uma tela por vez canalizando-a para o filtro LESS, por exemplo:

$ du -h | less

A saída LESS pode ser avançada uma tela de cada vez pressionando a barra de espaço, e ela pode ser movida para trás uma tela a cada vez pressionando a tecla b.

A saída também pode ser canalizada para LESS depois de passar por um ou mais outros filtros, por exemplo,

$ du -h | sort -n | less

O filtro grep pode ser usado para pesquisar a saída de du para qualquer string desejada (ou seja, seqüência de caracteres). Assim, por exemplo, o seguinte fornecerá uma lista dos nomes e tamanhos de diretórios e arquivos no diretório atual que contém a palavra linux:

$ du -ah | grep linux

#UrbanCompassPony

Créditos:
Material: Linfo
Arte de capa: DeviantArt

Deixe um comentário