Использование диска с помощью du и ncdu
du (disk usage) — это стандартная команда Linux, которая сообщает, сколько места занимают файлы и каталоги; ncdu — это интерактивная альтернатива на базе ncurses, позволяющая просматривать результаты и удалять элементы. Вместе с df, которая показывает свободное место в файловых системах, они являются обычным способом выяснить, что заполняет диск.
1Полезные параметры du
du -sh /var выводит один итоговый размер в удобном для чтения формате. du -h --max-depth=1 / перечисляет размер каждого каталога верхнего уровня. Параметр -x ограничивает поиск одной файловой системой, поэтому смонтированные диски и /proc пропускаются.
Перенаправление вывода в sort позволяет найти самые большие элементы: du -xh --max-depth=1 / | sort -h.
2ncdu
ncdu -x / сканирует корневую файловую систему и открывает список для навигации, отсортированный по размеру. Клавиши со стрелками используются для перемещения, Enter открывает папку, 'd' удаляет выбранный элемент после подтверждения, 'q' закрывает программу. ncdu обычно устанавливается из пакетов дистрибутива (например, apt install ncdu).
3Когда данные du и df различаются
Если df сообщает о заполнении диска, а du находит меньше данных, возможно, удаленный файл все еще открыт запущенным процессом. Место освободится, когда этот процесс закроет файл или будет перезапущен.
Как найти, что заполняет диск
- Посмотрите, какая файловая система заполнена:
df -h - Выведите список самых больших папок верхнего уровня:
sudo du -xh --max-depth=1 / | sort -h - Перейдите на уровень глубже в самую большую папку и повторите действия.
- Или воспользуйтесь интерактивным просмотром:
sudo ncdu -x /
Осторожно
- Не удаляйте файлы, которые вы не узнаете, в каталогах
/usr,/lib,/bootили/var/lib. - Клавиша 'd' в ncdu удаляет файлы сразу после подтверждения; корзины не существует.
Связанные статьи
- df (disk free)Как читать вывод команды df, почему Use% может достичь 100%, когда Avail еще не равен нулю для обычных пользователей, и как проверить иноды с помощью df -i.
- Иноды и ошибка «No space left on device»Что такое инод, как посмотреть использование инодов с помощью df -i и как найти директории с миллионами мелких файлов.
- Поиск больших и старых файлов с помощью findКак использовать find для вывода списка больших или старых файлов в Linux, их безопасного предварительного просмотра и удаления только проверенных данных.
Источники
- du(1) man7.org
- ncdu(1) (Debian) manpages.debian.org
- df(1) man7.org
Примечание: RainServer предлагает мониторинг и безопасную очистку для серверов Linux; программа показывает, что будет изменено, и запрашивает подтверждение.
Последняя проверка: