Що робити, коли моя коренева файлова система заповнена?


33

Моя / папка читається повною мірою, і я не можу оновлювати програмне забезпечення або робити щось.

Не впевнений, що я тут роблю неправильно.

$ df -h
Results:
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             5.7G  5.4G     0 100% /
udev                  1.9G  4.0K  1.9G   1% /dev
tmpfs                 770M  1.1M  769M   1% /run
none                  5.0M     0  5.0M   0% /run/lock
none                  1.9G  808K  1.9G   1% /run/shm
/dev/sda6             961M   18M  895M   2% /tmp
/dev/sda7             9.9G  2.9G  6.6G  31% /home
/dev/sda3             5.7G  140M  5.3G   3% /usr/local
/dev/sda4             2.9G  1.3G  1.4G  49% /var
/dev/sdb1              94G  1.3G   88G   2% /sites
/home/username/.Private  9.9G  2.9G  6.6G  31% /home/username
/dev/sdb5             282G   88G  180G  33% /mnt/multimedia


$ df -h /
Results:
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       5.7G  5.4G     0 100% /

$ du /mnt /media
Results:
4   /mnt/multimedia
8   /mnt
4   /media

Це нова установка Ubuntu 12.04, і я не впевнений, як / чому коренева система настільки повна.


так. Я здогадуюсь, це якось повно. Я скоригував питання із запропонованими зуветками результатами
Джессі

Для мене це було заповнено застарілими ядрами, і я очистив їх за допомогою dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge Отримані з довідки спільноти Ubuntu
RajaRaviVarma

Відповіді:


30

Деякі ймовірні заходи щодо переповнення кореневого розділу (на основі випадків):

1. Основні звалища, що заповнюють диск.

Перевірте:

find / -xdev -name core -ls -o  -path "/lib*" -prune

2. Непотрібні пакети заповнюють простір.

Наступна команда видалить усі автоматично встановлені пакети, які більше не потрібні. (Тому що залежність, яка змушує встановити раніше, була усунена.)

apt-get autoremove --purge 

3. Застарілі пакети ядра

Перевірте, скільки встановлено пакетів ядра та видаліть застарілі версії ядра. Ви можете дослідити поточну ситуацію за допомогою:

dpkg -l "linux*{tools}*" |grep ^.i

Видаліть всі версії ядра, які вам більше не потрібні

4. Приховане зберігання

Інші змонтовані перегородки можуть ховати використане сховище. Для дослідження цього монтажу кореневої файлової системи тимчасово на другому місці:

mkdir /tmp/2ndRoot
mount /dev/sda1 /tmp/2ndRoot

Тепер перегляньте кожен каталог, який зазвичай прихований іншим монтуванням, наприклад:

  • tmp
  • додому
  • бігати
  • вар
  • usr / місцевий

    і у вашому випадку також:

  • сайти

Caveat

Не забудьте в кінці контролювати послідовність вашої установки з:

apt-get install -f

Примітки

Зарезервоване сховище

/dev/sda1       5.7G  5.4G     0 100% /

Вихід показує, що у вас ще є деякий простір, але він, схоже, зарезервований для кореня. Хорошим моментом є те, що функціональність вашої системи наразі надається.

Але незабаром слід усунути проблему.

Споживання місця ubuntu 12.04

Маючи лише 5,7 Гбіт для установки ubuntu, здається, занадто мало. Вам слід видалити кілька несуттєвих програмних пакетів.

Мої поточні установки мають 10-14 Gb для кореневих та бінарних (ака /usr) розділів.


Дякую, що в кінцевому підсумку я просто зіткнувся з кореневим розділом, і я буду стежити за цим, чи повинен я працювати над вашим трюком, щоб переглянути всі папки (можливо, локальну / бін?). Як не дивно, що інструмент аналізатора дискового простору змусив мене повірити, що це вмонтовані накопичувачі в / медіа /, оскільки всі вони були червоними та повними.
Джессі

@ H.-Дірк Шмітт на 1,3 Гб зменшено за допомогою цієї команди "apt-get autoremove --purge". Дякуємо за деталі.
sugunan

28

Просто поділіться магічною командою, щоб знати, куди йде все ваше місце на диску:

