この記事では、Ubuntu 26.04 で autofs を使い、CephFS や NFS などのリモートストレージを必要な時だけ自動マウントする考え方を整理します。常時マウントする /etc/fstab とは役割が異なり、管理用の参照先、バックアップ領域、利用頻度の低い共有領域に向く方式です。
autofs は、指定したパスにアクセスされた時点でファイルシステムをマウントする仕組みです。リモートストレージを常に接続しておく必要がない場合、起動時の待ちや不要な接続を減らしやすくなります。
この記事では、CephFS と NFS を例にしながら、Ubuntu 26.04 で /etc/auto.master.d と map file を使ってリモートストレージをオンデマンドにマウントする流れを整理します。
remote autofs mount の位置づけ
remote autofs mount は、リモート側にストレージがすでに存在している前提で、Ubuntu 側から必要な時だけマウントするための設定です。ストレージサーバー構築ではなく、クライアント側の利用方式を決める記事です。
| 方式 | 特徴 |
/etc/fstab | 起動時から固定的にマウントする。常時利用する領域に向く |
autofs | アクセス時に自動マウントする。利用頻度が低い領域や管理用参照先に向く |
メールスプールやアプリケーションの永続領域のように常時必要なものは fstab が分かりやすいです。一方、バックアップ先、管理用の CephFS 参照、必要な時だけ見ればよい NFS 共有などは autofs の方が自然な場合があります。
autofs をインストールする
まず autofs パッケージをインストールし、サービスを有効化します。
sudo apt update
sudo apt install -y autofs
systemctl status autofs.service --no-pager
sudo systemctl enable --now autofs.serviceautofs.service が起動していれば、以降は master file と map file の設定に従って、対象パスへアクセスした時にマウントが行われます。
master file を作成する
Ubuntu では /etc/auto.master.d 配下に master file を置けます。ここでは direct map として /- を使い、実際のマウント定義を /etc/auto.remote に分けます。
sudo install -d -m 0755 /etc/auto.master.d
sudo tee /etc/auto.master.d/remote.autofs >/dev/null <<'EOF'
/- /etc/auto.remote
EOF
sudo chmod 0644 /etc/auto.master.d/remote.autofs/- は direct map を意味します。/mnt/autofs/ceph/cephfs-int のような絶対パスを map file 側に直接書けるため、管理用の複数マウントを明示的に並べたい場合に扱いやすいです。
CephFS と NFS の map file を作成する
次に /etc/auto.remote にマウント定義を書きます。各行は、マウントポイント、オプション、リモート側 source の順に並びます。
sudo tee /etc/auto.remote >/dev/null <<'EOF'
/mnt/autofs/ceph/cephfs-mgmt -fstype=ceph,name=admin,conf=/etc/ceph/main/ceph.conf,fs=cephfs-mgmt 10.145.0.41:/
/mnt/autofs/ceph/cephfs-int -fstype=ceph,name=admin,conf=/etc/ceph/main/ceph.conf,fs=cephfs-int 10.145.0.41:/
/mnt/autofs/ceph/cephfs-ext -fstype=ceph,name=admin,conf=/etc/ceph/main/ceph.conf,fs=cephfs-ext 10.145.0.41:/
/mnt/autofs/nfs/backup -fstype=nfs4,rw,sync 172.17.0.23:/mnt/autofs/usbdisk/backup
EOF
sudo chmod 0644 /etc/auto.remote
sudo systemctl restart autofs.serviceCephFS の例では -fstype=ceph、conf=/etc/ceph/main/ceph.conf、fs=... を指定しています。NFS の例では -fstype=nfs4 と NFS server 側の export path を指定します。実際の IP アドレス、CephFS 名、NFS export は環境に合わせて読み替えます。
アクセス時にマウントされることを確認する
autofs は、設定しただけではすぐにマウントされないことがあります。対象パスへアクセスした時点でマウントされるため、確認では ls や findmnt を組み合わせます。
ls -ld /mnt/autofs/ceph/cephfs-int
findmnt /mnt/autofs/ceph/cephfs-int
ls -ld /mnt/autofs/nfs/backup
findmnt /mnt/autofs/nfs/backup
systemctl status autofs.service --no-pagerfindmnt で対象パスが表示されれば、アクセスによって自動マウントされています。表示されない場合は、journalctl -u autofs.service、名前解決、Ceph / NFS クライアント設定、Firewall、認証情報を確認します。
autofs で見るべき項目
| 項目 | 確認すること |
mount_point | Ubuntu 側でアクセスするパス |
options | -fstype=ceph、-fstype=nfs4、認証、設定ファイル、mount option |
source | Ceph monitor、NFS server、export path などの接続先 |
| service | autofs.service が起動し、設定変更後に再起動されていること |
autofs の設定は、単に mount command を遅延実行するだけではありません。どのパスにアクセスした時に、どの options で、どの source をマウントするのかを明確にする設定です。
fstab と autofs の使い分け
fstab と autofs は競合するものではありません。重要なのは、その領域が常時必要なのか、必要な時だけ参照できればよいのかです。
- 常時利用するアプリケーション領域は
fstabが向く - 管理用の参照先やバックアップ領域は
autofsが向く - 接続先障害時の起動待ちを避けたい場合は
autofsが扱いやすい - アクセス時に初回待ちが発生して困る領域は
fstabを検討する
リモートストレージは、便利な一方でネットワーク、認証、名前解決、サーバー側 export に依存します。常時マウントするのか、オンデマンドにするのかを分けておくと、起動時の安定性と運用時の見通しが良くなります。
まとめ
Ubuntu 26.04 で autofs を使うと、CephFS や NFS のようなリモートストレージを必要になった時だけ自動マウントできます。
/etc/auto.master.d/remote.autofsで map file を指定する/etc/auto.remoteに mount point、options、source を定義する- CephFS では
-fstype=cephと Ceph 設定を指定する - NFS では
-fstype=nfs4と export path を指定する lsやfindmntでアクセス時マウントを確認する
autofs は、リモートストレージを常に接続しておくための仕組みではありません。必要な時だけ接続し、不要な時は依存を小さくするための選択肢です。fstab と使い分けることで、Ubuntu 26.04 のリモートストレージ利用をより整理しやすくなります。



