Como Verificar Espaço em Disco no Linux - Comandos Para Uso de Espaço em Disco

Publicado 23 de janeiro de 2026

Ao gerenciar o espaço em disco em sistemas Linux, existem várias ferramentas de linha de comando que podem ajudá-lo a analisar o uso de armazenamento e encontrar áreas para otimização. Neste artigo, vamos ver como usar esses comandos para entender e gerenciar seu espaço em disco no Linux.

Pontos Principais

  • O comando 'df' mostra o espaço de armazenamento total e disponível em cada disco conectado ao sistema
  • 'df -H' exibe a saída em um formato legível (MB, GB, TB)
  • Personalize a saída do 'df' com a flag '--output' seguida de nomes de campos (por exemplo, source, size, used, avail)
  • O comando 'du' relata os tamanhos de diretórios e arquivos
  • Combine 'du' com 'sort' e 'head' para encontrar os maiores diretórios (por exemplo, 'du -a . | sort -n -r | head -n 10')

Comando df

Visão geral do comando 'df'

O comando 'df', que significa "disk filesystem" (sistema de arquivos de disco), é uma ferramenta para verificar o uso de espaço em disco em sistemas Linux. Ele mostra informações sobre o espaço de armazenamento total e disponível em cada disco conectado ao sistema, incluindo unidades locais e sistemas de arquivos de rede. Este comando tem sido usado por usuários Linux para analisar a utilização de espaço em disco desde os primeiros dias do sistema operacional na década de 1990.

Uso básico do 'df'

Para usar o 'df', execute o comando com a flag '-H', assim: df -H. Isso mostra a saída em um formato legível, exibindo os tamanhos de espaço em disco em megabytes, gigabytes ou terabytes. A saída inclui várias colunas de informações para cada sistema de arquivos:

Coluna Descrição
Filesystem O nome do sistema de arquivos ou caminho do dispositivo
Size O tamanho total do sistema de arquivos
Used A quantidade de espaço usado no sistema de arquivos
Available O espaço livre restante no sistema de arquivos
Use% A porcentagem do sistema de arquivos que está ocupada
Mounted on O ponto de montagem onde o sistema de arquivos está conectado

Por exemplo, para verificar quanto espaço resta na sua unidade principal do sistema, que geralmente é montada em '/', execute:

df -H /

Isso pode gerar uma saída como:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       100G   65G   35G  65% /

Para ver informações sobre um disco ou partição específica, inclua o caminho do dispositivo como argumento para o 'df'. Por exemplo, df -H /dev/sda1 mostra o uso de espaço para a primeira partição no drive SATA principal.

Personalizando a saída do 'df'

Por padrão, o 'df' inclui um conjunto de colunas em sua saída. Você pode personalizar isso usando a flag '--output' seguida de uma lista separada por vírgulas de nomes de campos. Alguns campos úteis são:

  • source: o dispositivo de origem do sistema de arquivos
  • size: tamanho total do sistema de arquivos
  • used: quantidade de espaço usado
  • avail: quantidade de espaço disponível
  • pcent: porcentagem de espaço usado

Por exemplo, para criar um relatório mostrando o dispositivo, tamanho total, espaço usado e espaço disponível, execute:

df -H --output=source,size,used,avail

Isso imprime uma tabela com as colunas selecionadas:

Filesystem      Size  Used Avail
/dev/sda1       100G   65G   35G
/dev/sda2       500G  100G  400G

Comando du

O que é o comando 'du'?

O comando du, abreviação de "disk usage" (uso de disco), é um utilitário Linux que relata os tamanhos de diretórios e arquivos. Diferente do comando df que fornece uma visão de alto nível da utilização do disco por sistema de arquivos, o du permite que você veja o espaço usado por diretórios e arquivos específicos. Isso o torna útil para descobrir quais subdiretórios e arquivos estão usando mais espaço em disco no seu sistema Linux.

Como usar o 'du'

Para usar o du, forneça o diretório que você deseja analisar como argumento:

du /home/user/Documents

Isso gera uma lista de todos os subdiretórios em /home/user/Documents, junto com o espaço em disco que cada um usa. Por padrão, os tamanhos são mostrados em kilobytes.

Para tornar a saída mais fácil de ler, use a flag -h para mostrar tamanhos em formato legível (KB, MB ou GB), e a flag -s para mostrar apenas um resumo para o diretório:

du -sh /home/user/Documents

Isso pode gerar uma saída como:

25G     /home/user/Documents

Mostrando que o diretório /home/user/Documents e seu conteúdo usam 25 gigabytes de espaço em disco no total.

Você também pode usar o du em arquivos individuais para ver seu uso de disco:

du -h /home/user/Documents/large-file.zip

Por exemplo, se você tiver um arquivo de vídeo grande na sua pasta Documentos, você pode executar:

