Na dysku głównym Ubuntu zabrakło miejsca, nie mogę znaleźć źródła przez du lub lsof

10

Na dysku głównym na komputerze z systemem Ubuntu 15.10 prawie brakuje miejsca, ale nie mogę znaleźć źródła. sdb2Brakuje miejsca na dysku, dostępne jest 313 mln 51G. System plików to ext4.

Oto sudo du -h / --max-depth=1wynik:

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           789M  9.4M  780M   2% /run
/dev/sdb2        51G   48G  313M 100% /
tmpfs           3.9G   12K  3.9G   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sdb1       511M  3.4M  508M   1% /boot/efi
tmpfs           789M  8.0K  789M   1% /run/user/1000
/dev/sda1       239G  122M  239G   1% /media/DATA

Ale nie mogę znaleźć żadnych dużych plików. /Wydaje się, że całkowite zużycie wynosi zaledwie 3,4 G. Oto wynik sudo du -h / --max-depth=1:

4.0K    /mnt
188K    /tmp
406M    /home
339M    /var
8.1M    /etc
361M    /lib
du: cannot access ‘/proc/7626/task/7626/fd/4’: No such file or directory
du: cannot access ‘/proc/7626/task/7626/fdinfo/4’: No such file or directory
du: cannot access ‘/proc/7626/fd/3’: No such file or directory
du: cannot access ‘/proc/7626/fdinfo/3’: No such file or directory
0    /proc
13M    /bin
du: cannot access ‘/run/user/1000/gvfs’: Permission denied
9.4M    /run
1.6M    /root
4.0K    /lib64
16K    /lost+found
0    /sys
1.1M    /media
12K    /dev
222M    /opt
2.0G    /usr
62M    /boot
9.5M    /sbin
4.0K    /cdrom
8.0K    /srv
3.4G    /

Znalazłem podobne pytanie: z miejsca na dysku, jakie jest źródło?

W takim przypadku wygląda na to, że problem został spowodowany przez usunięty dziennik, który w jakiś sposób nie został zamknięty przez uruchomiony proces, a sposobem jego znalezienia było uruchomienie sudo lsof | grep deleted. W moim przypadku wynikiem jest

lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
      Output information may be incomplete.

Ponadto problem utrzymuje się po ponownym uruchomieniu systemu, więc jest mało prawdopodobne, że to jest przyczyną.

Innym sugerowanym rozwiązaniem jest odmontowanie /var/lib/ureadahead/debugfs, ale waham się to zrobić.

Co jeszcze może być nie tak?

biggvsdiccvs
źródło
zrestartuj komputer. niektóre pliki zostały usunięte, ale zablokowane.
Ipor Sircer
Próbowałem tego, ale nic się nie zmieniło.
biggvsdiccvs,
1
Sprawdź system plików pod kątem błędów i zaktualizuj do obsługiwanej wersji Ubuntu.
Michael Hampton
6
po prostu uruchom „du -sh *”, gdy jesteś w folderze głównym. Nie używaj flagi --max-depth
Orphans
1
@Orphans wygląda na to, że nie widziałem *zagnieżdżonego przeciwko "
YPU

Odpowiedzi:

21

Cóż, to tylko przypuszczenie, ale może działać: myślę, że użytkownik zapomniał kiedyś zamontować, /dev/sda1a zamiast tego /media/DATAzapisano wszystkie dane ./dev/sdb2/dev/sda1

Aby to sprawdzić, odmontuj /media/DATAi sprawdź pliki i foldery w tej ścieżce.

Fedor Dikarev
źródło
Dzięki, to było to! Tyle że myślę, że mogło to być złe połączenie z dyskiem, niż ktokolwiek zapomniałby cokolwiek zamontować. Cała konfiguracja jest zawodna i nie jestem pewien, jak ten dysk jest zamontowany /media/DATA- nie ma go /etc/fstab.
biggvsdiccvs,
Jeśli nie chcesz odmontowywać systemu plików (na przykład, jeśli nie chcesz zamykać procesów, które go używają), możesz użyć podłączenia do łączenia, aby zobaczyć (i usunąć) pliki ukryte przez połączenie.
Johnny
7

Regularnie używam do tego „ncdu”, jest wystarczająco mały, aby nadal go instalować.

sudo apt-get install ncdu

Upewnij się, że uruchamiasz go jako root lub przez sudo:

sudo ncdu /
Roy Jacobs
źródło
1
Jednak nie pomogłoby w tym przypadku.
Gerald Schneider
2

Jeśli chcesz wiedzieć, gdzie w danym systemie plików jest używane miejsce, możesz użyć tego polecenia, aby znaleźć 20 największych katalogów, które pomogą ci zlokalizować, gdzie jest najwięcej miejsca,

du -m / |sort -n |tail -20

Ale główny system plików jest trudniejszy, ponieważ wszystkie systemy plików są zamontowane do rootowania. Ale argument -x (--one-file-system) zgłosi tylko żądany system plików,

du -m -x / |sort -n |tail -20
ChuckCottrill
źródło
1
df -h *.* 

Może pomóc.

Przechodzi przez katalogi i sumuje używane bajty.

steJav
źródło