Should I use "apt-get remove" or "apt-get purge"?
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.
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.
From the man page of apt-get
:
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).
I would tend to use purge
if you tend to not want to keep any configuration files around.
purge remove configuration files
of your packages, but remove keep configuration files
of your package.
But advantages or disadvantages: It's related to your system, your packages, your machine, install it or not, and so on.