Введение / Зачем это нужно
При работе с менеджером пакетов APT в Debian, Ubuntu и производных системах со временем в системе накапливаются пакеты, которые были установлены автоматически как зависимости для других программ, но сами по себе больше не нужны. Это могут быть библиотеки, модули или утилиты.
Команда sudo apt autoremove — это безопасный и стандартный способ очистить систему от такого «мусора». Она анализирует зависимости и удаляет те пакеты, которые:
- Были установлены автоматически (не явно пользователем).
- Никакой из Currently installed (установленных в данный момент) пакетов не требует для своей работы.
Регулярное использование autoremove помогает:
- Освободить место на диске (особенно актуально для SSD).
- Упростить управление пакетами — сократить список в
apt list --installed. - Снизить риски безопасности — удалить код, который не используется и не обновляется.
- Поддерживать чистоту системы после удаления крупных приложений (например,
sudo apt remove firefoxоставит много зависимостей).
Требования / Подготовка
- Операционная система: Дистрибутив на базе Debian/Ubuntu (Debian, Ubuntu, Linux Mint, Kali, Pop!_OS и др.).
- Права доступа: Требуются права суперпользователя (root). Вы будете использовать
sudo. - Сеть: Не обязательна для самого
autoremove, но рекомендуется для последующегоapt cleanили если вы хотите предварительно обновить список пакетов (sudo apt update). - Резервная копия (опционально): На всякий случай, если вы удаляете пакеты с важными конфигурациями. Обычно для autoremove это не критично.
Пошаговая инструкция
Шаг 1: Предварительный просмотр (супер важно!)
Никогда не запускайте команды удаления без понимания, что будет удалено. Используйте симуляцию:
sudo apt autoremove --dry-run
Или короткий аналог:
sudo apt autoremove -s
Что вы увидите: В конце вывода будет блок, начинающийся со строки Следующие НОВЫЕ пакеты будут удалены:. В этом списке перечислены пакеты, которые apt планирует удалить. Внимательно его проверьте. Если в списке есть что-то, что вам знакомо и кажется важным (например, python3, libc6, openssl), остановитесь и разберитесь.
Шаг 2: Выполнение удаления
Если список в --dry-run вас устраивает (обычно это библиотеки libxxx, пакеты с именами вроде xxx-common или xxx-doc), запускайте реальное удаление:
sudo apt autoremove
APT покажет тот же список и спросит подтверждение:
Следующие НОВЫЕ пакеты будут удалены:
libfoo1 libbar2 baz-common
0 улучшено, 0 новых установлено, 3 для удаления и 0 не обновлено.
После этой операции будет освобождено 45,3 МБ дискового пространства.
Продолжить? [Y/n]
Нажмите Y (или Enter, т.к. Y по умолчанию), чтобы подтвердить.
Шаг 3: Очистка кэша пакетов (опционально, но рекомендуется)
После удаления пакетов их скачанные .deb-файлы всё ещё могут занимать место в кэше APT (/var/cache/apt/archives). Чтобы их удалить:
sudo apt clean
Эта команда удалит все файлы из кэша. Если вы хотите сохранить уже скачанные файлы для возможной переустановки без загрузки, используйте sudo apt autoclean (удалит только устаревшие файлы).
Шаг 4: Проверка результата
Вы можете убедиться, что место освободилось, двумя способами:
- Узнать размер, который был освобождён: В выводе
apt autoremoveбыла строкаПосле этой операции будет освобождено .... Запомните это значение. - Проверить текущее использование места: Используйте
df -hдля просмотра свободного места на разделе/илиdu -sh /var/cache/apt/archivesдо и послеapt clean.
Также проверьте, что пакеты удалились:
dpkg -l | grep -E "(libfoo|libbar|baz-common)"
(замените на имена пакетов из вашего списка). Команда ничего не должна вывести, если пакеты удалены.
Возможные проблемы
⚠️ Важно:
apt autoremoveможет запросить удаление пакета, который вы считаете системным (например,libc6илиsystemd). Это почти всегда ошибка или признак серьёзных проблем с зависимостями. Не подтверждайте такое удаление. В этом случае:
- Остановите процесс (нажмите
n).- Проверьте, почему пакет помечен как «автоматически установленный» и «не нужный». Возможно, какой-то установленный вами пакет некорректно объявил зависимости.
- Попробуйте исправить сломанные зависимости:
sudo apt --fix-broken install.- Если проблема не решается, поищите конкретный пакет в интернете или на bugs.debian.org / launchpad.net.
💡 Совет: Если вы сомневаетесь в конкретном пакете из списка, вы можете временно запретить его удаление, пометив как «вручную установленный»:
sudo apt-mark manual <имя_пакета>После этого
apt autoremoveего предложит не удалять.