Быстрая очистка диска в Linux: apt-get autoremove и clean

Вы начали использовать Linux и установили массу полезных приложений. Через какое‑то время раздел диска может быстро заполниться: оставшиеся после удаления пакетов зависимости, закешированные файлы установщиков и старые ядра занимают гигабайты.
Что делают эти команды
sudo apt-get autoremove- Удаляет пакеты‑«зависимости», которые были установлены автоматически и больше не нужны ни одному установленному пакету. Это безопасная операция в большинстве случаев — пакетный менеджер знает, какие пакеты отмечены как автоматически установленные.
sudo apt-get clean- Удаляет локальный кеш .deb‑файлов, которые apt загружал при установке. Это безопасно: при повторной установке нужный пакет будет заново скачан.
Важно: эти команды относятся к системам, использующим apt/apt-get (Debian, Ubuntu и производные). Для других менеджеров пакетов команды отличаются.
Как безопасно применять (пошагово)
- Проверьте текущее состояние диска:
df -h- Посмотрите, сколько места занимают каталоги (опционально):
sudo du -sh /* 2>/dev/null | sort -h- Удалите неиспользуемые зависимости:
sudo apt-get autoremove- Очистите кеш загруженных пакетов:
sudo apt-get clean- (Опционально) Удалите старые ядра и пакеты с конфигурациями:
sudo apt-get --purge autoremove
sudo apt-get purge linux-image-VERSION-here- Проверьте результат:
df -hПример: посмотреть, какие пакеты будут удалены
sudo apt-get -s autoremoveКлюч -s (simulate) показывает действия без их выполнения.
Полезные дополнительные команды
- Освободить кеш частично:
sudo apt autocleanautoclean удаляет только старые кеши, которые больше не нужны.
- Очистка системных журналов (журналы systemd):
sudo journalctl --vacuum-size=100M
sudo journalctl --vacuum-time=2weeks- Быстрая интерактивная проверка использования диска:
sudo apt install ncdu # если нужно установить ncdu однажды
sudo ncdu / # интерактивный анализ диска- Найти и удалить большие файлы (>100 МБ):
find / -type f -size +100M -exec ls -lh {} \; 2>/dev/nullКогда autoremove/clean не помогут (когда это не сработает)
- Проблема в логах (journald) — тогда нужно уменьшать размер журналов.
- Большие пользовательские данные (видео, виртуальные машины, базы данных) — нужно чистить вручную или перемещать на другой диск.
- /var/lib/docker может содержать много данных — для Docker нужны отдельные команды очистки (docker system prune).
Альтернативные менеджеры пакетов (аналогичные команды)
- DNF (Fedora, RHEL): sudo dnf autoremove, sudo dnf clean all
- Yum (старые RHEL/CentOS): sudo yum autoremove, sudo yum clean all
- Pacman (Arch): sudo pacman -Rns $(pacman -Qtdq) для «orphan» пакетов; sudo pacman -Sc для кеша
- Zypper (openSUSE): sudo zypper packages –unneeded и sudo zypper clean –all
Быстрый чек-лист по ролям
Новичок:
- Запустить df -h
- sudo apt-get autoremove
- sudo apt-get clean
- Перезапустить компьютер при необходимости
Обычный пользователь (рабочая станция):
- Проверить ~/.cache и очистить браузерный кеш
- Перенести крупные медиа на внешний диск
- Использовать ncdu для поиска пожирателей места
Системный администратор:
- Поставить плановые задания для очистки журналов
- Мониторить /var/log, /var/lib/docker, /srv, /home
- Автоматизировать ротацию и удаление старых ядер
Чек-лист команд (cheat sheet)
- Освободить место (базово):
sudo apt-get autoremove
sudo apt-get clean- Протестировать без выполнения:
sudo apt-get -s autoremove- Еще: очистка логов and кеша:
sudo journalctl --vacuum-size=200M
sudo apt autocleanКритерии приёмки
- Свободное пространство на нужном разделе увеличилось по df -h.
- Нет критических ошибок в выводе autoremove/clean.
- Установленные необходимые пакеты работают корректно после очистки.
Примечание: если удалённый пакет неожиданно нужен, его можно переустановить: sudo apt-get install
.
Решение для сложных случаев — простая методика
- Посчитать текущее свободное место (df -h).
- Найти крупные директории (ncdu или du).
- Очистить кеши (apt-get clean, apt autoclean).
- Удалить неиспользуемые зависимости (apt-get autoremove).
- Освободить место в логах (journalctl или ротация).
- При необходимости удалить старые ядра.
flowchart TD
A[Проблема: мало места] --> B{Что занимает место?}
B --> |Кеш пакетов| C[apt-get clean / apt autoclean]
B --> |Неиспользуемые зависимости| D[apt-get autoremove]
B --> |Логи| E[journalctl --vacuum-size]
B --> |Docker/VM| F[docker system prune / удалить образы]
F --> G[Проверить после очистки]
C --> G
D --> G
E --> G
G --> H[df -h — подтвердить результат]Короткий глоссарий (1 строка каждое)
- Зависимость: пакет, требуемый другим пакетом для работы.
- Кеш пакетов: локальные .deb‑файлы, скачанные при установке.
- Orphan (осиротевший пакет): автоматическая зависимость, больше не связанная с установленными пакетами.
- Ядро (kernel): основное программное обеспечение ОС: старые версии можно удалить.
Когда стоит быть осторожным
- Перед удалением ядер убедитесь, что у вас осталось как минимум одно рабочее ядро.
- Не удаляйте пакеты вручную без понимания, почему они были помечены как установленные вручную.
- На серверах сначала тестируйте в стейджинге, особенно если в системе есть критичные сервисы.
Резюме
sudo apt-get autoremove и sudo apt-get clean — быстрый и безопасный способ вернуть место на диске в системах на базе Debian/Ubuntu. Если места всё ещё мало, проверьте логи, Docker, пользовательские файлы и старые ядра. Всегда сначала смотрите df -h и используйте симуляцию (-s) для проверки, прежде чем выполнять удаление.
Image Credit: Linux on a Laptop by fatmawati achmad zaenuri via Shutterstock
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента