disk dolu, ancak büyük dosyaları veya klasörleri bulamıyor


20

Ubuntu sunucusu bana hemen hemen tüm diskleri kullandığımı gösteriyor:

Usage of /:   95.5% of 118.12GB

Ve ben büyük klasörler ve dosyalar bulmaya çalışıyorum ncdu:

ncdu 1.8 ~ Use the arrow keys to navigate, press ? for help                                                                                                                                                 
--- / ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    5.5GiB [##########] /root                                                                                                                                                                               
    2.3GiB [####      ] /var
  628.6MiB [#         ] /usr
  209.9MiB [          ] /lib
   28.2MiB [          ] /boot
    8.6MiB [          ] /bin
    7.7MiB [          ] /sbin
    6.6MiB [          ] /etc
  208.0KiB [          ] /run
  112.0KiB [          ] /tmp
   48.0KiB [          ] /opt
e  16.0KiB [          ] /lost+found
    8.0KiB [          ] /dev
    8.0KiB [          ] /media
    4.0KiB [          ] /lib64
e   4.0KiB [          ] /srv
e   4.0KiB [          ] /selinux
e   4.0KiB [          ] /mnt
e   4.0KiB [          ] /home
    0.0  B [          ] /proc
    0.0  B [          ] /sys
@   0.0  B [          ]  initrd.img
@   0.0  B [          ]  vmlinuz

Göre ncduyaklaşık kullanmak 10 GiBarasında 128 GiB- bu hakkındadır 10 %. Çelişki.

Yeniden ubutntu serverbaşlatmadan benim temizliği nasıl yapılır ?

Bunun ncduyalan olduğunu düşündüm ve büyük dosyaları ve klasörleri bulmak için başka bir uygulama kullandım. Hepsi aynı sonucu gösterir ncdu.

Ve df -hkomut o diskin dolu olduğunu gösterir.

# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda       119G  113G     0 100% /
udev            2.0G  8.0K  2.0G   1% /dev
tmpfs           788M  212K  788M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            2.0G     0  2.0G   0% /run/shm

Güncelleştirme

sudo du -sch /* sonuç:

/# sudo du -sch /*
8.7M    /bin
29M /boot
8.0K    /dev
6.6M    /etc
4.0K    /home
0   /initrd.img
210M    /lib
4.0K    /lib64
16K /lost+found
8.0K    /media
4.0K    /mnt
48K /opt
du: cannot access `/proc/4470/task/4470/fd/4': No such file or directory
du: cannot access `/proc/4470/task/4470/fdinfo/4': No such file or directory
du: cannot access `/proc/4470/fd/4': No such file or directory
du: cannot access `/proc/4470/fdinfo/4': No such file or directory
0   /proc
5.0G    /root
212K    /run
7.8M    /sbin
4.0K    /selinux
4.0K    /srv
0   /sys
112K    /tmp
629M    /usr
2.3G    /var
0   /vmlinuz
8.1G    total

8.1G her zamanki gibi toplam. Ama cannot accesssatırları görüyorum , belki onlar yüzünden sorun.

Sonra en büyük klasörü kontrol ettim /. Bu /root:

/# sudo du -sch /root/*
96K /root/Downloads
2.5G    /root/Dropbox
36K /root/nohup.out
4.0K    /root/npm-debug.log
4.0K    /root/readonly
980K    /root/redis-2.6.16.tar.gz
228M    /root/tmp
2.7G    total

Sadece bir düşünce, herhangi bir kütüğün hızlı bir şekilde büyüdüğünü görmek için / var / log / içeriğini kontrol edebilir.
Mordoc

/ var / log yaklaşık 2 GiB'dir. Sorun değil
Maxim Yefremov,

1
du -sch /*Hangi kök dizinlerin en fazla alanı kullandığını görmeye çalışın ve oradan en fazla alanı kullanan yerlere inin.
DopeGhoti

@DopeGhoti Denedim ama aynı şey hakkında 8.1 GiBtam gördüm (bunu güncellemek için eklendi). Gerisi nerede olduğunu 100 GiB
çözemiyorum

2
İstemediğini biliyorum, ama mermiyi ısır ve yeniden başlat.
douggro

Yanıtlar:


13

Laboratuar makinelerimizde de aynı konuya giriyordum ve bu komutu kullanıyordum.

du -sch .[!.]* * |sort -h

Kullanıcıların çöp kutuları gibi henüz silmedikleri gizli kutuları bulabildim.

Kredi için Buraya Başlangıçta bu cevabı bulundu nerede.


Şaşırtıcı çözüm!
AivanF.

5

Bir işlem tarafından açık tutulan silinmiş dosyaları kontrol edin:
sudo lsof | grep deleted | less

Bu, pid ve dosya tanımlayıcısını gösterir. Bir sunucuda tam olarak bu problem vardı, ncdudisk doldurmaktan başka bir şey yoktu . Dosyaların monte edilmiş bir samba paylaşımına taşındığı ve zaman zaman dosya tanıtıcısını doğru şekilde kapatmayan bir işlem olduğu ortaya çıktı.

Silinen dosyaları bulup temizlemek istiyorsanız, yeniden başlatılması muhtemelen kabul edilebilirse en kolay yoldur. Veya işlemi öldürmeyi deneyebilirsiniz. Veya kullanılmadıklarından eminseniz, bunları manuel olarak sıfırlayabilirsiniz, bunun gibi bir şey:
> /proc/14487/fd/12


Bu benim sorunumdu. Tomcat 80GB silinmiş bir dosyayı tutuyordu. Bir yeniden başlatma düzeltmek için yeterliydi.
AFP_555

"Yeniden başlat" komutu yeterli değilse nasıl silebilirim?
ışıltı

4

Aşağıdaki komut, / home dizini için --max-deep = 1 olan disk kullanımını gösterecektir.

user@linux:~$ sudo du -h -d 1 /

2

Disk bağlantılarını kontrol ettiğinizden emin olun. Burada gördüğüm çözümlerin hiçbiri, üzerine monte edilmiş bir klasörün aldığı alanı tanımlayamıyor.


Herhangi bir öneri? Bu benim sorunum olabilir düşünüyorum
Eliethesaiyan


Temel olarak mevcut montajlarınızı kontrol edin mount, sonra üzerine montajlanmış her bir dizin için ikinci bir montaj ekleyin. Sonra dusuçlu olup olmadığını görmek için yeni oluşturulan mount'daki gibi normal disk araçlarını kullanabilirsiniz .
Rich Remer,

1

Aynı sorunu yaşadık ve var / lib / docker altında depolanan docker görüntüleri olduğu ortaya çıktı

ncdu, kullanıcılar tarafından görülemeyenleri listelemez. sudo altında ncdu çalıştırmak bile yardımcı olmuyor.

Bu komut mevcut tüm liman görüntülerini temizler ...

docker rmi $(docker images -a -q)


Burada da aynı sorun. Aslında, docker system pruneher şeyi bulmak bile değildi. Bu komut (liman işçisi sistemi budamadan önce) hile yapar.
jscharf

1
Son zamanlarda bunun docker system prune -a -fçok daha kapsamlı olduğunu keşfettik
Baldy

0

En büyük 10 dosyayı bulmak için bir sonraki komutu çalıştırabilirsiniz:

find / -type f -printf '%s %p\n' 2>&1 
     | grep -v 'Permission denied' 
     | sort -nr 
     | head -10
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.