Title : Use ramdisk on /tmp on OpenBSD
Author: Solène
Date  : 08 May 2018
Tags  : openbsd66 openbsd

If you have enough memory on your system and that you can afford to
use a few hundred megabytes to store temporary files, you may want to
mount a mfs filesystem on /tmp. That will help saving your SSD drive,
and if you use an old hard drive or a memory stick, that will reduce
your disk load and improve performances. You may also want to mount a
ramdisk on others mount points like ~/.cache/ or a database for some
reason, but I will just explain how to achieve this for /tmp with is a
very common use case.

First, you may have heard about **tmpfs**, but it has been disabled in
OpenBSD years ago because it wasn't stable enough and nobody fixed
it. So, OpenBSD has a special filesystem named **mfs**, which is a FFS
filesystem on a reserved memory space. When you mount a mfs
filesystem, the size of the partition is reserved and can't be used
for anything else (tmpfs, as the same on Linux, doesn't reserve the

Add the following line in /etc/fstab (following fstab(5)):

    swap /tmp mfs rw,nodev,nosuid,-s=300m 0 0

The permissions of the mountpoint /tmp should be fixed **before**
mounting it, meaning that the `/tmp` folder on `/` partition
should be changed to 1777:

    # umount /tmp
    # chmod 1777 /tmp
    # mount /tmp

This is required because **mount_mfs** inherits permissions from the