© 2019 by Douglas.

Created with Wix.com

  • Branca ícone do YouTube
  • Branca Ícone LinkedIn
  • White Facebook Icon
  • White Instagram Icon

APLICANDO SOLUÇÕES INTELIGENTES

Como checar quais arquivos estão mais utilizando o filesystem

 

   

 

    Você já precisou descobrir qual arquivo está mais consumindo espaço no seu filesystem e não sabia como fazer de forma rápida ? Eu já vi muitas pessoas ficarem executando diversos cd, ls e du varias vezes... e pra ser sincero logo quando comecei a trabalhar com servidores Linux eu fazia isso hehe.

    Nesse artigo vou passar algumas dicas pra você conseguir fazer essa analise de forma mais rápida. Até mesmo por que precisamos ser ágil cada vez mais para atender essa enorme necessidade do mercado que sempre vem demandando mais resultado em menos tempo.
    Os exemplos abaixo serão executados em sistemas Unix AIX e Linux.

Por questão de exemplificação vou utilizar o /var :

 

Linux
[root@hostname ~]# df -h /var
Filesystem                                Size   Used  Avail Use% Mounted on
/dev/mapper/rootvg-varlv         1.0G  1.0G    0G   100%  /var


AIX
root@hostname:/root# df -g /var
Filesystem    GB blocks      Free %Used    Iused %Iused Mounted on
/dev/hd9var        1.0    0        100%    10793    17% /var

 

    Em ambos sistemas operacionais o /var estão em 100%, e talvez você já saiba, mas o /var é responsável por armazenar arquivos de logs de diferentes serviços, ou seja, existem muitas arquivos dentro do /var, e olhar o tamanho de um à um não parece algo muito interessante.

 

    Então como fazer isso de forma fácil, legível e rápida ? Simples, use o seguinte comando que ele 
 já irá converter o valor do tamanho em Mb.

 

**Note: no final do comando temos um head, ele irá filtrar apenas os 10 arquivos com maior utilização. Se você quer ver mais que 10 arquivos utilize head -n XX. **

 

Linux
[root@hostname ~]# cd /var
[root@hostname ~]# find . -xdev -type f | xargs ls -s | sort -rn | awk '{size=$1/1024; printf("%dMb %s\n", size,$2);}' | head 
500Mb ./install.log
100Mb ./.gconfd/saved_state
210Mb ./.bash_history
10Mb ./.xsession-errors
10Mb ./.Xauthority
10Mb ./.viminfo
10Mb ./upgrade.log
10Mb ./.tcshrc
10Mb ./sudoers.bck

 

AIX
root@hostname:/root# cd /var
root@hostname:/root# find . -xdev -type f | xargs ls -s | sort -rn | awk '{size=$1/1024; printf("%dMb %s\n", size,$2);}' | head
500Mb ./install.log
100Mb ./.gconfd/saved_state
210Mb ./.bash_history
10Mb ./.xsession-errors
10Mb ./.Xauthority
10Mb ./.viminfo
10Mb ./upgrade.log
10Mb ./.tcshrc
10Mb ./sudoers.bck

 

    Se você notar, eu utilizei o -xdev no comando, eu diria que esse é o pulo do gato. Esse parâmetro é responsável por evitar que o find retorne arquivos que não fazem parte do seu filesystem, pois dentro de um filesystem você pode ter outro filesystem. E cada um tem o seu tamanho, se o find retornar o arquivo de um sub-filesystem isso não irá servir pra nada, será um falso positivo. Então SEMPRE utilize o -xdev.

Espero que você tenha gostado. 


abraços!

Share on Facebook
Share on Twitter
Please reload

Posts Recentes
Please reload

Procurar por tags
Please reload