Clear Cache Ram Linux


Technologists often talk about “cache” when discussing CPUs, disk drives, and computer systems. But what is it and why should you care?

First - the echo command you gave should be clearing the page cache. This is the same command given here. The page cache is managed by the kernel. It is not used (at least directly) by any process. The memory used by the page cache is available to be given to any process if the kernel decides to do that. This video illustrates the Memory management like Clear RAM Memory Cache, Buffer and Swap Space in Linux. For more explanation on this video: https://www.lin. The page cache is automatically enabled on Linux systems and will transparently make IO faster by storing recently used data in the cache. If you want to manually clear the cache that can be done easily by sending an echo command to the /proc filesystem indicating to the kernel to drop the cache and free the memory used for the cache.

A disk cache is RAM built into your hard disk. It evens out the flow of data between the relatively slow disk drive and the rest of the computer by accepting data faster than it can be written to or read from the disk. To help the cache do its job, the disk normally includes logic to analyze disk usage and pre-fetch data, that is likely to be needed soon.

As long as the cache isn’t full, the disk drive’s data transfer rate is a good deal higher than its actual read/write speed.

Don’t confuse cache with the size of the disk drive or your system RAM. Cache is a separate entity; in fact, it’s normally memory chips that are installed in the casing that houses your disk drive. Often, when you read the specifications for a disk drive, it will include the amount of on-board cache.

This built-in cache is also different from setting aside a portion of the system RAM to use as a disk buffer, even though this is occasionally referred to as “disk cache” as well.

The disk cache is important because it has a major impact on how well your system performs on>The benefit of cache only lasts until the cache is full. If the system trying to send or receive data faster than the disk can read or write it, the cache will fill up eventually and the disk’s performance will fall off significantly. But since disk activity on desktop systems is usually bursty, that is, it comes in bursts rather than as a steady stream of data, it is possible to put enough cache memory on a disk to stay ahead of the write requests most of the time.


The exact meaning of “most of the time” depends in large part on how much cache the disk has. Ideally the disk cache would be so large it would never fill up. Since RAM is relatively expensive compared to other components in a disk drive (prices vary based on the type of RAM used) it isn’t very practical.

Disks differ widely in the size of the cache. The standard today is a minimum of 2 Mb cache, although many”high-performance” commodity drives available at retail include 8 Mb of cache. A drive with 16 Mb will give significant performance improvements, but these are unusual and result in a more expensive disk drive.

All other things being equal, the disk with the most cache will give you the best performance. You’ll pay more, but your system will perform better.

Like any other operating system, GNU/Linux has implemented a memory management efficiently and even more than that. But if any process is eating away your memory and you want to clear it, Linux provides a way to flush or clear ram cache.

How to Clear Cache in Linux?

Every Linux System has three options to clear cache without interrupting any processes or services.

1. Clear PageCache only.

2. Clear dentries and inodes.

Arch Linux Clear Ram Cache

3. Clear PageCache, dentries and inodes.

Clear Cache Ram Linux Operating System

Explanation of above command.

sync will flush the file system buffer. Command Separated by “;” run sequentially. The shell wait for each command to terminate before executing the next command in the sequence. As mentioned in kernel documentation, writing to drop_cache will clean cache without killing any application/service, command echo is doing the job of writing to file.

If you have to clear the disk cache, the first command is safest in enterprise and production as“..echo 1 > ….” will clear the PageCache only. It is not recommended to use third option above“..echo 3 >” in production until you know what you are doing, as it will clear PageCache, dentries andinodes.

Is it a good idea to free Buffer and Cache in Linux that might be used by Linux Kernel?

When you are applying various settings and want to check, if it is actually implemented specially on I/O-extensive benchmark, then you may need to clear buffer cache. You can drop cache as explained above without rebooting the System i.e., no downtime required.

Linux is designed in such a way that it looks into disk cache before looking onto the disk. If it finds the resource in the cache, then the request doesn’t reach the disk. If we clean the cache, the disk cache will be less useful as the OS will look for the resource on the disk.

Moreover it will also slow the system for a few seconds while the cache is cleaned and every resource required by OS is loaded again in the disk-cache.

Now we will be creating a shell script to auto clear RAM cache daily at 2PM via a cron scheduler task. Create a shell script and add the following lines.

Nvidia shield as plex server. Set execute permission on the file.

Now you may call the script whenever you required to clear ram cache.

Now set a cron to clear RAM cache everyday at 2PM. Open crontab for editing.

Append the below line, save and exit to run it at 2PM daily.

For more details on how to cron a job you may like to check our article on 11 Cron Scheduling Jobs.

Is it good idea to auto clear RAM cache on production server?

No! it is not. Think of a situation when you have scheduled the script to clear ram cache everyday at 2PM. Everyday at 2PM the script is executed and it flushes your RAM cache. One day for whatsoever reason, may be more than expected users are online on your website and seeking resource from your server.


At the same time scheduled script run and clears everything in cache. Now all the user are fetching data from disk. It will result in server crash and corrupt the database. So clear ram-cache only when required,and known your foot steps, else you are a Cargo Cult System Administrator.

How to Clear Swap Space in Linux?

If you want to clear Swap space, you may like to run the below command.

Also you may add above command to a cron script above, after understanding all the associated risk.

Now we will be combining both above commands into one single command to make a proper script to clear RAM Cache and Swap Space.

After testing both above command, we will run command “free -h” before and after running the script and will check cache.

Last Updated on

Let’s go through the process to clear memory cache and buffer on Linux based operating systems. We will show how to flush memory cache on Linux.

How To Clear Memory Cache And Buffer On Linux

We have different option to clear memory on Linux.

First option to clear memory caches on Linux.

Command to free pagecache, dentries and inodes in cache memory in Linux.

Second option to clear memory cache.

Command to free dentries and inodes

Third option to clear memory cache on Linux.

Run the following command to free pagecache only:

How To Schedule Cron To Flush Cache Regularly

Clear Cache Ram Linux Windows

Run the following command to schedule cron to flush cache regularly. It makes your job easier and reduce the work pressure. Use ‘crontab -e’ command to edit cron on your Linux.

Clear Cache Ram Linux Mac