CTS-KB

NFS

エヌエフエス

Network File System
#分散ファイルシステム #ネットワーク #NAS #Linux

Network File System の略。Sun Microsystems が 1984 年に開発した分散ファイルシステムプロトコル。Linux / Unix ネイティブのネットワークファイル共有として広く採用され、QNAP / Synology などの NAS と Linux クライアント間の標準的な接続方式。

バージョンと特徴

バージョンリリース特徴推奨度
NFS v31995UID/GID をそのまま渡す。設定が単純○ シンプル運用
NFS v42003状態管理・ACL・Kerberos 対応
NFS v4.12010パラレル NFS(pNFS)対応・ファイアウォール通過容易◎ 業務 NAS
NFS v4.22016サーバーサイドコピー等◎ 新規構築時

SMB(CIFS)との比較

項目SMB(CIFS)NFS
速度(GbE)100〜200 MB/s200〜300 MB/s(GbE 上限近く)
CPU 負荷
Linux ネイティブ性
認証ユーザー / パスワードUID/GID ベース(v3)、Kerberos も可(v4)
Windows との共有× (Windows は別途有効化必要)

Windows と共有 = SMB / Linux 専用 = NFS のハイブリッド構成が業務で多い。

マウント例

/etc/fstab での自動マウント:

192.168.1.10:/Projects  /home/<user>/NAS/Projects  nfs4  defaults,_netdev,nofail,x-systemd.automount,vers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2  0 0
オプション意味
nfs4NFS v4 を使用
_netdevネットワーク利用可能まで待機
nofailNAS 不在でもブートを止めない
x-systemd.automountアクセス時マウント(高速ブート)
vers=4.1NFS v4.1 を明示
rsize / wsize=10485761 MB バッファ(GbE で最適)
hardサーバー応答停止時は無限再試行

よくあるハマり

症状原因対処
mount.nfs4: access denied by serverサーバー側ホスト IP 制限に含まれないNAS の NFS ホストアクセス設定
ファイル所有者が nobody:nogroupNFS v4 の idmap ドメイン不一致/etc/idmapd.confDomain を合わせる、または vers=3
Connection refusedNFS サービス未起動 / ポート 2049 / 111 ブロックNAS で NFS サービス有効化

セキュリティ

NFS(特に v3)は 送信元 IP ベースの認証で、信頼できる社内 LAN 内での利用が前提。インターネット越しの NFS は絶対に使わない。Kerberos(NFS v4 以降)を使えばユーザー認証可能だが、運用の手間は大きい。

関連記事

関連用語