最近、KVM / QEMU / libvirtの最近のバージョンでパススルーファイルシステムのサポートの実験を開始しました。ファイルシステムを読み取りアクセスに使用できるようにすることは「うまくいきました」が、書き込みアクセスがどのように機能するかについては少し困惑しています。ゲストにファイルシステムをマウントした後:
# mount -t 9p -o trans=virtio /fs/data /mnt
modeがある場合、既存のファイルを変更できますo+w
。
# cd /mnt/work
# ls -l foo
-rw-rw-rw-. 1 root root 17 Dec 20 11:16 foo
# cat foo
this is line one
# echo this is line two >> foo
# cat foo
this is line one
this is line two
しかし、ディレクトリのアクセス許可に関係なく、新しいファイルまたはディレクトリを作成できません。
# ls -ld /mnt/work
drwxrwxrwx. 2 root root 4096 Dec 20 11:16 /mnt/work
# cd /mnt/work
# touch bar
touch: setting times of `bar': No such file or directory
# mkdir bar
# mkdir: cannot create directory `bar': Operation not permitted
私が見つけたドキュメント(これなど)は、この問題を明示的に扱っていません。Serverfaultの誰かが、ホストファイルシステムへのゲストのユーザーに書き込みアクセスを許可できるパススルーファイルシステムのセットアップを手伝ってくれることを望んでいます。
ファイルシステムを読み取り/書き込みでマウントしましたか?ファイルを作成できますか?ルートまたは通常のユーザーとしてファイルを作成していますか?
—
ヤヌストロエルセン
これを解決できましたか?ゲストのマウントされたホストfsパスに書き込めないという同様の問題があります。
—
Shoan
私はこれに関して実際に進歩を遂げたことはありません。私にとってはちょっとしたニッチなアプリケーションでした...私は通常、ローカルファイルシステムへのアクセスが役立つ場所でKVMゲストを実行していません。私は実際に時々この機能が必要なデスクトップでVirtualBoxを実行しました。
—
larsks
物理ホストまたはゲストにselinuxアラートが表示されますか?
—
c4f4t0r
これは役立つかもしれませんか?linux-kvm.org/page/9p_virtio
—
ダニラ・ラドナー