本家様 https://github.com/trapexit/mergerfs
wiki https://github.com/trapexit/mergerfs/wiki

容量が互いに異なるHDDを合わせて一つの大きなボリュームが作れます。そしてデータは各HDDに分散されず、ファイル単位でHDDに収まります。
なので特定のHDDに障害があってアクセスできなくなると、そのHDDにあるファイルだけが見れなくなりますが、それ以外のHDDのファイルは無傷です。

それでは困る。。となると各HDDのサイズが同じである必要がありますが、SnapRAID を合わせることでRAID様式な補完ができます。
このSnapRAID はunRAID(有償品)っぽい代物です。

どちらもオープンソースです。

MergerFS の読み書き速度は担当するHDD単体に依存します。一方RAIDはデータをブロックベースで複数のHDDに分散しますので球が多ければ早いです。
なので用途としてはアーカイブとかでしょうかね。

HDDの障害を考慮すればHDDのサイズを揃えてSnapRAID がお手軽なのかもしれません。

rockylinux9の上で MergerFS を作ってみる

[root@mergerfs ~]# cat /etc/redhat-release
Rocky Linux release 9.8 (Blue Onyx)
 
[root@mergerfs ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda      8:0    0   32G  0 disk
tqsda1   8:1    0    1M  0 part
tqsda2   8:2    0    1G  0 part /boot
tqsda3   8:3    0  128M  0 part [SWAP]
tqsda4   8:4    0    1K  0 part
mqsda5   8:5    0 30.9G  0 part /
sdb      8:16   0    1T  0 disk
sdc      8:32   0    2T  0 disk
 
[root@mergerfs ~]#

「sdb(1TB)」と「sdc(2TB)」が存在している。これをMergerFSで1つにしてみる。

https://github.com/trapexit/mergerfs/releasesから最新版は「mergerfs v2.42.0」なのでこれのrockylinux9版を取得

[root@mergerfs ~]# wget https://github.com/trapexit/mergerfs/releases/download/2.42.0/mergerfs-2.42.0-1.el9.x86_64.rpm
 
[root@mergerfs ~]# rpm -qpli ./mergerfs-2.42.0-1.el9.x86_64.rpm
Name        : mergerfs
Version     : 2.42.0
Release     : 1.el9
Architecture: x86_64
Install Date: (not installed)
Group       : Applications/System
Size        : 1604614
License     : ISC
Signature   : (none)
Source RPM  : mergerfs-2.42.0-1.el9.src.rpm
Build Date  : Fri 08 May 2026 12:55:36 PM JST
Build Host  : b570179acaea
URL         : https://github.com/trapexit/mergerfs
Summary     : A featureful FUSE based union filesystem
Description :
mergerfs is a union filesystem geared towards simplifying storage and
management of files across numerous commodity storage devices. It is
similar to mhddfs, unionfs, and aufs.
/sbin/mount.mergerfs
/usr/bin/fsck.mergerfs
/usr/bin/mergerfs
/usr/bin/mergerfs-fusermount
/usr/bin/mergerfs.collect-info
/usr/lib/.build-id
/usr/lib/.build-id/36
/usr/lib/.build-id/36/0751c352ee1818af0308b6cb7326dabd3bfef2
/usr/lib/.build-id/cc
/usr/lib/.build-id/cc/0a2ece94722c2ad5128474f6c6afcecd29ffb6
/usr/lib/.build-id/e6
/usr/lib/.build-id/e6/0aa290540f15fb0c70d23891c8d706e7399678
/usr/lib/mergerfs/preload.so
/usr/share/man/man1
/usr/share/man/man1/mergerfs.1.gz
 
[root@mergerfs ~]#
[root@mergerfs ~]# dnf localinstall ./mergerfs-2.42.0-1.el9.x86_64.rpm

MergerFS は異なるサイズ、ファイルシステムを繋げるので、「/dev/sdb」をxfs、「/dev/sdc」をext4にして繋ぎ合わせてみる

[root@mergerfs ~]# parted /dev/sdb mklabel gpt
 
[root@mergerfs ~]# parted /dev/sdb mkpart primary 0% 100%
 
[root@mergerfs ~]# mkfs.xfs /dev/sdb1
 
 
[root@mergerfs ~]# parted /dev/sdc mklabel gpt
 
[root@mergerfs ~]# parted /dev/sdc mkpart primary 0% 100%
 
[root@mergerfs ~]# mkfs.ext4 /dev/sdc1
 
(確認)
[root@mergerfs ~]# lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
NAME    SIZE TYPE FSTYPE MOUNTPOINTS
sda      32G disk
├sda1    1M part
├sda2    1G part xfs    /boot
├sda3  128M part swap   [SWAP]
├sda4    1K part
└sda5 30.9G part xfs    /
sdb       1T disk
└sdb1 1024G part xfs
sdc       2T disk
└sdc1    2T part ext4
[root@mergerfs ~]#
最新の60件
2026-08-09 2026-08-08 2026-08-02 2026-07-30 2026-07-25 2026-07-24 2026-07-20
  • MergerFS
2026-07-18 2026-07-17 2026-07-16 2026-07-08 2026-07-07 2026-07-06 2026-07-04 2026-07-02 2026-06-27 2026-06-25 2026-06-24 2026-06-21 2026-06-17 2026-06-14 2026-06-13 2026-06-09 2026-06-08 2026-06-06 2026-06-05 2026-06-04 2026-06-03 2026-05-31 2026-05-26 2026-05-23 2026-05-22 2026-05-21 2026-05-20 2026-05-19 2026-05-18 2026-05-12 2026-05-11

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2026-07-20 (月) 15:57:45