NAS をより簡単に管理できるように、ホーム ネットワーク用に NFS 共有をいくつか作成しようとしています。現在、家庭では Samba を使用していますが、Ubuntu を使用しているため、NFS の方が高速です (NAS 以外のすべては Windows を実行しています)。
私がやりたいのは、自分のマシン以外のすべてのユーザーに対して読み取り専用の NFS 共有を作成することです。NFS 共有は正常に動作しており、コンピューターにマウントしてフォルダーを参照できますが、読み取り専用に強制されてしまいます。これは、構成/エクスポートでマシンが読み取り/書き込み可能であることを宣言しているため、イライラします。
私の /etc/exports ファイルは次のようになります (1 行の例 - 同じ結果になる次のような行がいくつかあります):
/mnt/TVShows matt-pc.*(rw,sync,no_root_squash,no_subtree_check) 192.168.1.0/25(ro,sync,no_root_squash,no_subtree_check)
matt-pc.1 と matt-pc.2 は両方とも NAS のホスト ファイルで定義されています。しかし、それにもかかわらず、IP をハードコーディングしても機能しません。
これも機能しません:
/mnt/TVShows matt-pc.*(rw,sync,no_root_squash,no_subtree_check) *(ro,sync,no_root_squash,no_subtree_check)
まだ読み取り専用マウントしかできません。
ドライブは NAS 上で読み取り/書き込みとしてマウントされており、Samba 共有設定は正常に動作します (NAS 上の自分のユーザー アカウントとして強制的にログインし、ファイルの読み取りと書き込みを行うことができます)。
共有を次のようにフォーマットすると:
/mnt/TVShows matt-pc.*(rw,sync,no_root_squash,no_subtree_check)
クライアント マシン (自分のマシン) にマウントしようとすると、アクセス許可エラーが発生します。
クライアント マシンにマウントする方法は次のとおりです。
nas.local:/mnt/TVShows /mnt/NFS/TVShows nfs auto,noatime,nolock,bg,nfsvers=4,intr,tcp,actimeo=1800 0 0
これを使ってもいいですか?
答え1
からおよびその他すべてにエクスポートするには、 `/etc/exports: に次の/mnt/TVShows
ように記述します。rw
nas
matt-pc
ro
#
/mnt/TVShows matt-pc(rw,no_subtree_check) 192.168.1.0/24(ro)
順序が重要であることに注意してください。 1 台のマシンにエクスポートするときには、一致する最初のマシン名/IP/ネットワークが使用されるため、最も具体的なマシンを最初にし、最も一般的なマシンを最後にします。 権限を過度に与える包括的な名前で終了しないでください。
また、各オプションセットは次に固有のものであるため、最初にのみ具体的に指定する必要があります。残りは以前の設定からの変更のみです。また、必要のない設定オプションは避けてください。(そして、常に関連するman
(1)ページとドキュメントを読んでください/usr/share/doc/"package name"/
)
また、使用している名前が適切に解決されているかどうかも確認してください。それを使用するには、getent
(1) コマンドを使用します。次のようにします。
$ getent hosts matt-pc
そして、それがどのように機能するかはresolv.conf
、 と/etc/hosts
(または実際には の内容/etc/nsswitch.conf
) によって異なります。
マウントするには、各マシンから次のようにします。
/etc/fstab
# ro, that is this line in all but matt-pc
nas.local:/mnt/TVShows /mnt/NFS/TVShows nfs auto,ro,noatime,nolock,bg,nfsvers=4,intr,tcp 0 0
# rw, that is this line in only matt-pc
nas:/mnt/TVShows /mnt/NFS/TVShows nfs auto,rw,noatime,nfsvers=4,tcp 0 0
ただし、実際に必要な数以上の引数を使用しないように注意してください。
(はい、私は の下にマウントされたサーバー上のディスクを好みます/srv/
。これはサーバー リソース用であり、/mnt/
一時的なマウント用です。私は通常/srv/web/
、/srv/files/music/
などを使用します/srv/files/video
。これにより、バックアップを作成しやすくなります)