Гид по технологиям

Как полностью удалить программу в Linux

• 6 min read • Linux • Обновлено 30 Nov 2025
Как полностью удалить программу в Linux
Как полностью удалить программу в Linux

Полное удаление программы в Linux — превью

Linux не имеет «реестра», подобного Windows. Это преимущество: нет единой чувствительной базы данных, которую надо постоянно поддерживать. Недостаток в том, что удаление программ иногда оставляет разрозненные файлы — особенно если приложение не предоставляет корректного деинсталлятора. Многие пакеты устанавливаются через менеджер пакетов и удаляются им же, но некоторые программы требуют ручной зачистки остаточных файлов.

В этой статье показаны безопасные и удобные методы полного удаления программ в разных сценариях: через графические и консольные менеджеры пакетов, через универсальные форматы (snap, flatpak, AppImage), а также как найти и удалить оставшиеся файлы и служебные единицы.

Основные понятия

  • Менеджер пакетов — программа, которая устанавливает, обновляет и удаляет пакеты (apt, yum, dnf, pacman, snap, flatpak, zypper и т. д.).
  • Пакет — архив с файлом(ами), метаданными и скриптами установки.
  • Пурж (purge) — полное удаление пакета вместе с его конфигурацией в системе.

Удаление через графический менеджер пакетов (Synaptic)

Synaptic — графический менеджер пакетов для дистрибутивов на базе Debian/Ubuntu. Он предоставляет расширенные возможности удаления.

Установите Synaptic (если ещё не установлен):

sudo apt-get update
sudo apt-get install synaptic

Запустите Synaptic, найдите пакет. Установленные пакеты отмечены зелёной меткой. Чтобы полностью удалить пакет, нажмите правой кнопкой по пакету и выберите «Mark for Complete Removal» (Пометить для полного удаления). Затем нажмите «Apply» или Ctrl+P для применения изменений.

Synaptic: пометка для полного удаления пакета

Synaptic: подтверждение применения действий

Важно: Synaptic управляет пакетами APT, поэтому этот метод применим к системам Debian/Ubuntu и их производным.

Удаление через apt/apt-get (Debian/Ubuntu)

Если вы устанавливали через apt или apt-get, удаляйте тем же инструментом. Для полного удаления пакета вместе с его системными конфигами используйте:

sudo apt-get purge package-name

Замените package-name на имя пакета. После удаления можно очистить автоматически установленные, но больше не нужные зависимости:

sudo apt-get autoremove
sudo apt-get autoclean

Пояснения:

  • purge удаляет файлы конфигурации из /etc и метаданные, связанные с пакетом в системе.
  • autoremove удалит зависимости, которые стали орфанными.
  • autoclean удалит локальные кеши пакетов.

При сомнениях сначала выполните apt-get -s purge package-name (симуляция) или apt list --installed | grep package-name для проверки.

apt-get purge — пример удаления

Удаление через yum/dnf (Red Hat, CentOS, Fedora)

В системах на базе RHEL/CentOS/Fedora используйте yum или dnf:

sudo yum remove package-name

или с dnf:

sudo dnf remove package-name

Для удаления нескольких пакетов перечислите их через пробел:

sudo yum remove wireshark tmux unzip

Если вы устанавливали группы пакетов, удаляйте группу так:

sudo yum groupremove "Group Name"

(в dnf аналогично dnf groupremove). Кавычки важны, если в имени группы есть пробелы.

yum: удаление пакета и зависимостей

Snap, Flatpak и AppImage

Современные дистрибутивы часто используют универсальные форматы, которые не управляются apt/yum.

  • Snap
sudo snap remove package-name
snap list

Snap хранит данные в ~/snap и в /var/snap — удаляйте эти каталоги вручную, если хотите удалить и пользовательские данные.

  • Flatpak
flatpak uninstall --user package-name
flatpak uninstall --system package-name
flatpak uninstall --unused

Flatpak хранит данные в ~/.var/app и в /var/lib/flatpak.

  • AppImage

AppImage — автономный исполняемый файл. Чтобы «удалить» AppImage, просто удалите сам .AppImage-файл и соответствующие конфиги в ~/.config или ~/.local.

Программы, установленные из исходников (make, cmake)

Если вы устанавливали из исходников через ./configure && make && sudo make install, часто есть цель uninstall:

cd source-dir
sudo make uninstall

Но не все модули поддерживают make uninstall. В таких случаях нужно вручную удалить установленные файлы по списку, который можно получить командой make -n install (симуляция) при сборке или смотреть в INSTALL/README.

Ручная зачистка пользовательских и системных файлов

После стандартного удаления большинства программ остаются пользовательские настройки и кэш. Проверьте и при необходимости удалите следующие места:

  • Домашняя папка пользователя: ~/, включая скрытые каталоги (начинаются с .)
  • ~/.config — конфигурация приложений
  • ~/.local/share — пользовательские данные приложений
  • ~/.cache — кэши
  • ~/.thumbnails — эскизы изображений
  • /usr/bin, /usr/sbin — бинарные файлы
  • /usr/lib, /usr/lib64, /usr/local/lib — библиотеки
  • /usr/local/bin — локальные бинарные файлы
  • /opt — сторонние приложения
  • /etc — системные конфиги
  • /var — логи и временные данные
  • /run — временные сокеты и PID-файлы

Примеры команд поиска по имени пакета (быстро и осторожно):

# поиск по имени файла/папки в корневой файловой системе (может быть долго)
sudo find / -iname '*package-name*' 2>/dev/null

# быстрый поиск в домашней папке
find ~ -iname '*package-name*'

