How do I make a RAM disk?

This will show you how to make a RAMDISK super fast and easily. With a RAMDISK you can use your memory for temporary space and it’s also a lot quicker than your hard drive.

Now lets start by using the next 2 commands to make your RAMDISK.

Put whatever you want your RAMDISK to be called where I wrote “nameme”.

mkdir -p /media/nameme

mount -t tmpfs -o size=2048M tmpfs /media/nameme/
The above commands would use 2GB of my RAM for the RAMDISK. If you don’t have as much ram as I do I would use 512MB or 1GB. So next were going to create a command for Terminal that will automatically create the RAMDISK for you.

Source: How To Create A RAMDISK In Linux


The tmpfs filesystem is a RAMDISK. The following will create a 2G RAMDISK that will always be available.

sudo mkdir -p /media/ramdisk
sudo mount -t tmpfs -o size=2048M tmpfs /media/ramdisk

The ramdisk folder is owned by root as it is to be available on reboot. The ramdisk permissions should be writeable by everyone. The tmpfs default permissions (chmod 1777) are correct.

sudo chmod 1777 /media/ramdisk
drwxrwxrwt 2 root root 180 Apr 23 07:34 /media/ramdisk

To make the ramdisk permanently available, add it to /etc/fstab.

grep /media/ramdisk /etc/mtab | sudo tee -a /etc/fstab

You will see the line moved from mtab to fstab. It will look something like this.

tmpfs /media/ramdisk tmpfs rw,size=2048M 0 0

The RAMDISK won't consume memory until you use it. Double check your memory requirements during maximum system load. If the RAMDISK is too large, your system will consume swap storage to make up the difference.

To adjust the size of the RAMDISK, edit /etc/fstab and verify by remounting the ramdisk (you will lose your current RAMDISK content as you will on reboot). The following will change the size of the ramdisk to 512M

# Check the existing ramdisk size.
df /media/ramdisk
# change size=512M for a 512 megabyte ram drive.
sudo vi /etc/fstab
# Remount the ramdisk, you will lose any existing content.
sudo mount -a /media/ramdisk
# Verify the new ramdisk size.
df /media/ramdisk

Adding my 2-cent for the case you don't have root-privileges:

Quoting from this answer from unix.stackexchange

Linux provides a tmpfs device which any user can use, /dev/shm. It is not mounted to a specific directory by default, but you can still use it as one.

Simply create a directory in /dev/shm and then symlink it to wherever you want. You can give the created directory any permissions you choose, so that other users can't access it.

This is a RAM backed device, so what's there is in memory by default. You can create any directories you need inside /dev/shm

Naturally, files placed here will not survive a reboot, and if your machine starts swapping, /dev/shm won't help you.