Como encontrar os arquivos que preenchem meu disco [duplicado]

2

Eu tenho um problema que meu disco está enchendo, mas não consigo encontrar os arquivos que o preenchem. Quando eu corro df -h eu recebo:

Filesystem      Size  Used Avail Use% Mounted on
/dev/root        53G   51G  2.0G  97% /
devtmpfs        2.0G  4.0K  2.0G   1% /dev
none            395M  204K  395M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            2.0G     0  2.0G   0% /run/shm
none            100M     0  100M   0% /run/user

Limpei todos os caches, logs e arquivos de remoção automática. Quando eu li este comando du -h /var | sort -nr | head -n 10 Eu recebo:

1016K   /var/www/soFit/cache/class_folder-242/soinfitcom/cl
1016K   /var/www/landing/PHPMailer/vendor
1008K   /var/www/dating/libs/vendor
988K    /var/www/libs/mPDF/ttfontdata
968K    /var/www/landing/PHPMailer/vendor/phpmailer
964K    /var/www/landing/PHPMailer/vendor/phpmailer/phpmailer
960K    /var/www/soFitTest/groupChats/vendor/symfony/http-foundation
960K    /var/www/soFitTest/chat/vendor/symfony/http-foundation
960K    /var/www/soFit/groupChats/vendor/symfony/http-foundation
960K    /var/www/soFit/chat/vendor/symfony/http-foundation

Usando du -x / | sort -rn | head -n 10

2471828 /
1592004 /var
1091532 /var/lib
929776  /var/lib/mysql
776620  /usr
715092  /var/lib/mysql/soFit
306064  /var/www
291376  /usr/lib
269176  /usr/share
180868  /var/www/libs

Meu tamanho de db do mysql é ~ 500MB, não tão grande.

Onde estão todos os 51G de espaço?

Meu linux é:  Debian GNU / Linux 7.11 (wheezy)

du -h --max-depth=1 /
4.0K    /dev
6.4M    /etc
4.0K    /mnt
759M    /usr
4.0K    /selinux
5.5M    /root
20K     /home
24K     /srv
4.0K    /opt
0       /sys
8.0K    /tigo
8.0K    /media
16K     /lost+found
1.6G    /var
6.5M    /sbin
4.0K    /lib64
7.0M    /bin
4.0K    /.ssh
204K    /run
15M     /lib
4.0K    /boot
12K     /tmp
du: cannot access '/proc/4557/task/19375/fdinfo/312': No such file or directory
du: cannot access '/proc/13067/task/13067/fd/4': No such file or directory
du: cannot access '/proc/13067/task/13067/fdinfo/4': No such file or directory
du: cannot access '/proc/13067/fd/5': No such file or directory
du: cannot access '/proc/13067/fdinfo/5': No such file or directory
0       /proc
61M     /backups

2.4G /

A resposta foi encontrar os arquivos usando: lsof | grep -i deleted e excluir esses arquivos.

Encerre a máquina completamente e não apenas reinicie

var / libs / mysql delete (nenhum) .log

    
por dasdasd 15.05.2017 / 14:10

2 respostas

3

Pode haver processos que mantêm arquivos grandes abertos que já foram excluídos. Você pode encontrar esses arquivos abertos com lsof ou pode simplesmente reinicializar a máquina se isso for viável (ou seja, se não for um servidor que precisa ficar ativo). Consulte Encontre e remova arquivos grandes que estão abertos, mas foram excluídos (Desculpe, digitando no meu celular, então copiar / colar não é muito confortável)

    
por 15.05.2017 / 14:32
0

Você pode usar du -h com o parâmetro --max-depth , que obterá o resumo das pastas na profundidade definida, por exemplo, para profundidade de 2 pastas que você pode usar:

du -h --max-depth=2 /

Quando você encontrar as pastas que contêm a maioria dos dados (dica - o tamanho estará em G), você poderá executar o mesmo comando nessas pastas:

du -h --max-depth=2 /folder/which/holds/GB/OF/DATA

Nota: Existem algumas ferramentas gráficas que podem ajudar (dependem do Linux que você está usando)

como analisar seu disco use-pattern-in-linux contém links para alguns utilitários da GUI do Linux

    
por 15.05.2017 / 14:15

Tags