# поиск по содержимому конфигураций
grep -R "package-name" /etc 2>/dev/null

Помните: удаляйте файлы вручную только если вы уверены в их принадлежности пакету. Некорректное удаление системных файлов может нарушить работу системы.

Папки локальных данных пользователя в Linux

Проверка системных сервисов и автозагрузки

Некоторые пакеты оставляют системные службы systemd или записи автозагрузки.

Проверьте сервисы:

systemctl list-unit-files | grep enabled | grep package-name
systemctl status package-service-name.service
sudo systemctl disable package-service-name.service
sudo systemctl stop package-service-name.service
sudo rm /etc/systemd/system/package-service-name.service
sudo systemctl daemon-reload

Проверьте cron, anacrontab и /etc/init.d:

crontab -l
sudo ls /etc/cron* | grep package-name
sudo ls /etc/init.d | grep package-name

Удаление файлов баз данных и логов

Некоторые приложения создают базы данных и логи в /var/lib, /var/log или в пользовательских каталогах. Поиск и удаление:

sudo find /var -iname '*package-name*' 2>/dev/null
sudo rm -rf /var/lib/package-name
sudo rm -rf /var/log/package-name*

Автоматизация поиска остатков: примеры скриптов

Небольшой пример-скрипт для поиска возможных остатков по паттерну имени пакета в пользовательском профиле и системных каталогах (выполнять с осторожностью):

#!/bin/bash
PACKAGE="$1"
if [ -z "$PACKAGE" ]; then
  echo "Usage: $0 package-name"
  exit 1
fi

echo "Поиск в домашней папке..."
find ~ -iname "*${PACKAGE}*"

echo "Поиск в /etc, /var и /opt (требуется sudo)..."
sudo find /etc /var /opt -iname "*${PACKAGE}*" 2>/dev/null

echo "Готово. Проверьте результаты перед удалением."

Используйте скрипт только для обнаружения; не удаляйте ничего автоматически без проверки.

Когда стандартное удаление не сработает — обходные пути

  • Пакет не найден в менеджере пакетов: возможно, он был установлен вручную (AppImage, make install, pip, gem). Используйте which binname, whereis, dpkg -L package-name или rpm -ql package-name для поиска файлов.
  • Конфиги остались в /etc или в домашней папке: удалите вручную после резервного копирования.
  • Служба не останавливается: отключите unit, проверьте зависимости systemd и рестартующие скрипты.
  • Удаление ломает другие пакеты: остановитесь, проверьте, какие пакеты помечаются к удалению вместе с целевым пакетом, и используйте симуляцию (apt-get -s).

Практическая методика: пошаговый план (мини-методология)

  1. Определите, каким способом была установлена программа (apt, yum, snap, flatpak, AppImage, make). Команды: dpkg -l | grep package, rpm -q package, snap list, flatpak list.
  2. Удалите пакетом соответствующим менеджером (purge/remove/uninstall).
  3. Откатите фоновые службы и остановите запущенные процессы.
  4. Очистите орфанные зависимости (autoremove, dnf autoremove, flatpak uninstall --unused).
  5. Поиск остатков в /etc, /var, /opt и в домашней папке; удалите после проверки.
  6. Проверьте журналы и базы данных.
  7. Перезагрузите систему при необходимости.

Роль-ориентированные чеклисты

Для Desktop-пользователя:

  • Удалить через GUI или apt/snap/flatpak.
  • Удалить ~/.config и ~/.local/share для данного приложения.
  • Проверить автозапуск в настройках окружения рабочего стола.

Для системного администратора:

  • Выполнить apt-get -s purge/yum remove --assumeno для симуляции.
  • Проверить зависимости и обратную совместимость.
  • Отключить systemd-сервисы и удалить unit-файлы.
  • Сделать резервные копии конфигов перед удалением.

Критерии приёмки

  • Приложение больше не запускается из меню или по имени команды.
  • Нет файлов и директорий, явно связанных с пакетом в /usr, /opt, /etc, /var и в домашней папке.
  • Службы, связанные с пакетом, отключены и не запущены.
  • Система не сообщила об удалении необходимых зависимостей других критичных пакетов.

Когда не удалять всё подряд — предупреждения

Важно не удалять системные библиотеки и общие ресурсы, которые могут использовать другие программы. Если autoremove пытается удалить пакеты, которые вы не ожидали, выполните симуляцию и проанализируйте список.

Важно также сделать резервную копию важных конфигов (например, в /etc) перед их удалением.

Короткий глоссарий

  • purge — полная очистка пакета вместе с конфигурацией в системе.
  • autoremove — удаление орфанных зависимостей.
  • AppImage — автономный исполняемый файл приложения.
  • snap/flatpak — контейнированные универсальные форматы приложений.

Итог

Лучший способ полностью удалить приложение — использовать тот же менеджер пакетов, которым вы его устанавливали. После удаления обязательно проверьте домашнюю папку и системные каталоги на остаточные конфиги и данные. Для продвинутых случаев — ищите systemd-юниты, базы данных и логи, а также используйте симуляции удаления перед фактическим удалением системных компонентов.

Важно: всегда проверяйте найденные файлы вручную и создавайте резервные копии конфигураций перед удалением.

Полезные команды для быстрой проверки состояния:

# проверить, откуда взят исполняемый файл
which program-name

# найти все файлы, связанные с пакетом в dpkg
dpkg -L package-name

# симуляция удаления
sudo apt-get -s purge package-name

Примечание: этот материал ориентирован на типичные сценарии удаления в популярных дистрибутивах; в специфических корпоративных установках процедуры могут отличаться.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро