そしてビチオフス

そしてビチオフス

virt-manager 2.2.1を使用して、Arch LinuxホストとKaliゲストの間に共有ディレクトリを作成してみました。

「新しい仮想ハードウェアの追加」→「ファイルシステム」に進みます。

virt-managerのスクリーンショット

「完了」をクリックすると、次のエラーメッセージが表示されます。

Error adding device: unsupported configuration: only supports passthrough accessmode

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/addhardware.py", line 1351, in _add_device
    self.vm.add_device(dev)
  File "/usr/share/virt-manager/virtManager/object/domain.py", line 408, in add_device
    self._redefine_xmlobj(xmlobj)
  File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 417, in _redefine_xmlobj
    self._redefine_xml_internal(origxml, newxml)
  File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 395, in _redefine_xml_internal
    self._define(newxml)
  File "/usr/share/virt-manager/virtManager/object/domain.py", line 999, in _define
    self.conn.define_domain(xml)
  File "/usr/share/virt-manager/virtManager/connection.py", line 612, in define_domain
    return self._backend.defineXML(xml)
  File "/usr/lib/python3.8/site-packages/libvirt.py", line 4048, in defineXML
    if ret is None:raise libvirtError('virDomainDefineXML() failed', conn=self)
libvirt.libvirtError: unsupported configuration: only supports passthrough accessmode

この問題を解決し、共有ディレクトリを持つ方法はありますか?

答え1

ドライバを「Handle」から「Path」に変更する必要がありました。

virt-manager 共有ディレクトリの構成

共有ディレクトリを操作する設定とコマンドは次のとおりです。

仮想管理者から:

  • ドライバー:パス
  • モード:マッピング
  • 書き込み戦略:即時

共有ディレクトリに対してホストに設定された権限:

  • sudo chgrp kvm shared/
  • chmod 770 shared/

ゲストに共有ディレクトリをマウントします。

sudo mount -t 9p -o trans=virtio /hostshare /home/guest/shared

この/hostshare部分がvirt-managerで定義された「ターゲットパス」です。

ゲスト内の共有ディレクトリはにあります/home/guest/shared

答え2

そしてビチオフス

virt-manager 4.0.0では、共有ディレクトリを作成する方法は次のとおりです(まだエラーは発生していません)。

ホストから

  1. ホストに共有ディレクトリを作成します。sudo -u libvirt-qemu mkdir ~/vm/arch_linux/shared

  2. 仮想マシンのvirt-manager GUIで、[ハードウェアの追加]をクリックしてファイルシステムを選択します。

新しい仮想ハードウェアの追加:ファイルシステム

ゲストのインテリア

共有ディレクトリをマウントします。sudo mount -t virtiofs /hostshare ~/shared

「対象経路」について

/hostshareこの例では、これを「ターゲットパス」として使用しています。 virt-managerのXML構成では、このプロパティを「ターゲットディレクトリ」と呼びます。これはゲストオペレーティングシステムへのパスではなく識別子に近いです。

~によると文書:

名前にもかかわらず、ターゲットディレクトリは、マウントする共有ファイルシステムを識別するためにゲスト内で使用されるマウントタグと呼ばれるランダムな文字列です。ゲストの必須マウントポイントと一致する必要はありません。

関連情報