TranslateProject/sources/tech/20221123.0 ⭐️⭐️ apt remove vs apt purge What’s the Difference.md

5.6 KiB
Raw Blame History

apt remove vs apt purge: Whats the Difference?

To uninstall an application in the Ubuntu terminal, you can use:

sudo apt remove package_name

But in various forums, you may come across the suggestion to use the apt purge command for removing applications completely.

This leaves you confused because using apt purge is quite similar to apt remove:

sudo apt purge package_name

So, why are there two similar commands for removing packages? Whats the difference between the two? Let me explain it to you with a few examples.

Whats the difference between apt-remove and apt-purge?

Both apt-remove and apt-purge do the same thing and that is to uninstall a package. The apt-purge removes the package and purges any configuration files associated with it. Thats the only difference between the two. Neither command touches the application files under the home directory of the user.

Have you ever removed an application and installed it again, only to notice that all your settings are in place? Its because the apt remove command doesnt remove the configuration files.

See whats being removed and what remains

Let me share a practical example of removing the mplayer application using both apt remove and apt purge commands. The focus is on seeing what files remain after each operation.

Here are the files associated with mplayer before removal.

mplayer before removal

Now, if I run the apt remove command.

apt uninstall package ubuntu

Here are the files that remain in the system:

files after mplayer removal

As you can see, there are mplayer files remaining in two locations: /etc and /home/abhishek.

Now, if I install mplayer again and use apt purge to remove mplayer application this time.

apt purge command

Lets look for files associated mplayer now.

files after mplayer removal

As you can see, the files from /etc directory no longer exists.

But what about the files in the home directory? Should apt purge not remove it?

The answer is negative. The apt commands do not touch the configuration files located under the home directory. They remain in the system unless you manually remove them. Those files are really small in size and hardly take disk space.

Do note that not all applications create configuration files under /etc or home directory.

The effect of using apt remove or apt purge

A practical example I can think of is Discord. You install Discord on Ubuntu with deb file. Start using it by logging into your account. Remove discord and install it again using deb file.

Now if you start Discord, youll notice that you are already logged into your account. Surprising, no?

But this is a feature because some applications like Discord, VirtualBox provide you updates similarly. You remove the current version and install the newer one (even if you dont see this process). Since the application configuration files are not touched, you are logged back in without additional effort.

The apt remove command gives you the option to reuse an application with similar configuration that you used in the past.

However, you may not always want it. If you configured an application in a bad way and want to start from scratch, the apt purge command is the way to go forward.

Does apt purge perform a wild-card removal?

When you purge a package, youll notice that it mentions removing package-name*. This indicates that it will remove all the packages with names starting from package-name.

apt purge wild card

I didnt find a definite answer on this point in the documentation (i.e. man page). So, I did a little test on my own. I installed espeak and espeak-ng packages. The espeak* should expand to espeak-ng as well.

But when espeak was pruged, the espeak-ng package was untouched. So there seems to be a mechanism that protects against such wild card expansions.

So, should you use apt remove or apt purge?

Few people just get addicted to using apt purge.

In my opinion, apt remove is what you should use most of the time. Use apt purge when you have to get rid of the custom configuration files.

In both cases, youll have to remove the remaining configuration files from the users home directory and run apt autoremove to eliminate any leftover dependencies.

Over to you now. Do you understand the difference between apt remove and apt purge better now? Which one do you prefer to use?


via: https://itsfoss.com/apt-remove/

作者:Abhishek Prakash 选题:lkxed 译者:译者ID 校对:校对者ID

本文由 LCTT 原创编译,Linux中国 荣誉推出