У кореневого диска Ubuntu не вистачає місця, я не можу знайти джерело через du чи lsof


10

Кореневому диску на машині Ubuntu 15.10 майже не вистачає місця, але я не можу знайти джерело. sdb2Приводу, у якого не вистачає місця, є 313 М 51G. Файлова система є ext4.

Ось sudo du -h / --max-depth=1вихід:

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

Але я не можу знайти великих файлів. Загальний обсяг використання на, /здається, всього 3,4 Г. Ось результат від 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    /

Тут я знайшов подібне запитання: Що не має місця на диску, яке джерело?

У такому випадку схоже, що проблема була викликана видаленим журналом, який якимось чином не був закритий запущеним процесом, і спосіб його знайти - це запустити sudo lsof | grep deleted. У моєму випадку результат є

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

Крім того, проблема не зникає після перезавантаження системи, тому навряд чи це є причиною.

Ще одне запропоноване рішення - зняти його /var/lib/ureadahead/debugfs, але я не вагаюся це робити.

Що ще може бути не так?


зробити перезавантаження. є кілька видалених, але заблокованих файлів.
Іпор Сірсер

Я спробував це, але нічого не змінилося.
biggvsdiccvs

1
Перевірте файлову систему на наявність помилок та оновіть підтримуваний випуск Ubuntu.
Майкл Гемптон

6
просто запустіть "du -sh *", коли ви знаходитесь у кореневій папці. Не використовуйте прапор максимальної глибини
Сиріт

1
@Orphans виглядає так, що я не бачив *"
стиснутого

Відповіді:


21

Ну, це лише здогадка, але це може спрацювати: я думаю, що користувач колись забуде монтувати так, /dev/sda1як /media/DATAі всі дані були записані /dev/sdb2замість /dev/sda1.

Щоб перевірити це, відключіть /media/DATAі перевірте файли та папки під цим контуром.


Спасибі, ось що було! За винятком того, що я думаю, це могло бути поганим з’єднанням накопичувача, а не хто-небудь забував щось встановити. Цілі налаштування недостовірні, і я не впевнений, як встановлений цей диск /media/DATA- він не входить /etc/fstab.
biggvsdiccvs

Якщо ви не хочете від’єднувати файлову систему (наприклад, якщо ви не хочете вимкнути процеси, які її використовують), ви можете скористатися прив'язкою для перегляду (та видалення) файлів, прихованих кріпленням.
Джонні

7

Я регулярно використовую 'ncdu' для цього, він досить малий, щоб все-таки встановити його.

sudo apt-get install ncdu

Просто переконайтеся, що ви запускаєте його як root або через sudo:

sudo ncdu /

1
Не допомогли б у цьому випадку.
Джеральд Шнайдер

2

Якщо ви хочете знати, де використовується простір у певній файловій системі, ви можете скористатися цією командою для пошуку 20 найбільших каталогів, які допоможуть вам знайти місце, де використовується найбільше місця,

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

Але коренева файлова система важче, тому що всі файлові системи змонтовані до root. Але аргумент -x (--one-file-system) повідомить лише про потрібну файлову систему,

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

1
df -h *.* 

Може допомогти.

Переглядає каталоги та підсумовує використані байти.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.