Comando df, analisando espaço em disco

Um dos comandos mais importantes para administradores de sistemas Linux é o comando df, com ele podemos analisar o espaço em discos e partições. Abaixo temos um exemplo de utilização do comando df sendo executados sem argumentos:

host:~# df
Sist. Arq.           1K-blocos      Usad Dispon.   Uso% Montado em
/dev/sda2             28834744   9757724  17612296  36% /
tmpfs                   513140         0    513140   0% /lib/init/rw
udev                    508860       212    508648   1% /dev
tmpfs                   513140         0    513140   0% /dev/shm
/dev/sda3             47596776  36389456   8789540  81% /home

Como podemos visualizar no exemplo acima, a primeira coluna exibe device utilizado, no caaso o disco rígido primário, secundário, área de troca (swap) ou dispositivo montado, como um pen-drive  ou um cartão de memória, na seunda coluna é exibido o tamanho do disco ou partição, na terceira coluna é possível visualizar a quantidadae  de espaço utilizado, na quarta coluna a quantidade de espaço disponível, na quinta coluna o percentual utilizado e finalmente na última coluna o ponto de montagem.

Embora o resultado do comando df no exemplo acima tenha nos dado muitas informações, as mesmas estão em formatos de bytes, porém podemos tomar a leitura mais fácil, para isso basta utilizar as opções -k ou –kilobytes para a exibição do resultdo em bytes, ou -m ou –megabytes para exibição do resultado em megabytes:

host:~# df -m
Sist. Arq.           1M-blocos      Usad Dispon.   Uso% Montado em
/dev/sda2                28159      9530     17200  36% /
tmpfs                      502         0       502   0% /lib/init/rw
udev                       497         1       497   1% /dev
tmpfs                      502         0       502   0% /dev/shm
/dev/sda3                46482     35537      8584  81% /home

Acima utilizamos o comando df com a opção -m, porém podemos melhorar a visualização dos resultados mais ainda com a opção -h ou –human-readable, que como o nome já diz facilita a leitura humana, convertendo o resultado para o formato mais conveniente como mega, giga, tera, etc:

host:~# df -h
Sist. Arq.            Size  Used Avail Use% Montado em
/dev/sda2              28G  9,4G   17G  36% /
tmpfs                 502M     0  502M   0% /lib/init/rw
udev                  497M  212K  497M   1% /dev
tmpfs                 502M     0  502M   0% /dev/shm
/dev/sda3              46G   35G  8,4G  81% /home

Com os exemplos anteriores, é possível ter um total gerenciamento do espaço em disco com o comando df. Em caso de servidores que possuem compartilhamentos de redes montados como por exemplo NFS ou SMB, é possível exibir somente pontos de montagem locais adicionando a opção -l ou –local:

host:~# df -h -l -T
Sist. Arq.    Tipo    Size  Used Avail Use% Montado em
/dev/sda2     ext3     28G  9,4G   17G  36% /
tmpfs        tmpfs    502M     0  502M   0% /lib/init/rw
udev         tmpfs    497M  212K  497M   1% /dev
tmpfs        tmpfs    502M     0  502M   0% /dev/shm
/dev/sda3     ext3     46G   35G  8,4G  81% /home

Além das opções já conhecidas, no exemplo acima utilizamos a opção -T ou –print-type, que adicionou a coluna com o tipo do sistema de arquivos, no caso a segunda coluna. de possa da informação apresentada na segunda coluna, podemos incrementar ainda mais a saída do comando df com a opção -t ou –type, especificando o tipo de sistema de arquvos no qual desejamos obter informações:

host:~# df -h -l -T -t ext3
Sist. Arq.    Tipo    Size  Used Avail Use% Montado em
/dev/sda2     ext3     28G  9,4G   17G  36% /
/dev/sda3     ext3     46G   35G  8,4G  81% /home

No exemplo acima, foi expecificado o tipo de sistema de arquivos ext3, com isso o resultado foi somente o sistema de arquivos especificado. O comando df é esencial na resolução de problemas no dia-dia,  portanto dominar suas opções e entender seus conceitos é fundamental para qualquer administrador de sistemas Linux.