Apt get remove purge

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

В этой статье мы разберем как удалить deb пакет Ubuntu, при чем удалить чисто, так, чтобы после него не осталось следов в системе. Также поговорим о полном удалении PPA, поскольку много пакетов, которых нет в официальных репозиториях мы устанавливаем из PPA.

Как удалить пакет Ubuntu

Самый простой способ удалить пакет Ubuntu, это воспользоватся одной из графических утилит, поставляемых специально для этого, например Synaptic или Центр приложений Ubuntu. По сути это делается в пару кликов. Сначала рассмотрим порядок действий в Центре приложений Ubuntu.

Запустить центр приложений вы можете из панели значков Unity:

Список всех установленных пакетов находится на вкладке Установлено, здесь приложения рассортированы по категориям:

Чтобы удалить пакет Ubuntu, достаточно кликнуть по нему левой кнопкой мыши, и когда появляться доступные действия нажать кнопку Удалить:

Для завершения удаления нужно будет ввести пароль.

Пакет удален, но не совсем так, как нам хотелось бы. Но об этом позже.

Дальше рассмотрим пакетный менеджер Synaptic. Это как ни как стороннее программное обеспечение, но многие его используют из-за большого функционала и удобного интерфейса. Если программа еще не установлена, ее нужно установить с помощью центра приложений или выполнив в терминале:

sudo apt install synaptic

Запустить программу можно через терминал, выполнив команду:

Посмотреть установленные пакеты вы можете выбрав вкладку состояние, а затем выбрав Установленные:

Удалить deb ubuntu вы можете просто нажав правой кнопкой мыши и в контекстном меню на нужном пакете и выбрав отметить для удаления или отметить для полного удаления:

Программа покажет, какие еще пакеты будут удалены, это те пакеты, которые зависят от нашего пакета:

Теперь, чтобы завершить удаление, осталось нажать кнопку Применить:

Теперь программа покажет какие пакеты будут удалены. И пойдет процесс удаления:

Просто удаление и полное удаление отличается только тем, что при полном удалении удаляются конфигурационные файлы. Но проблема этих инструментов в том, что пакеты установленные как зависимости и рекомендованные к программе не удаляются и остаются в системе. Такое поведение наблюдается как в Synaptic, так и в Центре приложений Ubuntu. Поэтому мы переходим к описанию самого гибкого способа — удаление пакетов Ubuntu в терминале.

Читайте также:  База почт с паролями

Как удалить пакет Ubuntu в терминале

В новых версиях Ubuntu для управления пакетами, а в том числе и удаления можно использовать новый менеджер пакетов — apt. Команда удаления выглядит таким образом:

sudo apt remove имя_пакета

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

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

sudo apt-get remove имя_пакета

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

sudo apt-get purge имя_пакета

А чтобы, также удалить зависимости, установленные вместе с пакетом, нужно после одной из предыдущих команд выполнить:

sudo apt-get autoremove

Будут удаленны не только явно указанные зависимости, но и программы установленные как рекомендованные.

Ну с основами разобрались, теперь перейдем к более сложным ситуациям. Что если вы устанавливали программу из deb файла и теперь не знаете точно, как называется ее пакет, чтобы удалить?

Это очень просто узнать, например по исполняемому файлу, допустим исполняемый файл программы TimeShift находится по адресу /usr/bin/timeshift, теперь узнаем ее пакет:

sudo dpkg -S /usr/bin/timeshift

Как видите, пакет так и называется — timeshift. Теперь можно удалить программу Ubuntu, одним из выше описанных способов.

Очень часто мы устанавливаем недостающее нам программное обеспечение из PPA, но не все эти пакеты нужны нам на протяжении долгого времени, а при обновлении системы, могут даже вызвать ошибки. Так как же удалить все пакеты установленные из PPA? Для этого есть специальная утилита: ppa-purge.

Если она еще не установлена, устанавливаем командой:

sudo apt install ppa-purge

Теперь, чтобы удалить все пакеты установленные из определенного ppa используйте:

sudo ppa-purge -i ppa:ppaowner/ppaname

ppa:ppaowner/ppaname — обычно в таком формате записываются все PPA. Протокол:владелец/имя.

Узнать список репозиториев можно в программе источники приложений:

Такой командой можно одним махом удалить пакеты ubuntu, установленные из ppa:

find /etc/apt/sources.list.d -type f -name "*.list" -print0 |
while read -d $’’ file; do awk -F/ ‘/deb / && /ppa.launchpad.net/ ‘ "$file"; done

Читайте также:  Intel аудио драйвер для windows 10

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

Но все же способ есть, обычно, разработчики в файле сценариев makefile, кроме цели install реализуют цель uninstall, которая дозволяет выполнить обратное действие.

Поэтому если у вас осталась папка с исходным кодом той программы можно просто перейти в нее и выполнить make uninstall чтобы удалить приложение Ubuntu:

cd /папка/с/исходниками
$ sudo make uninstall

Выводы

В этой статье мы рассмотрели все, что поможет вам удалить приложение Ubuntu. При чем удалить полностью, а не только файлы программы. Если у вас остались вопросы, пишите в комментариях.

For uninstalling an app (or package) should I use apt-get remove package-name or apt-get purge package-name ?

What is advantage of any of them to other one?

3 Answers 3

If you have customized the package/software at all, either by editing the config files directly, or via a GUI, you may want to keep your customizations. Usually in Unix/Linux systems, configurations are saved in text files, even if the configuration/customization is done via the GUI.

Each Debian binary deb package has a list of files which it identifies as config files. dpkg , and thus apt honor this identification when removing packages, and also on upgrades. By default apt/dpkg will not remove config files on package removal. You have to request a purge. On upgrade it will ask you to choose between the current version and the new version (if they differ) before overwriting config files. Even in that case, it saves a copy of the original file. Here Debian is trying to help you, based on the assumption that your config files may contain valuable information.

So, if you have not configured the package, or you don’t want to keep your configurations, you can use apt-get purge .

If you do keep the config files, then if/when you reinstall the package, Debian will attempt to reuse the saved configuration information. If the version of the package you are trying to (re)install has config files that conflict with the configuration files that are already installed, it will again ask you before overwriting, as it does on upgrade.

Читайте также:  Lg jet cool gold

Minor comment: If you have removed the package and later want to remove the config files,it used to be the case that apt would not remove the config files if the package was not installed. However, for some years now, running apt-get purge will remove config files even if the package is no longer installed.

This was fixed in the 0.8.0

pre1 version of apt, released on Fri, 13 Aug 2010, or possibly in the 0.8.15

exp1 version of apt, released Fri, 10 Jun 2011. See Debian Bug Report: apt-get —purge does not work as expected, dated 24th June 2002.

Is there any difference between

I often see people recommend one or the other.

In other words, what does apt-get purge remove that apt-get remove doesn’t?

3 Answers 3

remove — remove is identical to install except that packages are removed instead of installed. Note that removing a package leaves its configuration files on the system. If a plus sign is appended to the package name (with no intervening space), the identified package will be installed instead of removed.

purge — purge is identical to remove except that packages are removed and purged (any configuration files are deleted too).

This of course, does not apply to packages that hold configuration files inside the user’s home folder (eg: /home/SexyNoJutsuUser ), this files will not be touched ( Why does "Purge" not remove everything related to an app? )

So for example, if you were to remove Chrome, Firefox, XBMC or any other that holds some configuration files inside your /home folder, this files will stay there.

On the other hand if you were to install apache, squid, mysql or any other services similar that save their files in /etc , this configuration files will be deleted if you use purge .