ext3 problemas de espaço em disco

3

Eu fiquei sem espaço em disco no outro dia (bastante comum neste computador em particular). Como de costume, comecei a excluir arquivos e diretórios para restaurar um pouco de espaço.

No entanto, desta vez, o sistema de arquivos ainda relata que não tenho espaço em disco disponível.

Veja o que o df reporta:

replicant:~# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/md1              687G  672G     0 100% /
tmpfs                 250M     0  250M   0% /lib/init/rw
udev                   10M  716K  9.4M   7% /dev
tmpfs                 250M     0  250M   0% /dev/shm
overflow              1.0M  1.0M     0 100% /tmp

Se eu estiver calculando isso corretamente, devo ter aproximadamente 15 GB disponíveis em / . Alguém pode explicar isso para mim? Não é só df calculando isso incorretamente porque não consigo criar arquivos nem nada no sistema de arquivos.

Estou executando o ext3 no Debian 5.0.

    
por Fred Asp 20.07.2011 / 14:03

4 respostas

4

Seu sistema de arquivos tem espaço reservado, disponível apenas para uso pelo usuário root . Isso é bastante comum nos sistemas Unix / Linux, nos quais os arquivos de log e outros arquivos necessários para permitir a execução do sistema são de propriedade do usuário root .

Você pode usar a ferramenta tune2fs para consultar ou ajustar a quantidade de espaço reservada para root .

Executar:

tune2fs -l /dev/md1

Para ver os parâmetros atuais, procure por uma linha como:

Reserved block count: XXXX

Isso lhe dirá quantos blocos estão reservados. Pegue este valor e multiplique pelo valor na linha Block size: YYYY para ver a quantidade de espaço reservado em bytes.

Você pode ajustar a quantidade de espaço reservado com:

tune2fs -m 2 /dev/md1

Para definir o espaço reservado para 2% . O padrão é 5% . Esses comandos devem ser executados como root , seja por meio de um root login de via sudo .

NOTA: Tenha cuidado ao usar este comando, pois o uso inadequado pode danificar seu sistema de arquivos!

    
por 20.07.2011 / 15:27
1

Duas outras razões possíveis que nenhum espaço foi liberado:

  • Os arquivos que você excluiu ainda estão abertos por algum programa. Desde que um programa tenha um arquivo aberto (descritor), o arquivo não é realmente excluído (embora não esteja mais disponível para novos programas).
  • O espaço é imediatamente preenchido por outros arquivos, por exemplo, arquivos de log em / var / log devido a um processo que está gerando muitas mensagens, por exemplo, depuração de saída ou erros.
por 20.07.2011 / 15:17
1

Você precisa procurar o que ocupa o espaço na partição raiz. O primeiro passo seria:

cd /
du -sk * |sort -n

Isso ajuda você a identificar os maiores diretórios (provavelmente / home ou / var). Em seguida, repita o acima para os maiores diretórios. Se você remover algo, você deve comparar o uso do disco antes e depois, porque alguns programas podem ter arquivos abertos. Em caso de dúvida, você pode usar o lsof para verificá-lo. Se o seu espaço é tomado por arquivos de log, então você deve revisar /etc/logrotate.conf e rodar '/ usr / sbin / logrotate /etc/logrotate.conf'. Isso cuidará dos programas que podem ter arquivos de log abertos.

Se o acima não ajudar. Inicialize no modo de usuário único e execute fsck, pode haver também uma corrupção no sistema de arquivos.

    
por 23.07.2011 / 12:48
0

Parece muito estúpido, mas você se certificou de esvaziar sua lixeira?

Às vezes, quando você exclui arquivos, o sistema operacional os armazena na lixeira, caso você os exclua acidentalmente, e só os exclua de verdade depois de ter digitado para esvaziar a lixeira.

Tente executar o fsck para garantir que a unidade não esteja corrompida. Você pode estar ocupando todo o espaço com arquivos corrompidos perdidos + encontrados.

    
por 20.07.2011 / 14:57