web-dev-qa-db-ja.com

2つのNFS共有の作成:1つの読み取り/書き込みと1つの読み取り専用

うまくいけば、これは簡単な質問です!

背景:現在、MythTVを実行するホームメディアサーバーとしてUbuntu 12.04を使用し、WindowsとUbuntuの両方でフロントエンドとしてXBMCを使用しています。私のメディアはSMBとNFSを介して共有されますが、オーバーヘッドが低いためパフォーマンスが大幅に向上するため、主にXBMCフロントエンドにNFSを使用します。

やりたいこと:メディアファイルに2つのNFS共有を作成することです。 1つの共有は読み取り/書き込みになり、もう1つの共有は読み取り専用になります。このようにして、たとえば、ルームメイトのフロントエンドをセットアップできます。たとえば、彼はファイルを表示するためにアクセスできますが、何も台無しになりません。

2つの同一のNFS共有、1つは読み取り/書き込み、もう1つは読み取り専用を作成できないため、それらを区別するために2つのマウントを作成しようとしました。

/ etc/fstabには、次のデバイスがマウントされています。

/dev/stb1 /mnt/Media ext4 defaults 0 0

/ etc/exportsには、次のNFS共有があります。

/mnt/Media *(rw,async,all_squash,insecure,anonuid=1001,anongid=122,no_subtree_check)

上記は読み取り/書き込みアクセスに対して正常に機能します。私の意図は、2番目の読み取り専用マウントを作成し、NFS経由で/ mnt/Media_ReadOnlyとしてエクスポートすることでした。そこで、次のように2番目のマウントを作成しようとしました。

/dev/stb1 /mnt/Media_ReadOnly ext4 ro,auto,user,noexec 0 0

しかし、私はエラーが発生します:

mount: according to mtab, /dev/sdb1 is mounted on /mnt/Media

だから私は同じデバイスを2回マウントできないと思いますか?

NFSを介して読み取り専用形式で同じパスをエクスポートするにはどうすればよいですか?

1
tfjield

マウント内に2つの同一のターゲットを完全に停止することはできません。 NFSでもシステムでもありません。

しかし、あなたがcanすることは、例えば/export/rw/export/rw/roのようなダミーのディレクトリ構造を作成することです。データは後者にあります。前者にはディレクトリroのみが含まれます。次に、/export/rwをNFS経由で読み取り/書き込みとしてエクスポートし、/export/rw/roをNFS経由で読み取り専用権限でエクスポートします。私はそれをテストしませんでしたが、うまくいくはずです。しかし、それがそんなに良いアイデアかどうかはわかりません。

あるいは、Sambaのパフォーマンスの調整を検討してください。実際、これが私の最初の選択肢です。実際には、少なくともドキュメント(および私の逸話的証拠;によると、NFSよりも高速である必要があります(少なくともthatより遅い)ベースのソリューション私はこのプロトコルが本当に嫌いです)。続きを読む こちら

1
January