ネットワークネームスペースを介したNFSマウント

ネットワークネームスペースを介したNFSマウント

LinuxでNFSを使用できますか?ネットワークネームスペース

これはまだ意味がありますか?カーネルのソースコードで私が見つけた唯一の関連はコミットでした。7e3fcf61abde nfs: ネットワーク名前空間間でマウントを共有しません。これは私にとってあまり意味がありません。

答え1

はい、しかし標準のデフォルト(現在)NFSインストールツールは使用しません。

setns以下は、ネットワーク(およびマウント)ネームスペースでNFSマウントを実行するためのいくつかのコード例です。

https://github.com/Netflix/titus-executor/blob/564624ebfe293681a4f599175efb7ab12f40508c/mount/mount.c

答え2

あなたの質問には、カーネルNFSが導入されるまでカーネルレベルで分離され、関連していない2つの異なる名前空間が含まれています。ファイルシステムのマウントは、マウントネームスペースによってオーバーライドされます。現在の(制限された)理解は、NFSボリュームがネットワーク経由でマウントされている場合、プロセスをこのマウントの名前空間に結合し、ネットワーク名前空間を結合/変換するとNFSマウントが困難になることです。同じNFSマウントを同じNFSサーバーに接続できます。このマウントネームスペースを使用するプロセスで使用されているネットワークネームスペースに応じたIPアドレス。これは混乱しているだけでなく、そうかもしれません。これがLinuxがそのようなプロセスに対してNFSマウントを放棄する理由です。

したがって、原則として、マウントとネットワークの名前空間は独立しています。しかし、NFSのようなものは特定の依存関係や制限を課します。この場合、ユーザースペースNFSが影響を受けます。

関連情報