Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

Is this a problem on Linux like it is one Windows? Installing and uninstalling things that end up leaving behind little bits and pieces that accumulate and have a negative effect?

If so, what can I do to prevent this?

share|improve this question

closed as primarily opinion-based by l0b0, Anthon, polym, garethTheRed, slm Aug 26 at 13:08

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

1  
which distribution are you using? –  pqnet Aug 25 at 16:40
    
Fedora 20. Just wondering if it eventually builds up and needs reinstalled. Will be reinstalling in October anyways for Fedora 21 –  user81819 Aug 25 at 16:42
1  
On apt based systems such as debian you can do uninstall or full-uninstal. The full-uninstall removes system config-file. As for the detriment, the config files will use a little (or a lot of) disk space. Microsoft-Windows has a problem because NTFS suffers from fragmentation, and because the config is stored in a badly designed database (the registry), that also fragments. –  richard Aug 25 at 16:48
2  
You don't need to reinstall to upgrade Fedora. Just use FedUp: fedoraproject.org/wiki/FedUp I've gone from 18 to 20 using it, no problems, and it left my root partition intact (no need to back up and restore personal data, configurations, etc). Just don't try to skip a release when you do it (ie., 18 to 20 is actually 18 to 19 to 20). –  goldilocks Aug 25 at 17:25

2 Answers 2

Yes and no. *nix has a huge advantage over Windows in package management. Unlike in Windows where you must rely on third-party packages to have sane (un)installers, *nix distributions offer package managers that take care of installation and uninstallation in a unified manner. As a result, when you remove a package, all the system-level files for that package will be removed; you do not need to worry about this clutter.

However, there is one place that programs might create files which won't be removed with the package: your $HOME directory. Many files keep configuration, save-games, etc. in $HOME, but package managers should never touch anything in $HOME. As a result, when you remove a package, any files it created in your home directory will persist.

There is a silver lining; if you really want to clean out all left-over files from a package that you've uninstalled, the nuclear option isn't a reinstallation, it'd be wiping your $HOME. Now, this would typically still be an over-reaction because most programs tend to store their files in a single directory under $HOME (often $HOME/.name-of-app/ or $HOME/.config/name-of-app/).

The ideal spring cleaning of these files would just be to remove the per-program directory—that, coupled with the standard uninstallation of the package, should be enough to rid your system of any files created/owned by the package.

Note: YMMV

share|improve this answer
    
@illuminÉ, yes. Different distros have different methods and what I said above (though generally accurate) might not always hold true. Furthermore, less well-behaved applications might put files where they shouldn't, or distribute them among several locations. But, what I said above should be accurate for more cases. –  HalosGhost Aug 25 at 17:14
1  
@illuminÉ, ahh. No worries! Post edited with a link to clarify. –  HalosGhost Aug 25 at 17:18
    
+1 It might be more accurate to say that Windows does not have any package management in the way that linux distros do. When you install a third party application on windows, you must use the third party installer and hopefully it comes with an uninstaller that works. When you install third party software on linux via a PM, the installer is the package manager and the package is created with removal as a possibility according to distro standards. –  goldilocks Aug 25 at 17:19
    
@goldilocks, I added some more information to the post to clarify the separation between Windows's paradigm and *nix's. –  HalosGhost Aug 25 at 17:22
1  
It should be noted that leftover config files, or dotfiles in $HOME should not have any effect on system performance. Spring cleaning would reclaim a few MBs at best. The only possible negative effect would be from packages that put config files in shared ".d" directories and fail to remove them, but I think this is a rare case of a not-so-well behaving package. –  Paul Schyska Aug 26 at 7:51

Uninstalling packages in Linux may leave behind configuration files. This shouldn't be observable normal usage, unless you reinstall the same package you removed: the configuration files are usually small and not used by any other package than the ones you installed. There is usually an option in the package manager to remove configuration files when removing a package. In debian/ubuntu you can use the --purge switch to apt-get remove, in Fedora/red hat/centos you don't need a special switch - the configuration is removed automatically when the package is uninstalled.

The most visible effect of installing and uninstalling package is probably just a little disk wearing.

This does not apply to software installed from other methods than the official package manager, such as binary proprietary packages and manually compiled ones.

share|improve this answer
    
I've found this to not always be the case. I've found several files with the suffix .rpmsave. Rather annoying, but there should be some switch that removes this. Then again with the costs of disks a few KB wasted is nothing. –  SailorCire Aug 25 at 19:37
    
files .rpmsave are created when you manually made changes to configuration files, in order to preserve your changes on disk without interfering with a new installation –  pqnet Aug 26 at 9:39

Not the answer you're looking for? Browse other questions tagged or ask your own question.