??virt-manager????應用或軟件包使用???virt-manager???庫來提供虛擬機管理服務。它有一個桌面界面,有助于創建、刪除和管理多個虛擬機。
virt-manager 桌面界面及其組件為各種個人和商業場景提供了靈活的虛擬機管理服務。它是一個自由開源的應用,主要用于 KVM 虛擬機。然而,它也可以支持其他管理程序,如 Xen 和 LXC。
在之前的文章中,我解釋了???virt-manager??。這篇文章介紹了如何在客戶機和主機之間無縫訪問文件和文件夾。
關于 virtiofs 的說明
共享文件和文件夾是由名為 virtiofs 的 libvirt 共享文件系統提供的。它提供了訪問主機上的目錄樹的所有功能和參數。由于大多數 virt-manager 虛擬機的配置都被翻譯成 xml,所以共享文件/文件夾也可以通過 XML 文件來指定。
在 virt-manager中共享文件夾
首先,確保你的客戶機關閉了電源。在 virt-manager GUI 中,選擇虛擬機,點擊“打開Open”,彈出控制臺設置。
打開設置
點擊工具條上顯示虛擬硬件細節的圖標。然后點擊左邊面板上的“內存Memory”。
選擇選項 “啟用共享內存Enable shared memory”。點擊應用。
啟用共享內存選項
然后點擊底部的 “添加硬件Add hardware”。
點擊添加硬件
在添加新硬件的窗口中,從左邊的面板上選擇 “文件系統File system”。
然后在 “細節Details” 標簽中選擇 “驅動程序Driver” 為 “virtiofs”。點擊 “瀏覽Browse?>?瀏覽本地browse local”,選擇你想在客戶機內訪問的主機路徑。
在目標路徑中,輸入你想要的任何名字。這只是一個文件標簽,將在掛載時使用。
所以,如果我想訪問???Pictures/Screenshots???文件夾(??/home/debugpoint/Pictures/Screenshots??),示例設置可以是這樣:
添加一個新的文件系統硬件
下面是上述配置的 XML 設置。你可以在 XML 標簽中找到它。
<filesystem type="mount" accessmode="passthrough"><driver type="virtiofs"></driver><binary path="/usr/libexec/virtiofsd"></binary><source dir="/home/debugpoint/Pictures/Screenshots"></source><target dir="mount_tag_pictures"></target><alias name="fs1"></alias><address type="pci" domain="0x0000" bus="0x08" slot="0x00" function="0x0"></address></filesystem>
點擊 “完成Finish”。在 virt-manager 主窗口中,右鍵點擊虛擬機,點擊運行,啟動虛擬機。確保點擊“顯示圖形控制臺show the graphical console”(如果虛擬機沒有顯示,點擊工具條上的監視器圖標)。
在客戶機中,創建一個你想掛載主機文件夾的文件夾。在這個例子中,我使用了???/mnt/pictures??。
sudo mkdir /mnt/pictures
最后,使用你在上述步驟中創建的標簽將主機文件夾掛載到這個新文件夾。使用下面的命令在終端做這件事。確保根據你的系統改變下面命令中的標簽和文件夾名稱。
sudo mount -t virtiofs mount_tag_pictures /mnt/pictures
現在你可以在 virt-manager 中的主機和客戶機之間的無縫地瀏覽文件夾和添加/刪除項目。
從 virt-manager 客戶機訪問主機文件
總結
我希望這個方案能幫助你從客戶機上訪問主機文件和文件夾。記住,你的用戶 ID,也就是用來啟動 virt-manager 應用的用戶,應該有同樣的權限來訪問主機文件夾。