du -h /home/user/Documents/vacation-video.mp4

E obter uma saída como:

2.3G    /home/user/Documents/vacation-video.mp4

Mostrando que o arquivo de vídeo ocupa 2,3 gigabytes de espaço.

Encontrando os maiores diretórios com 'du'

Um uso comum para o du é encontrar diretórios que estão usando mais espaço em disco. Embora você possa verificar a saída manualmente para encontrar os maiores subdiretórios, é mais fácil combinar o du com outros comandos para ordenar os resultados.

Para listar os 10 maiores subdiretórios no diretório atual por tamanho, execute:

du -a . | sort -n -r | head -n 10

Veja o que cada parte do comando faz:

  • du -a .: Calcula o uso de disco de todos os arquivos e subdiretórios no diretório atual (.). A flag -a inclui arquivos além de diretórios.
  • sort -n -r: Ordena a saída do du numericamente (-n) em ordem reversa (-r), então os maiores números aparecem primeiro.
  • head -n 10: Pega as primeiras 10 linhas da saída ordenada.

O comando completo fornece uma lista dos 10 maiores subdiretórios e arquivos, que você pode então examinar mais detalhadamente para ver se algum espaço pode ser recuperado.

Você também pode especificar um diretório diferente para começar:

du -a /home/user/Documents | sort -n -r | head -n 10 

Isso encontra os 10 maiores consumidores de espaço dentro do diretório /home/user/Documents e seus subdiretórios.

Por exemplo, digamos que seu diretório /home/user/Documents contenha estes subdiretórios:

/home/user/Documents/work
/home/user/Documents/personal
/home/user/Documents/photos
/home/user/Documents/music

Executar o comando acima pode gerar uma saída como:

45G     /home/user/Documents/photos
30G     /home/user/Documents/music  
10G     /home/user/Documents/work
5G      /home/user/Documents/personal

Mostrando que os subdiretórios photos e music estão usando mais espaço.

Comando stat

O comando stat exibe informações sobre um arquivo, diretório ou sistema de arquivos, incluindo seu tamanho, tamanho do bloco e uso de disco.

Para usar o stat, especifique o caminho para o arquivo, diretório ou dispositivo que você deseja analisar. Por exemplo:

stat /home/user/Documents/file1.txt

Isso gerará informações sobre file1.txt:

  File: /home/user/Documents/file1.txt
  Size: 4096            Blocks: 8          IO Block: 4096   regular file
Device: 10301h/66049d   Inode: 1234567     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/    user)   Gid: ( 1000/    user)
Access: 2023-04-20 10:30:00.000000000 +0200
Modify: 2023-04-20 10:30:00.000000000 +0200
Change: 2023-04-20 10:30:00.000000000 +0200
 Birth: -

A partir dessa saída, você pode ver o tamanho do arquivo (4096 bytes), o número de blocos que ele ocupa no disco (8) e outros metadados como permissões, propriedade e registros de data e hora.

Você também pode usar o stat em um diretório ou sistema de arquivos. Por exemplo:

stat /home/user/Documents

Isso mostrará o tamanho e o uso de disco do diretório /home/user/Documents, com outras informações.

Cenários onde o stat pode ser útil incluem:

  • Analisar o uso de disco de um arquivo ou diretório específico para identificar ineficiências de armazenamento
  • Verificar permissões e propriedade de arquivos para solucionar problemas de acesso
  • Examinar registros de data e hora de arquivos para determinar quando um arquivo foi modificado ou acessado pela última vez

Exemplo: Verificando Permissões e Propriedade de Arquivos

Para verificar as permissões e a propriedade de um arquivo, você pode usar o stat:

stat /home/user/Documents/important_file.txt

A saída incluirá as permissões e a propriedade do arquivo:

Access: (0640/-rw-r-----)  Uid: ( 1000/    user)   Gid: ( 1000/    user)

Neste caso, o arquivo tem permissões de leitura e escrita para o proprietário (user), permissões de leitura para o grupo (user) e nenhuma permissão para outros. O proprietário e o grupo são ambos "user" com UID 1000 e GID 1000.

Se as permissões ou a propriedade estiverem incorretas, você pode usar chmod e chown para ajustá-las:

chmod 0644 /home/user/Documents/important_file.txt
chown user:group /home/user/Documents/important_file.txt

Isso define as permissões para -rw-r--r-- (leitura e escrita para o proprietário, leitura para grupo e outros) e altera o proprietário para "user" e o grupo para "group".

Comando fdisk -l

O comando fdisk -l é usado para exibir informações sobre partições de disco e seus tamanhos. Ele lista as tabelas de partição para todos os dispositivos de armazenamento conectados ao sistema e mostra o layout do disco.

Executar fdisk -l como root (ou com sudo) gerará informações sobre cada disco e suas partições:

Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A1B2C3D4-E5F6-G7H8-I9J0-K1L2M3N4O5P6

