How to clear cached memory on ubuntu

By default the Linux OS has a very efficient memory management process that should be freeing any cached memory on the machine that it is being run on. However when it comes to Cached memory the Linux OS may at times decide that the Cached memory is being used and is needed which can lead to memory related issues and ultimately take your server of any potentially free memory. To overcome this you can force the Linux OS to free up and stored Cached memory.

If you want to clear cached memory on ubuntu run the following command from your terminal

sync; sudo echo 3 > /proc/sys/vm/drop_caches

If you want to run this command every one hour you can use crontab to run this

Thanks to john for this tip

Sponsored Link

Related posts

20 thoughts on “How to clear cached memory on ubuntu

  1. HHHmmm Nope…

    “Permission denied”

    tried sudo !! and then run it.


    “permission denied”

  2. Woh! It works! Why did I doubt it? 🙂

    Just saw the cache on my sys monitor disappear.

    Heh 🙂 System doesn’t like that, it’s building it again 🙂

    Thanks for that. Lovely!

  3. Actually, on first glance I spotted the ‘>’ wondering why it feeding info into ‘/proc/sys/vm/drop_caches’.

    I need to question more maybe?

  4. In ” sudo echo 3 > /proc/sys/vm/drop_caches “, sudo is used to execute “echo 3” but redirection is made with current user.

    “tee” is used to redirect input directly to a file, so “sudo tee” user root rights to do it

  5. $ sync; echo 3 | sudo tee /proc/sys/vm/drop_caches

    Excellent for desactivating Cache memory on ubuntu 1004-4 thanks

  6. I use ubuntu 1004-4 (on USB key only, it is slow, but quiet) , wine, winhttrack (websites downloader on windows XP) and my cache memory increased a lot. my computer became slowER and slowER, terrible!.
    I hope these exemples useful, under terminal :

    !!! BAD for me :
    [email protected]:~$ sync; sudo echo 3 > /proc/sys/vm/drop_caches
    bash: /proc/sys/vm/drop_caches: Permission denied
    [email protected]:~$ sudo sync; sudo echo 3 > /proc/sys/vm/drop_caches
    bash: /proc/sys/vm/drop_caches: Permission denied

    !!! BAD for me :
    [email protected]:~$ sync; gksudo echo 3 > /proc/sys/vm/drop_caches
    bash: /proc/sys/vm/drop_caches: Permission denied
    [email protected]:~$

    OK OK for me :
    [email protected]:~$ sync; echo 3 | sudo tee /proc/sys/vm/drop_caches
    [email protected]:~$

    ALSO OK for me :
    (((( [email protected]:~$ sudo swapoff -a )))) very useful so for desactivating swap (((swap is extremely slow if we only use ubuntu on a USB key )))

  7. Can anyone please tell me what cron command I will add if I want to run this command every 15 hours? or daily onec?

  8. For those of you who are getting trouble w/ permission…

    You can use “sudo su” to go into “superuser” mode

    Then you should be able to run the command using sudo!

  9. problem with this command is, sudo only work for sync not work for
    echo 3 > /proc/sys/vm/drop_caches so to run both command at a same time with sudo you must use
    like this
    sudo bash -c ‘sync; sudo echo 3 > /proc/sys/vm/drop_caches’

Leave a comment

Your email address will not be published. Required fields are marked *