sudo du -hsx /* | sort -rh | head -n 40

Ви закінчуєте досить акуратний звіт, як це:

16G     /home
5.3G    /var
2.6G    /usr
840M    /run
277M    /root
171M    /lib
59M     /tmp
25M     /sbin
19M     /boot
16M     /bin
9.6M    /etc
136K    /ngx_pagespeed-latest-stable.zip
24K     /DEBIAN
16K     /lost+found
8.0K    /media
4.0K    /srv
4.0K    /opt
4.0K    /mnt
4.0K    /lib64

Потім ви можете запустити знову з іншої папки:

sudo du -hsx /home/* | sort -rh | head -n 35

Видаліть те, що не потрібно, і вам слід добре. Це частина мого шпаргалки Linux


Хороший пост і корисний інструмент, щоб ...
Джордж Удосен

3
А як із прихованими папками? Ті, що починаються з крапки.
Джон Ред

@JohnRed Наприклад, для вашого домашнього каталогу:du -hsx $(ls -A ~/) | sort -rh
ritiek

4

Іншим рішенням буде використання ncdu, наприклад:

sudo ncdu -x /

Де / знаходиться розділ / диск, який ви хочете перевірити. Для мого прикладу результат такий

    4,0GiB [##########] /usr
  579,3MiB [#         ] /root
  487,4MiB [#         ] /opt
   41,7MiB [          ] /lib
   22,7MiB [          ] /sbin
   21,2MiB [          ] /boot
   18,6MiB [          ] /etc
    9,1MiB [          ] /bin
    3,6MiB [          ]  core
  260,0KiB [          ] /build
   88,0KiB [          ] /tmp
e  16,0KiB [          ] /lost+found
    8,0KiB [          ] /media
    4,0KiB [          ] /lib64
e   4,0KiB [          ] /srv
e   4,0KiB [          ] /mnt
>   0,0  B [          ] /var
>   0,0  B [          ] /sys
>   0,0  B [          ] /run
>   0,0  B [          ] /proc
>   0,0  B [          ] /ovhbackup
>   0,0  B [          ] /home
>   0,0  B [          ] /dev

Потім ви можете переходити по папках за допомогою стрілок клавіатури та просто натискати Dклавішу, щоб видалити папку / файл.

ncduможе бути встановлено з aptінструменту пакування в системах на базі Debian:

sudo apt install ncdu

0

Перевірте папку "/home/yourname/.local/share/Trash" за допомогою команди "du" (див. Вище):

У мене була ця сама проблема і я використав викладений вище трюк Mickael, щоб коротко роздрукувати використання диска. Я виявив, що якщо ви видаляєте речі за допомогою менеджера вікон, і у вас немає достатнього дозволу на той час, коли ви це робите, файли, які ви думали, що ви видалили (обидва за допомогою командного рядка, використовуючи "rm" та "apt autoremove --purge", і випорожнивши кошик для сміття), можливо, потрапив у ".local / share / ____" кореневого розділу.

"Файлова система" на лівій панелі менеджера вікон говорила про майже 50 Гбіт я відклав для встановлення файлів для Ubuntu / Mint. Виявляється, лекції, які я помилково скопіював у цей розділ, не були видалені, коли я перемістив їх до розділу, в який спочатку мав намір скопіювати їх. Це 36gb безкоштовно, що має сенс більше (моє велике, головним чином, тому що я зберігаю HD графіку на цьому розділі також для швидкого перегляду великих наборів зображень).

Безперечно переконайтесь, що ви добре розумієте дозволи, перш ніж видаляти / керувати своїми файлами, або, можливо, буде вимкнено, що речі, які, на вашу думку, були видалені, переповнюють ваш SSD.

Як бічне зауваження, мій 16 Гб оперативної пам’яті завантажувався під час завантаження на 92%, тоді як мій корінний розділ містив видалені файли, і там постійно тримався через цю проблему. Баран використовується для кешування елементів на диску, щоб значно підвищити продуктивність Linux. Операційна система припустить, що ви правильно використовуєте інсталяційний розділ (що в цьому випадку мені не було), тому він кеширує, що може, щоб прискорити реакцію системи. Тепер це лише зауваження, оскільки кешування диска не залишає цього місця в пам'яті; це дасть використаний простір оперативної пам’яті іншим програмам, які потребують цього, коли вони вимагають (саме так працює кешування диска), але це зайве використання ресурсів, що завантажують 14,5 Гб видалених файлів у операційний модуль кожного разу, коли я завантажуюся.

Сподіваюся, це допомагає! Величезне спасибі за відповіді вище, надзвичайно корисно!


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