Введение / Зачем это нужно
Заполненный диск в Ubuntu вызывает замедление работы системы, сбои при обновлениях и ошибки запуска сервисов. Регулярный мониторинг помогает вовремя обнаружить скрытые потребители пространства и предотвратить критические ситуации. В этом гайде вы научитесь быстро проверять использование хранилища через терминал и графические инструменты, находить самые тяжелые каталоги и безопасно освобождать место.
Требования / Подготовка
Для выполнения инструкций вам потребуется Ubuntu версии 20.04, 22.04 или новее. Большинство команд работают в стандартном терминале без установки дополнительного ПО. Для интерактивного анализа директорий рекомендуется утилита ncdu, которая отсутствует в базовой поставке. Убедитесь, что у вас есть доступ к аккаунту с правами sudo.
Шаг 1: Проверка общего состояния разделов
Первым делом оцените общую картину использования файловой системы. Откройте терминал (Ctrl + Alt + T) и выполните:
df -h
Команда df (disk free) покажет все смонтированные разделы. Флаг -h форматирует вывод в человеко-читаемый вид (ГБ/МБ). Обратите внимание на столбцы Использовано и Доступно, а также на точку монтирования /. Если загрузка корневого раздела превышает 85%, пора переходить к поиску крупных файлов.
Шаг 2: Поиск самых больших файлов и папок
Чтобы понять, какие именно директории занимают место, используйте утилиту du (disk usage). Стандартная команда рекурсивно просматривает каталоги, но вывод может быть слишком объемным. Отфильтруйте топ-15 папок в домашнем каталоге:
du -h ~/ | sort -rh | head -n 15
Флаг -h включает человеко-читаемый формат, sort -rh сортирует от большего к меньшему, а head ограничивает вывод.
Для более удобного анализа рекомендуем установить ncdu:
sudo apt update && sudo apt install -y ncdu
Запуск сканирования корня системы:
sudo ncdu /
Интерфейс позволяет перемещаться по папкам клавишами со стрелками, удалять файлы нажатием d и обновлять данные клавишей u.
Шаг 3: Автоматическая очистка системного кэша и логов
После выявления крупных директорий безопаснее всего начать с системных накоплений. Менеджер пакетов APT хранит загруженные .deb архивы, которые больше не нужны для установки. Очистите их командой:
sudo apt clean
Далее удалите автоматически установленные зависимости, которые больше не требуются ни одному пакету:
sudo apt autoremove -y
Системный журнал systemd также может разрастаться до нескольких гигабайт. Проверьте текущий объем логов:
journalctl --disk-usage
Если размер превышает 1 ГБ, ограничьте хранение записей до последних трех дней:
sudo journalctl --vacuum-time=3d
💡 Совет: Настройте ротацию логов в
/etc/systemd/journald.conf, изменив параметрSystemMaxUse=200M. Это предотвратит переполнение диска в будущем.
Проверка результата
После выполнения очисток повторно запустите df -h и сравните значения в колонке Доступно для корневого раздела. Разница должна соответствовать объему удаленных кэшей и логов. Также убедитесь, что ключевые сервисы (например, apache2, docker или snapd) запускаются без ошибок записи. Выполните systemctl --failed для проверки статуса активных служб.
Возможные проблемы
- Ошибка
Operation not permittedпри удалении файлов. Вы пытаетесь изменить файлы, принадлежащиеrootили другим службам. Всегда используйтеsudoдля системных директорий и не удаляйте содержимое папок в/etcили/usrбез понимания их назначения. ncduпоказывает размер 0 или зависает на/procи/sys. Эти виртуальные файловые системы не занимают место на диске. Запускайтеncduс флагом-x, чтобы исключить псевдо-ФС и сетевые шары из сканирования:sudo ncdu -x /.- После очистки место не освободилось. Файлы могут быть удалены, но остаются открытыми активными процессами. Перезагрузите систему или найдите "зомби"-процессы через
sudo lsof +L1и перезапустите соответствующие службы.