2 min read

10 places to start the diet for your Ubuntu Linux after an year of real usage

If you don't have a very big hard disk, but you like to test many software without wasting megabytes, probably you should learn to keep the stuff tidy and monitor sometimes some fat-eater directories to save and free the lost space.

Be carefull before remove unknown directories, if you are unsure about the content start first renaming them


1) /var/log (650mb)
Specially check kern.log, messages, syslog, if the box is a server use logrotate

2) /var/cache (100mb)
The content of this directory is generated frequently, so avoid to delete it

3) /usr/share/gnome/help (72mb)

4) /usr/share/icons (95mb)

5) /usr/share/fonts (55mb)

6) /usr/lib/ruby/gems/1.8/doc (50mb)
If you have installed Ruby on Rails and other dependencies via gems system this directory will grow fast

7) /usr/share/doc (52mb)

8) /root/.Trash (50mb)
It's easy to fill the dir, and forget to free it, if you use Nautilus in root mode

User space

9) .Tracker (60mb)
The index could be smaller if you exclude the not interesting directories in your $HOME

10) .thumbnails (100mb)
Maybe a cron job to clean it frequently?

11) .wine (40mb)
You can also free the space with the uninstaller of each application.

12) .mozilla/firefox (29mb)
Check if you have multiple profiles with multiple cache

13) .googleearth/Cache (30mb)

NB: Obviosly the megabytes saved dipends of what have you installed in your system and which type of datas you manage.


  • Try first to clean your box with synaptic, to avoid that the fat come back in the next update.
    If the package unwanted breaks ubuntu-desktop, pass to ubuntu-minimal, if you remove ubuntu-minimal be sure what you are doing and check sometimes if ubuntu-desktop has new deps, and add them (if usefull) manually.
  • If you don't find the wanted .deb or you need to test bleeding-edge-svn software, try to make easly deb package with checkinstall or dh_make. In general keep the stuff tidy in ~/sources/ and ~/testing/ and compile with ./configure --prefix=/home/$USER/testing/usr if you don't need a system-wide package