Skip to content

BASIC SETUP

If you don't already know that you have a special use case then just start with one of the following option sets.

You need mmap (used by rtorrent and many sqlite3 base software)

cache.files=auto-full,dropcacheonclose=true,category.create=mfs

or if you are on a Linux kernel >= 6.6.x mergerfs will enable a mode that allows shared mmap when cache.files=off. To be sure of the best performance between cache.files=off and cache.files=auto-full you'll need to do your own benchmarking but often off is faster.

You don't need mmap

cache.files=off,dropcacheonclose=true,category.create=mfs

Command Line

mergerfs -o cache.files=auto-full,dropcacheonclose=true,category.create=mfs /mnt/hdd0:/mnt/hdd1 /media

/etc/fstab

/mnt/hdd0:/mnt/hdd1 /media mergerfs cache.files=auto-full,dropcacheonclose=true,category.create=mfs 0 0

systemd mount

https://github.com/trapexit/mergerfs/wiki/systemd

[Unit]
Description=mergerfs service

[Service]
Type=simple
KillMode=none
ExecStart=/usr/bin/mergerfs \
  -f \
  -o cache.files=auto-full \
  -o dropcacheonclose=true \
  -o category.create=mfs \
  /mnt/hdd0:/mnt/hdd1 \
  /media
ExecStop=/bin/fusermount -uz /media
Restart=on-failure

[Install]
WantedBy=default.target

See the mergerfs wiki for real world deployments for comparisons / ideas.