2021-05-12 14:32:11
VMware Workstation/Fusion 中安裝 Fedora 23/24 及其他 Linux 系統時使用 Open VM Tools 代替 VMware Tools 增強工具的方法
VMware Workstation/Fusion 分別是 Windows/Linux 和 macOS 下面對應的桌面虛擬化軟體。過去,在 VMware 中安裝了作業系統虛擬機器後,需要在虛擬機器中再安裝 VMware Tools 增強工具用來實現宿主機和虛擬機器之間的檔案共用、虛擬機器顯示解析度自適應調節、虛擬機器顯示能力增強及 3D 加速等功能。但隨著 Linux 系統核心及周邊環境的不斷發展,目前 VMware 已經不再推薦在 Linux 虛擬機器中安裝 VMware 官方的增強工具了,轉而推薦使用者使用 Open VM Tools。Open VM Tools 是 VMware 將自己原有的虛擬機器增強工具(VMware Tools)大部分開源後由社群來繼續開發完善形成的 Linux 開源虛擬機器環境增強工具包,不僅支援 VMware 虛擬化環境架構,也能支援 Parallels 虛擬化環境架構(類似 VMware 的另一款商業桌面虛擬化產品),以後也可能會支援諸如 KVM/Xen 等虛擬化架構。Open VM Tools 可以隨 Linux 核心的升級而保持最新版本支援,徹底解決過去 VMware 升級過慢,跟不上 Linux 核心及周邊相關軟體升級節奏導致虛擬機器增強效果消失的問題(有時需要使用者自己對 VMware Tools 原始碼打修補程式重新編譯安裝,非常繁瑣)。
這裡以 macOS 環境下的 VMware Fusion 為例,安裝 Fedora 24 Linux 後,預設情況下 Fedora 就已經安裝好了 Open VM Tools 了,可以通過以下命令檢視:
$ rpm -qa | grep open-vm
如果已安裝了 Open VM Tools,會返回如下資訊:
open-vm-tools-desktop-10.0.5-4.fc24.x86_64
open-vm-tools-10.0.5-4.fc24.x86_64
如果發現系統中沒有安裝 Open VM Tools,可以用如下命令來安裝:
# dnf install open-vm*
安裝好 Open VM Tools 後,虛擬機器的顯示增強、3D 加速、解析度自適應調節等都已具備了,但是虛擬機器與宿主機之間的檔案共用功能預設並沒有開啟,即使你在宿主機中設定了檔案共用功能並啟用。其實 Open VM Tools 是支援 VMware 自己的 hgfs 檔案共用系統的,但需要手動在虛擬機器中執行相關命令並做少量設定才行。這裡我的思路是在開機自啟動指令碼 /etc/rc.d/rc.local 中加入共用檔案掛載命令,從而實現開機後檔案共用自動可用。使用如下命令編輯自啟動指令碼:
# vi /etc/rc.d/rc.local
在裡面加入如下內容:
#!/bin/bash
vmhgfs-fuse -o allow_other .host:/$(vmware-hgfsclient) /mnt/hgfs
然後確保 /etc/rc.d/rc.local 具備可執行許可權:
# chmod a+x /etc/rc.d/rc.local
重新啟動虛擬機器系統後就會發現共用資料夾已經自動掛載到 /mnt/hgfs 目錄了。這裡由於用到了 Open VM Tools 提供的一個 vmware-hgfsclient 命令,所以可以自動識別發現你所設定的 VMware 共用資料夾名稱,不需要自己在掛載命令中指定(當然,你要自己在命令中指定也可以)。掛載成功後,我們用 mount 命令檢視一下當前所有掛載的檔案系統和相關目錄:
$ mount
會發現反饋結果中有這麼一行:
vmhgfs-fuse on /mnt/hgfs type fuse.vmhgfs-fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
這說明,我們其實也可以用 mount 命令來掛載 VMware 的共用資料夾,只不過共用檔案系統的名字要指定為 fuse.vmhgfs-fuse,這個在 Open VM Tools 的文件中並沒有直接提及而已。
相關文章