Device       Start      End  Sectors Size Type
/dev/sda1     2048   206847   204800 100M EFI System
/dev/sda2   206848  2303999  2097152   1G Linux filesystem
/dev/sda3  2304000 31457279 29153280  14G Linux filesystem

Esta saída mostra que /dev/sda tem um tamanho total de 50 GiB e contém três partições: uma partição EFI System de 100 MB, uma partição Linux filesystem de 1 GB e uma partição Linux filesystem de 14 GB.

O comando fdisk -l é útil para entender a estrutura dos seus dispositivos de armazenamento e os tamanhos das partições. Ele pode ajudar com tarefas como:

  • Identificar o tamanho total e o espaço livre em cada dispositivo de armazenamento
  • Determinar o layout e os tamanhos das partições ao planejar uma nova instalação ou reparticionamento
  • Verificar se as partições estão configuradas corretamente e alinhadas com o dispositivo de armazenamento

Exemplo: Identificando o Tamanho Total do Disco e o Espaço Livre

Para verificar rapidamente o tamanho total e o espaço livre de um disco, você pode combinar fdisk -l com grep e awk:

sudo fdisk -l /dev/sda | grep -e "Disk /dev/sda" -e "^$" | awk '{print $3 " " $4}'

Este comando extrai as linhas relevantes da saída do fdisk -l e exibe o tamanho total do disco e a unidade:

50 GiB

Para calcular o espaço livre, subtraia o espaço usado (soma dos tamanhos das partições) do tamanho total do disco. Você pode automatizar isso com um script:

#!/bin/bash

disk="/dev/sda"
total_size=$(sudo fdisk -l $disk | grep "Disk $disk" | awk '{print $3}')
used_space=$(sudo fdisk -l $disk | awk '/^\/dev/ {sum += $5} END {print sum}')

free_space=$((total_size - used_space))
echo "Total size: $total_size bytes"
echo "Used space: $used_space bytes"
echo "Free space: $free_space bytes"

Este script calcula o tamanho total do disco, soma os tamanhos das partições para obter o espaço usado e subtrai o espaço usado do tamanho total para determinar o espaço livre. A saída ficará assim:

Total size: 53687091200 bytes
Used space: 15728640000 bytes
Free space: 37958451200 bytes

Isso ajuda você a avaliar rapidamente o espaço livre em um disco sem ter que calculá-lo manualmente a partir dos tamanhos das partições.

Combinando Comandos para Análise Detalhada

Ordenando Arquivos e Diretórios por Tamanho

Você pode combinar o comando du com sort para listar arquivos e diretórios ordenados por seu uso de disco. Isso é útil para encontrar os maiores arquivos e diretórios.

Por exemplo, para ordenar o conteúdo do seu diretório Desktop por tamanho do maior para o menor, execute:

du -h /home/user/Desktop | sort -rn

A flag -h torna a saída fácil de ler, enquanto sort -rn ordena os resultados numericamente (-n) em ordem reversa (-r).

Se você quiser ver apenas os maiores ou menores resultados, pode enviar a saída para head ou tail:

Comando Descrição
du -h /home/user/Desktop \| sort -rn \| head -n 5 Ver os 5 maiores arquivos/diretórios no seu Desktop
du -h /home/user/Desktop \| sort -rn \| tail -n 5 Ver os 5 menores arquivos/diretórios no seu Desktop

Aqui está um exemplo de como a saída pode parecer ao encontrar os 5 maiores itens:

4.0G    /home/user/Desktop/videos
1.5G    /home/user/Desktop/images
1.0G    /home/user/Desktop/project.zip
500M    /home/user/Desktop/music
100M    /home/user/Desktop/documents

Isso mostra que o diretório videos está ocupando mais espaço com 4,0 gigabytes, seguido por images com 1,5 gigabytes, e assim por diante.

Filtrando Resultados por Tamanho

Para encontrar arquivos que são maiores que um determinado tamanho, você pode combinar du com grep. O comando grep procura linhas que correspondem a um padrão.

Para encontrar arquivos no seu diretório Desktop que são maiores que 1 gigabyte, execute:

du -h /home/user/Desktop | grep '^\s*[0-9\.]\+G'

Isso procura linhas que começam com (^) algum espaço em branco (\s*), seguido por um ou mais (+) dígitos ou pontos ([0-9\.]), e terminam com um G (para gigabytes).

Você pode mudar o G para M para encontrar arquivos maiores que um megabyte, ou K para kilobytes:

# Encontrar arquivos maiores que 100 megabytes
du -h /home/user/Desktop | grep '^\s*[0-9\.]\+M'

# Encontrar arquivos maiores que 10 kilobytes  
du -h /home/user/Desktop | grep '^\s*[0-9\.]\+K'

