Подробный гайд по sudo apt purge в Astra Linux
Ниже — подробный практический гайд по команде sudo apt purge:
sudo apt purge имя_пакета
в Astra Linux. Команда используется для полного удаления пакета вместе с его системными конфигурационными файлами. Astra Linux основана на Debian, поэтому поведение apt в целом такое же, как в Debian, но есть особенности, связанные с правами администратора, политиками безопасности и важностью системных пакетов.
1. Что делает sudo apt purge имя_пакета
Команда:
sudo apt purge имя_пакета
удаляет установленный пакет и его системные конфигурационные файлы, которые помечены как conffiles.
Пример:
sudo apt purge htop
удалит пакет htop и его системные конфигурационные файлы, если они были.
2. Чем purge отличается от remove
В apt есть два основных способа удаления:
sudo apt remove имя_пакета
и
sudo apt purge имя_пакета
Разница:
| Команда | Удаляет файлы программы | Удаляет системные конфигурационные файлы | Удаляет пользовательские данные |
|---|---|---|---|
apt remove |
Да | Обычно нет | Нет |
apt purge |
Да | Да | Обычно нет |
То есть:
sudo apt remove nginx
удалит сам nginx, но может оставить конфигурации в /etc/nginx.
А:
sudo apt purge nginx
удалит пакет и постарается удалить его системные конфигурационные файлы.
Важно понимать: purge обычно не удаляет:
- файлы пользователей в
/home; - базы данных в
/var/lib, если пакет сам не предусмотрел их удаление; - созданные вручную файлы;
- пользовательские настройки в домашнем каталоге;
- данные, созданные после установки пакета, если они не являются стандартными
conffiles.
Пример:
sudo apt purge mysql-server
может удалить конфигурации MySQL, но базы данных в /var/lib/mysql часто остаются, если администратор не удалил их вручную.
3. Как получить права администратора в Astra Linux
В Astra Linux команды удаления пакетов требуют прав суперпользователя.
Обычно используют:
sudo команда
Например:
sudo apt purge htop
Если в вашей системе sudo настроен, этого достаточно.
Если sudo не работает или не установлен, можно выполнить команду через su:
su -
Затем ввести пароль root и выполнить:
apt purge htop
Или одной командой:
su -c "apt purge htop"
В некоторых конфигурациях Astra Linux может использоваться doas:
doas apt purge htop
Но классический вариант для Debian-систем:
sudo apt purge имя_пакета
или:
su -
apt purge имя_пакета
4. Подготовка перед удалением пакета
Перед удалением пакета желательно проверить несколько вещей.
4.1. Проверить, установлен ли пакет
Сначала проверим, установлен ли пакет:
dpkg -l | grep имя_пакета
Пример:
dpkg -l | grep htop
Если пакет установлен, вывод будет примерно таким:
ii htop 3.0.5-7 amd64 interactive processes viewer
Первые буквы важны:
| Статус | Значение |
|---|---|
ii |
Пакет установлен |
rc |
Пакет удалён, но остались конфигурационные файлы |
un |
Пакет не установлен |
hi |
Пакет установлен и зафиксирован от обновления |
4.2. Посмотреть информацию о пакете
Полезно посмотреть, что это за пакет:
apt show имя_пакета
Пример:
apt show htop
Можно также посмотреть через:
dpkg -s имя_пакета
Пример:
dpkg -s htop
4.3. Посмотреть файлы пакета
Чтобы понять, какие файлы принадлежат пакету, выполните:
dpkg -L имя_пакета
Пример:
dpkg -L htop
Это покажет список файлов, установленных пакетом.
4.4. Проверить зависимости и обратные зависимости
Перед удалением важно понять, какие пакеты зависят от удаляемого.
Проверить зависимости пакета:
apt-cache depends имя_пакета
Пример:
apt-cache depends nginx
Проверить, какие пакеты зависят от этого пакета:
apt-cache rdepends имя_пакета
Пример:
apt-cache rdepends libssl3
Это особенно важно, если вы хотите удалить библиотеку, системный компонент или пакет рабочего окружения.
5. Безопасная проверка перед удалением
Перед реальным удалением очень полезно выполнить команду с ключом -s или --dry-run. Это режим симуляции: система покажет, что будет сделано, но ничего не удалит.
sudo apt -s purge имя_пакета
Пример:
sudo apt -s purge htop
Или:
sudo apt --dry-run purge htop
Внимательно посмотрите список пакетов, которые будут удалены. Если в списке есть только нужный пакет — всё нормально.
Если вместе с ним система хочет удалить много других пакетов, например:
fly-wm
astra-desktop
xorg
linux-image
parsec
или другие важные системные компоненты — лучше остановиться и разобраться.
6. Простое удаление пакета через purge
Основная команда:
sudo apt purge имя_пакета
Пример:
sudo apt purge htop
Система спросит подтверждение. Обычно нужно ввести:
Y
или:
Д
в зависимости от локали.
Если хотите удалить без запроса подтверждения, используйте -y:
sudo apt purge -y имя_пакета
Пример:
sudo apt purge -y htop
Будьте осторожны с -y, потому что команда автоматически согласится на удаление всех зависимостей, которые apt сочтёт нужными удалить.
7. Удаление пакета вместе с ненужными зависимостями
После удаления пакета часто остаются зависимости, которые были установлены автоматически и больше не нужны.
Чтобы удалить их, используйте:
sudo apt autoremove --purge
Полный безопасный вариант:
sudo apt purge имя_пакета
sudo apt autoremove --purge
Пример:
sudo apt purge nginx
sudo apt autoremove --purge
Или одной строкой:
sudo apt purge -y имя_пакета && sudo apt autoremove --purge -y
Пример:
sudo apt purge -y nginx && sudo apt autoremove --purge -y
8. Что делает autoremove --purge
Команда:
sudo apt autoremove
удаляет пакеты, которые были установлены автоматически как зависимости, но больше не нужны.
Флаг --purge добавляет удаление конфигурационных файлов этих пакетов:
sudo apt autoremove --purge
Пример:
sudo apt autoremove --purge
Это удобно после удаления крупных программ, серверов, библиотек, окружений разработки и т.д.
9. Удаление нескольких пакетов сразу
Можно удалить несколько пакетов одной командой:
sudo apt purge пакет1 пакет2 пакет3
Пример:
sudo apt purge htop mc nano
Или:
sudo apt purge -y htop mc nano
После этого также полезно выполнить:
sudo apt autoremove --purge
10. Удаление пакета по маске
Иногда нужно удалить группу пакетов по части имени.
Например, найти все установленные пакеты, содержащие libreoffice:
dpkg -l | grep libreoffice
Затем можно удалить их через apt:
sudo apt purge libreoffice*
Но будьте осторожны: символ * в оболочке может раскрыться неожиданно.
Лучше сначала посмотреть, что подходит под маску:
apt list --installed | grep libreoffice
Более безопасный вариант удаления по маске:
sudo apt purge $(apt list --installed | grep libreoffice | cut -d'/' -f1)
Однако перед выполнением такой команды обязательно проверьте список вручную.
11. Удаление остатков конфигураций после remove
Если пакет ранее был удалён командой:
sudo apt remove имя_пакета
но конфигурации остались, в dpkg -l такой пакет может отображаться со статусом rc.
Проверить такие пакеты:
dpkg -l | grep '^rc'
Пример вывода:
rc htop 3.0.5-7 amd64 interactive processes viewer
Это означает:
r— пакет удалён;c— остались конфигурационные файлы.
Удалить остатки конфигураций можно так:
sudo apt purge имя_пакета
Пример:
sudo apt purge htop
Или удалить все пакеты в состоянии rc:
sudo dpkg --purge $(dpkg -l | awk '/^rc/ {print $2}')
Более осторожный вариант — сначала посмотреть список:
dpkg -l | awk '/^rc/ {print $2}'
И только затем удалить:
sudo dpkg --purge $(dpkg -l | awk '/^rc/ {print $2}')
12. Пример полного удаления пакета в Astra Linux
Допустим, нужно полностью удалить пакет htop.
Шаг 1. Проверяем, установлен ли пакет:
dpkg -l | grep htop
Шаг 2. Смотрим, какие файлы будут затронуты:
dpkg -L htop
Шаг 3. Выполняем пробное удаление:
sudo apt -s purge htop
Шаг 4. Если всё нормально, удаляем:
sudo apt purge htop
Шаг 5. Удаляем ненужные зависимости и конфигурации:
sudo apt autoremove --purge
Шаг 6. Проверяем, что пакет исчез:
dpkg -l | grep htop
Если вывод пустой или пакет имеет статус un, значит пакет удалён.
13. Удаление серверного пакета: пример с nginx
Если нужно удалить веб-сервер nginx вместе с конфигурациями:
sudo apt purge nginx
Если хотите удалить также связанные компоненты:
sudo apt purge nginx nginx-common nginx-core
Имена могут отличаться в зависимости от версии Astra Linux и репозитория.
Лучше сначала посмотреть установленные пакеты:
dpkg -l | grep nginx
Затем удалить:
sudo apt purge nginx nginx-common
sudo apt autoremove --purge
Если нужно вручную удалить остатки данных:
sudo rm -rf /etc/nginx
sudo rm -rf /var/log/nginx
sudo rm -rf /var/www/html
Но удаляйте такие каталоги только если точно понимаете, что они вам больше не нужны.
14. Удаление пакета с зависимостями
Иногда пакет нельзя удалить отдельно, потому что от него зависят другие установленные пакеты.
Например:
sudo apt purge libexample1
А apt сообщает, что от этой библиотеки зависят другие программы. В этом случае apt может предложить удалить и зависимые пакеты.
Всегда смотрите вывод:
Следующие пакеты будут УДАЛЕНЫ:
libexample1
program1
program2
- Если это ожидаемо — можно продолжить.
- Если там оказываются важные компоненты Astra Linux, лучше не продолжать.
Проверить зависимости заранее:
apt-cache rdepends libexample1
Или:
apt-cache showpkg libexample1
15. Удаление графического окружения или важных компонентов Astra Linux
В Astra Linux могут быть установлены важные пакеты, например связанные с:
- графической средой;
- дисплейным менеджером;
- ядром;
- системой безопасности;
- Parsec;
- службами аутентификации;
- пакетной базой Astra;
- рабочим столом;
- сетевыми службами.
Не рекомендуется удалять такие пакеты без точного понимания последствий. Например, удаление пакетов рабочего окружения может привести к тому, что графический сеанс перестанет запускаться.
Перед удалением чего-либо похожего на:
fly-*
astra-*
xserver-*
linux-image-*
parsec*
обязательно выполняйте:
sudo apt -s purge имя_пакета
и внимательно читайте список.
16. Если после удаления сломались зависимости
Если вы удалили пакет и система сообщает о сломанных зависимостях, попробуйте:
sudo apt --fix-broken install
или:
sudo apt-get -f install
Также можно выполнить:
sudo dpkg --configure -a
Если ошибки связаны с конкретным пакетом, можно посмотреть его состояние:
dpkg -s имя_пакета
Иногда помогает переустановка:
sudo apt install --reinstall имя_пакета
17. Где смотреть историю удаления пакетов
В Astra Linux, как и в Debian, история действий apt обычно хранится в:
/var/log/apt/history.log
Посмотреть:
sudo less /var/log/apt/history.log
Или конец файла:
sudo tail -n 50 /var/log/apt/history.log
Также полезен журнал dpkg:
sudo less /var/log/dpkg.log
Там можно найти строки вида:
remove имя_пакета
purge имя_пакета
18. Как вернуть удалённый пакет
Если вы случайно удалили пакет, его обычно можно установить заново:
sudo apt install имя_пакета
Пример:
sudo apt install htop
Если перед этим нужно обновить список пакетов:
sudo apt update
Затем:
sudo apt install htop
Важно:
Если вы сделали purge, старые системные конфигурационные файлы могут быть удалены. При повторной установке пакет может создать новые стандартные конфигурации.
19. Резервное копирование конфигураций перед purge
Если вы удаляете серверный пакет и не уверены, нужны ли его настройки, сначала сделайте резервную копию.
Например, для nginx:
sudo cp -a /etc/nginx /root/nginx-config-backup
Для apache2:
sudo cp -a /etc/apache2 /root/apache2-config-backup
Для SSH:
sudo cp -a /etc/ssh /root/ssh-config-backup
Для общей копии /etc:
sudo cp -a /etc /root/etc-backup-$(date +%F)
После этого можно выполнять:
sudo apt purge имя_пакета
20. Разница между apt purge и apt-get purge
В Astra Linux работают оба варианта:
sudo apt purge имя_пакета
и
sudo apt-get purge имя_пакета
Например:
sudo apt-get purge htop
Разница в том, что:
apt— более современный и удобный интерфейс;apt-get— классическая команда, удобна для скриптов.
Для ручного удаления можно использовать:
sudo apt purge htop
Для скриптов чаще используют:
sudo apt-get purge -y htop
21. Полезные команды
Проверить установленные пакеты:
apt list --installed
Найти пакет:
apt list --installed | grep имя_пакета
Поиск пакета в репозитории:
apt search имя
Например:
apt search editor
Информация о пакете:
apt show имя_пакета
Проверить файлы установленного пакета:
dpkg -L имя_пакета
Проверить статус пакета:
dpkg -s имя_пакета
Посмотреть, что будет удалено:
sudo apt -s purge имя_пакета
Удалить пакет:
sudo apt purge имя_пакета
Удалить пакет без подтверждения:
sudo apt purge -y имя_пакета
Удалить пакет и ненужные зависимости:
sudo apt purge имя_пакета
sudo apt autoremove --purge
Удалить пакет и зависимости одной командой:
sudo apt purge -y имя_пакета && sudo apt autoremove --purge -y
Найти остатки конфигураций:
dpkg -l | grep '^rc'
Удалить остатки конфигураций конкретного пакета:
sudo apt purge имя_пакета
22. Типичные ошибки и предупреждения
Ошибка: sudo: command not found или sudo: команда не найдена
Возможно, sudo не установлен или вы работаете в системе, где используется только root.
Используйте:
su -
Затем:
apt purge имя_пакета
Или:
su -c "apt purge имя_пакета"
Ошибка: E: Пакет имя_пакета не найден
Такое бывает, если вы пытаетесь удалить пакет, которого нет в системе, или неправильно указали имя.
Проверьте:
dpkg -l | grep имя_пакета
Или:
apt list --installed | grep имя_пакета
Ошибка: пакет не удаляется из-за зависимостей
Смотрите, что зависит от пакета:
apt-cache rdepends имя_пакета
И выполняйте пробное удаление:
sudo apt -s purge имя_пакета
Если apt предлагает удалить много лишнего, не спешите.
После удаления пропала графическая среда
Если вы удалили пакеты рабочего стола или важные системные компоненты, попробуйте восстановить:
sudo apt update
sudo apt --fix-broken install
Затем можно переустановить графическое окружение или метапакет Astra Linux, если вы знаете его имя в вашей версии.
Если не знаете, что именно удалили, смотрите:
sudo less /var/log/apt/history.log
sudo less /var/log/dpkg.log
После purge остались файлы в /etc, /var/lib или /opt
Иногда пакет оставляет каталоги с данными или файлы, созданные вручную.
Найти файлы пакета можно было до удаления:
dpkg -L имя_пакета
После удаления остатки ищут вручную, например:
sudo find /etc -name "*имя_пакета*"
sudo find /var -name "*имя_пакета*"
sudo find /opt -name "*имя_пакета*"
Удаляйте найденные файлы только если уверены, что они относятся именно к удалённому пакету.
23. Рекомендуемый безопасный порядок действий
Для большинства случаев в Astra Linux оптимальный порядок такой:
dpkg -l | grep имя_пакета
apt show имя_пакета
apt-cache rdepends имя_пакета
sudo apt -s purge имя_пакета
sudo apt purge имя_пакета
sudo apt autoremove --purge
dpkg -l | grep имя_пакета
Пример для пакета htop:
dpkg -l | grep htop
apt show htop
apt-cache rdepends htop
sudo apt -s purge htop
sudo apt purge htop
sudo apt autoremove --purge
dpkg -l | grep htop
24. Краткая шпаргалка
Удалить пакет с конфигурациями:
sudo apt purge имя_пакета
Удалить пакет без вопроса:
sudo apt purge -y имя_пакета
Удалить пакет и ненужные зависимости:
sudo apt purge имя_пакета
sudo apt autoremove --purge
Проверить, что будет удалено:
sudo apt -s purge имя_пакета
Посмотреть установленный пакет:
dpkg -l | grep имя_пакета
Найти остатки конфигураций:
dpkg -l | grep '^rc'
Посмотреть историю удаления:
sudo less /var/log/apt/history.log
25. Итог
Команда:
sudo apt purge имя_пакета
в Astra Linux используется для полного удаления пакета вместе с его системными конфигурационными файлами.
Безопасный вариант использования:
sudo apt -s purge имя_пакета
sudo apt purge имя_пакета
sudo apt autoremove --purge
Перед удалением важных пакетов всегда проверяйте список удаляемых зависимостей:
sudo apt -s purge имя_пакета
И не удаляйте пакеты, связанные с графической средой, ядром, безопасностью и системными службами Astra Linux, если не уверены в результате.
Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.