Is it okay to delete the ~/.cache folder?

301,038

Solution 1

To answer the question, IMO you can delete all of .cache with no long term detrimental effects.

If your .cache is growing large, it might be better to look at the contents and determine what application is making it large and re-configure a bad acting application (rather than simply deleting .cache when it grows too large).

Another directory that can take up a lot of space (and/or save an embarrassing bit of evidence) is the .thumbs directory. Many files in .thumbs seem to be duplicates.

To clean (just take care with the -rf flag and other directories ;)

rm -rf ~/.thumbs/*

When you are new to Ubuntu/Linux it is hard to know what you can and can not delete in your home directory. For the most part you can delete most anything in your home directory, programs or applications that require .cache (or other dot files such as .local) will re-create them.

Most of the time, at worst, you will lose custom configurations, but no real harm to the system.

I would not advise you start a habit of deleting things you do not understand in your home directory, back it up or use a test account. If in doubt, the safe thing would be to make a back up or move the file.

mv .cache .cache_backup

You can then restore from backup if needed.

Definitely do NOT start deleting things you do not understand outside of your home directory.

Solution 2

I just discovered that my backup disk was filling up with stuff from .cache (I guess applications are cleaning their own cache, but I don't delete backups so it's getting huge). So I'm excluding .cache from my backup list, but I noticed that .cache has stuff from TEN YEARS AGO, software I had forgotten I ever used!

This will delete everything in your .cache that was last accessed more than a year ago

find ~/.cache/ -type f -atime +365 -delete

If you're nervous about running it, this will show you what's going to be deleted:

find ~/.cache/ -depth -type f -atime +365 

I'm using 'access time' for that, you could also try 'creation time' by using -ctime (although I've found many cache files which are years old but still accessed). Thanks to @n33rma for the edit suggestion.

Solution 3

It is generally safe to delete it. You might want to close all graphical applications (e.g. banshee, rhythmbox, vlc, software-center, ..) to prevent any confusion of the programs accessing the cache (where did my file go all of a sudden!?).

It can easily have a size of 100+ MB, so if you want to free up disk space, do it.

As already pointed out by BretD and Dylan McCall, the type of files are partial downloads, browser cache, media files like icons, etc, used to speed up future access to the same files.

Another thing to keep in mind: removing an application does not necessarily delete the relevant ~/.cache/removed_prog folder; in this case those files just take space and are not used. Those can definitely be deleted.

Solution 4

Here is a script that I keep on all my machines for finding disk hogs:

$ cat ~/bin/hog
#! /usr/bin/env bash
#
# -*- mode: shell-script -*-

case $# in
(0) dir='.';;
(1) dir=$1;;
(*) echo "usage: hog <dir>"
  exit 1;;
esac

du -s --one-file-system $dir/* $dir/.[A-Za-z0-9]* | sort -rn | head

Also, on my machine, I have my home directory mounted with the noatime option, so I modified the above to:

find ~/.cache -depth -type f -mtime +365 -delete

which keys off modification time.

You also might want to put this in your crontab, with crontab -e and add the lines:

# Clean out ~/.cache
13 3 * * 0 chronic find ~/.cache -depth -type f -mtime +365 -delete

Solution 5

I would recommend not deleting it. I am not a Linux expert (though I hope to be!) and don't know the specifics of the file system structure, but you can examine what exactly is in the folder by going into your home folder and hitting ctrl+h to show hidden folders. You can then go in the .cache folder and see what's in there.

Just from a quick peek on my system I know that banshee stores album art in the cache folder (don't know why exactly), chrome has data in the cache folder, a lot of programs keep logs in the .cache folder, and other stuff.

I am not sure if these files are all just there temporarily for speed increase purposes (like browser cache) or if this "cache" contains files for some other purpose (as the speed increase of browser cache is to counteract excessive use of bandwidth by re-accessing files on a server, whereas there should be no discernible difference in r/w times for a different file location on the hard disk).

I hope someone knows more about this than I do and can give you a better response.

Share:
301,038

Related videos on Youtube

Saumya Pant
Author by

Saumya Pant

Updated on September 18, 2022

Comments

  • Saumya Pant
    Saumya Pant over 1 year

    When I use disk usage analyzer and scan my home folder, the .cache folder in my home directory always shows up with a decent bit of things in it.

    Would it be okay for me to delete the contents of this folder or would it damage something?

    • cmcginty
      cmcginty over 10 years
      My .cache was 11G
    • Ciro Santilli OurBigBook.com
      Ciro Santilli OurBigBook.com about 10 years
      Possible cross site duplicate of: superuser.com/questions/366771/…
    • 0xC0000022L
      0xC0000022L almost 4 years
      Bleachbit is an application that comes with some "recipes" of sorts, to clean stuff and it helps see upfront what's going to be removed.
  • Admin
    Admin about 12 years
    Yes, I agree that it isn't a good idea to delete .cache. If possible, use the program that creates the relevant folder. Deleting Chrome's cache, for example, should preferably be done via Chrome. If a program doesn't offer a visible means of managing its cache, it may be safer to leave it alone unless one really knows.
  • Admin
    Admin about 12 years
    One more thing you could consider if you don't dislike using the terminal and typing commands is this: du ~/.cache > cachefolders_size. What it does is to give you a list with sizes of each folder in .cache. You can paste the information from the file generated into a spreadsheet and then sort it to your taste. I read about it here.
  • Dylan McCall
    Dylan McCall about 12 years
    The idea of .cache is that it is deletable (see standards.freedesktop.org/basedir-spec/basedir-spec-latest.h‌​tml). Applications shouldn't depend on it, and I really have never noticed an application doing it wrong. Banshee is indeed a funny case, but it's a great example: BretD is right that you probably won't want to delete all your cache, because it is generally there for a good reason. It takes a long time for Banshee to get cover art. It can do it again, but it will look ugly in the interim.
  • Alois Mahdal
    Alois Mahdal over 10 years
    @vasa1 or you can use a GUI-based disk usage analyzer. I think Baobab, should be available on Ubuntu (I use it in Debian)
  • Parthian Shot
    Parthian Shot about 9 years
    @DylanMcCall That link to the standard makes your comment more useful than all the other answers. If you made that comment an answer, I'd upvote it.
  • thomasrutter
    thomasrutter about 8 years
    If you're going to wipe ~/.cache, best to wipe it all at once (so you don't confuse any application with an inconsistent/partial state), then restart immediately after (just in case some application that uses files in ~/.cache is still running in the background).
  • Geremia
    Geremia over 7 years
    Exactly my issue, too! My daily backups were consistently ~1.7GB. Now that I deleted ~/.cache, they're only ~0.1 GB! Good suggestion re: the -atime flag, too. What I do is put a similar find command in my crontab, also for my /tmp/ folder; I use -atime +1 with no problems.
  • Scott Stensland
    Scott Stensland over 7 years
    issue : du ~/.cache | sort -n to see sort by dir size
  • wjandrea
    wjandrea over 6 years
    I get really nervous about any command that starts rm -rf, so I'd recommend using gvfs-trash ~/.thumbs instead
  • Rob
    Rob almost 5 years
    you are confusing .config with .cache. settings are stored in .config which should never be deleted. However anything, make that EVERYTHING in .cache can be deleted. (any program dumb enough to store application settings in there has no place to be in linux ever)
  • Bas Lamerichs
    Bas Lamerichs about 4 years
    dude. i see everyone saying this with taking the utmost precaution of deleting anything from .cache, because there is a very tiny chance some program may malfunction due to erasing that folder. so, lets just say it. if you dont know what to delete, or what is safe to delete ; dont delete it. so therefor, it would be best to leave this folder alone i guess, because you might screw up your browser, or some other program you did not suspect.
  • 0xC0000022L
    0xC0000022L almost 4 years
    @wjandrea simply use rm -r then ;) ... the -f is anyway only needed for special cases or if rm was aliased to be rm -i ...
  • wjandrea
    wjandrea almost 4 years
    @0xC0000022L Good point, but then I'd be nervous about accidentally hitting Enter after rm -r ~
  • Henrique de Sousa
    Henrique de Sousa about 3 years
    @wjandrea "This tool has been deprecated, use 'gio trash' instead."
  • wogsland
    wogsland about 3 years
    Why post "I don't know" as an answer? This just added to my confusion....
  • Spam Hater
    Spam Hater almost 3 years
    There is also trash-cli (at least on my Kubuntu box), easily installed with sudo apt install trash-cli for those wary of rm -rf commands.
  • Pablo Bianchi
    Pablo Bianchi over 2 years
    It seems that at some point ~/.thumbs/ became ~/.thumbnails/
  • Admin
    Admin almost 2 years
    My JetBrains folder with 9Go inside ~/.cache, lol.