Por exemplo, se você executar o comando para encontrar arquivos maiores que 100 megabytes, pode ver uma saída como esta:

200M    /home/user/Desktop/presentation.ppt
150M    /home/user/Desktop/archive.tar.gz
120M    /home/user/Desktop/video.mp4

Esta técnica é útil quando você precisa encontrar arquivos grandes que podem estar ocupando muito espaço em disco.

Excluindo Arquivos por Tipo

Ao analisar o uso de disco, você pode querer excluir certos tipos de arquivos dos resultados. O comando du tem uma flag --exclude que permite pular arquivos que correspondem a um padrão.

Por exemplo, para obter o uso de disco do seu diretório Desktop enquanto exclui arquivos de texto, execute:

du -h /home/user/Desktop --exclude="*.txt"

Isso calculará os tamanhos de todos os arquivos e subdiretórios como de costume, mas deixará de fora quaisquer arquivos que terminem em .txt.

du -h /home/user/Desktop --exclude={"*.txt","*.jpg","*.png"}

Ambos esses comandos analisarão o uso de disco ignorando arquivos de texto, JPEGs e PNGs.

Usar --exclude é útil quando você está tentando encontrar arquivos grandes para limpar, mas sabe que certos tipos de arquivos devem estar lá e não precisam ser contados. Por exemplo, se você tem uma grande coleção de fotos, pode excluir arquivos de imagem para se concentrar em outros tipos de arquivos que podem estar ocupando espaço desnecessariamente.

Casos de Uso Práticos

Aqui estão algumas situações da vida real onde combinar du com outros comandos pode ser benéfico:

  • Liberando espaço em disco: Quando seu disco rígido está com pouco armazenamento, você pode usar du -h | sort -rn | head para identificar os maiores diretórios e arquivos. Isso ajuda você a decidir o que excluir ou mover para outra unidade para liberar espaço.

  • Preparando para uma migração de sistema: Antes de migrar seus dados para um novo computador ou unidade, é uma boa ideia verificar seu uso de armazenamento atual. Comandos como du -h --exclude="*.bak" --exclude="*.tmp" permitem que você obtenha uma imagem precisa do tamanho dos seus dados enquanto exclui arquivos temporários ou de backup que não precisam ser transferidos.

  • Solucionando problemas de desempenho: Se seu sistema está lento ou certos processos estão demorando muito, pode ser porque eles estão processando arquivos muito grandes. Usar du -h | grep '^\s*[0-9\.]\+G' pode ajudá-lo a identificar arquivos grandes que podem estar causando problemas de desempenho.

Comando ls -al

O comando ls -al lista o conteúdo de um diretório, incluindo arquivos ocultos, e mostra seus tamanhos com outras informações. É útil para analisar o uso de disco de arquivos específicos dentro de um diretório.

Por exemplo, executar ls -al no diretório /home/user/Documents pode mostrar uma saída como:

total 24
drwxr-xr-x 2 user user 4096 Apr 20 10:30 .
drwxr-xr-x 5 user user 4096 Apr 19 09:15 ..
-rw-r--r-- 1 user user 4096 Apr 20 10:30 file1.txt
-rw-r--r-- 1 user user 8192 Apr 20 10:15 file2.txt
drwxr-xr-x 2 user user 4096 Apr 19 15:45 subdirectory

Aqui, ls -al fornece uma listagem do diretório, mostrando permissões de arquivos, propriedade, datas de modificação e tamanhos. Este comando ajuda quando você precisa analisar o uso de disco de arquivos individuais dentro de um diretório.

Alguns casos de uso para ls -al incluem:

  • Encontrar arquivos grandes que estão ocupando espaço em disco
  • Verificar permissões e propriedade de arquivos para garantir o controle de acesso
  • Comparar datas de modificação de arquivos para ver quais arquivos foram atualizados recentemente

Exemplo: Encontrando Arquivos Grandes

Para encontrar arquivos grandes em um diretório, você pode combinar ls -al com sort e head:

ls -al /home/user/Documents | sort -k 5 -n -r | head -n 5

Este comando lista o conteúdo de /home/user/Documents, ordena a saída pela quinta coluna (tamanho do arquivo) em ordem numérica reversa e exibe os 5 principais resultados. A saída mostrará os maiores arquivos no diretório:

-rw-r--r-- 1 user user 1048576 Apr 20 11:00 large_file1.bin
-rw-r--r-- 1 user user  524288 Apr 20 10:45 large_file2.bin
-rw-r--r-- 1 user user  262144 Apr 20 10:30 large_file3.bin
-rw-r--r-- 1 user user  131072 Apr 20 10:15 large_file4.bin
-rw-r--r-- 1 user user   65536 Apr 20 10:00 large_file5.bin

Isso ajuda você a identificar rapidamente os maiores arquivos que podem estar consumindo espaço em disco.