Skip to content

Instantly share code, notes, and snippets.

@pklaus
Last active September 9, 2024 17:09
Show Gist options
  • Save pklaus/837023 to your computer and use it in GitHub Desktop.
Save pklaus/837023 to your computer and use it in GitHub Desktop.
A Script to Clear Cached RAM on Linux
#!/bin/bash
## Bash Script to clear cached memory on (Ubuntu/Debian) Linux
## By Philipp Klaus
## see <http://blog.philippklaus.de/2011/02/clear-cached-memory-on-ubuntu/>
if [ "$(whoami)" != "root" ]
then
echo "You have to run this script as Superuser!"
exit 1
fi
# Get Memory Information
freemem_before=$(cat /proc/meminfo | grep MemFree | tr -s ' ' | cut -d ' ' -f2) && freemem_before=$(echo "$freemem_before/1024.0" | bc)
cachedmem_before=$(cat /proc/meminfo | grep "^Cached" | tr -s ' ' | cut -d ' ' -f2) && cachedmem_before=$(echo "$cachedmem_before/1024.0" | bc)
# Output Information
echo -e "This script will clear cached memory and free up your ram.\n\nAt the moment you have $cachedmem_before MiB cached and $freemem_before MiB free memory."
# Test sync
if [ "$?" != "0" ]
then
echo "Something went wrong, It's impossible to sync the filesystem."
exit 1
fi
# Clear Filesystem Buffer using "sync" and Clear Caches
sync && echo 3 > /proc/sys/vm/drop_caches
freemem_after=$(cat /proc/meminfo | grep MemFree | tr -s ' ' | cut -d ' ' -f2) && freemem_after=$(echo "$freemem_after/1024.0" | bc)
# Output Summary
echo -e "This freed $(echo "$freemem_after - $freemem_before" | bc) MiB, so now you have $freemem_after MiB of free RAM."
exit 0
@xano75
Copy link

xano75 commented Dec 16, 2019

image

@xano75
Copy link

xano75 commented Dec 16, 2019

Permission denied

@xgportal
Copy link

Works like a charm, thanks.

Just make sure to install bc !!

sudo apt-get install bc

then run script as follows:

sudo ./flushram.sh

My result:

At the moment you have 223 MiB cached and 2425 MiB free memory.
This freed 63 MiB, so now you have 2488 MiB of free RAM.

@atorresbr
Copy link

Great Job ! -- Thank you so much ! Works like a lot charm on Ubuntu -- (( Note: to run the script, right click > Permissions > and Allow executing file as program.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment