如何在 Windows、Linux 和 ESXi 上掛載 VMFS
有時您可能需要在 Linux、Windows 或其他 ESXi 主機上掛載 VMFS 資料存放區。VMFS 是由 VMware 所開發的檔案系統,其他作業系統並未原生支援(僅支援 ESXi 作業系統)。這篇部落格文章將說明如何在不同情境下掛載 VMFS,以及各種方法的限制。
如何在 Linux(Ubuntu)上掛載 VMFS 檔案系統
若發生硬體故障,您有幾種處理方式。在災難還原過程中,您可能需要將包含 VMFS 資料存放區的磁碟掛載至另一台 ESXi 伺服器。您也可能需要將 VMware VMFS 檔案系統掛載至 Linux 機器,以便複製虛擬機器資料以進行還原。您也可以在 Windows 上掛載 VMFS,但此功能僅限於 VMFS 3,該版本已過時,且在現代 vSphere 環境中已不再使用。 硬體故障的例子包括 ESXi 伺服器的主機板損壞,或是儲存控制器(例如 RAID 控制器)受損等情況。
若您使用獨立的 SCSI 或 SAS(串列連接 SCSI)磁碟,或採用 RAID 1 作為直接連接儲存裝置,則無需額外步驟即可將磁碟連接至已安裝 SAS 控制器的另一台機器。若您使用 RAID 10、RAID 0 或其他陣列類型,則需使用相同的 RAID 控制器,並在 Linux 機器上安裝驅動程式,才能偵測到連接磁碟所組成的 RAID 卷。
註: RAID 1 和 RAID 10 是最可靠的 RAID 選項,但 RAID 1 是最容易進行資料復原的。使用 RAID 5 和 RAID 6 有許多缺點,包括可靠性較低。不建議在生產環境中使用非 RAID 磁碟。
在開始之前
在本範例中,我們有一台 ESXi 主機,配備三個資料存放區,其位置皆位於獨立的磁碟上,為示範之用。
- 資料儲存庫000 為空。此資料存放區的位置是系統磁碟,其中包含 ESXi 系統分割區。ESXi 已安裝在此磁碟上。
- Datastore10a 位置位於 VMFS 6 卷上,並包含一個 Windows 虛擬機器.
- 資料庫11 位置位於 VMFS 5 卷上,並包含一份 Windows 虛擬機器 那叫做 Win-VM.
Ubuntu 20.04.3 是一台 Linux 機器,我們將在上面掛載 VMFS 檔案系統。我們透過 資料儲存庫11 以及 資料存放區 10a 到 Linux 電腦上。Linux 發行版並未包含與 VMFS 配合運作所需的驅動程式。因此,您需要安裝 vmfs-tools這是一個免費套件,安裝完成後,即可將 VMFS 以唯讀模式掛載。
如何在 Ubuntu 中掛載 VMFS 5
- 以 root 身分執行指令。使用
sudo -i以取得安裝 VMFS 工具的需求,即 root 權限。 - 安裝 vmfs-tools 來自 Ubuntu 套件儲存庫:
apt-get install vmfs-tools
已安裝的版本為 vmfs-tools 是 0.2.5-1build1 就我們的情況而言。
- 建立一個將用作掛載點的目錄:
mkdir /mnt/vmfs
- 使用 VMFS 檢查磁碟和分割區的名稱:
fdisk -l
我們的磁碟上包含一個 VMFS 5 分割區 /dev/sdb 而所需的分區是 /dev/sdb1
VMFS 6 分割區是 /dev/sdc1
如您在螢幕截圖中所見,分區類型是 VMware VMFS. 顯示唯一的磁碟識別碼。
註: 您可以使用 分開 若要檢視大於 2 TB 的 GPT 分割區:
parted -l
- 讓我們將 VMFS 5 分割區掛載到 /mnt/vmfs/ 目錄:
如何在 Ubuntu 中掛載 VMFS 6
- 建立一個目錄,用作在 Linux 中掛載 VMFS 6 的掛載點:
mkdir /mnt/vmfs6
註: 如果您嘗試在 Linux 中使用 vmfs-fuse,您會收到錯誤訊息,因為 vmfs-fuse 支援 VMFS 3 和 VMFS 5,但不支援 VMFS 6。在此情況下,會顯示以下訊息:
VMFS:不支援的版本 6
>無法開啟檔案系統
您需要安裝 VMFS6-tools 其中包含 vmfs6-fuse 用於在 Linux 中掛載 VMFS 6。您可以找到 VMFS6-tools 在提供 deb 套件的網站上: https://packages.debian.org/sid/vmfs6-tools
- 下載 VMFS6-tools 的最新版本:
wget http://http.us.debian.org/debian/pool/main/v/vmfs6-tools/vmfs6-tools_0.1.0-3_amd64.deb
- 安裝已下載的 deb 套件:
dpkg -i vmfs6-tools_0.1.0-3_amd64.deb
註: libc6 >= 2.28 必須安裝 VMFS6-tools。如果您使用的是 Ubuntu 18,可能會因這個原因而在安裝過程中遇到錯誤。
- 現在您可以在 Ubuntu 20 上掛載 VMFS 至 /mnt/vmfs6 使用以下指令:
vmfs6-fuse /dev/sdc1 /mnt/vmfs6
VMFS 6 檔案系統已成功在 Ubuntu 20 上以唯讀模式掛載。現在您可以將虛擬機器檔案複製到所需的位置。您可以透過以下方式在 Linux 上暫時執行已複製的虛擬機器: VMware 工作站 安裝在 Windows 電腦上,並使用 VMware 工作站或 Hyper-V,直到您的 ESXi 伺服器硬體修復完畢或新伺服器送達為止(如果您沒有其他 ESXi 主機來執行這些虛擬機器)。
請注意,當您將 VMFS 檔案系統中的精簡配置磁碟複製到 ext4、NTFS 或其他傳統檔案系統時,虛擬磁碟檔案所佔用的空間將與厚配置磁碟相同。因此,請務必預留足夠的磁碟空間。
如何在 Linux 中掛載包含多個擴展區的 VMFS 卷
讓我們來看一個更複雜的範例,說明在 Linux 中掛載由兩個延伸區塊組成的 VMFS 卷宗。我們有兩顆大小相同的磁碟,它們被合併成單一的 VMFS 卷宗(資料儲存庫12).
- 檢查分割區的名稱:
fdisk -l
或
parted -l
我們的兩個 VMFS 區段的位置在 /dev/sdd1 以及 /dev/sde1 分區。
- 在掛載由多個延伸區塊組成的 VMFS 檔案系統時,請使用 vmfs6-fuse 使用以下格式的指令:
vmfs6-fuse exent_1 extent_2 extent_n mount_point
在我們的情況下,指令是:
vmfs6-fuse /dev/sdd1 /dev/sde1 /mnt/vmfs6
如下方截圖所示,由多個擴展區組成的 VMFS 6 檔案系統已成功掛載至 Ubuntu。
現在您已經知道如何在 Linux 中根據不同情境掛載 VMFS。
在新 VMware ESXi 主機上掛載 VMFS 分割區
您可以將 VMFS 資料存放區掛載至不同的 ESXi 主機。當其中一台 ESXi 主機發生故障,而您需要從 VMFS 分割區複製資料或執行儲存於該分割區的虛擬機器時,此選項便十分實用。您甚至可以在伺服器上執行新的 ESXi 安裝程序,以便掛載現有的 VMFS 資料存放區。該 ESXi 安裝流程 此方法快速且簡單,安裝此虛擬機器管理程式通常只需幾分鐘。
這種掛載現有 VMFS 資料存放區的方法,其優勢在於您使用的是原生軟體,且支援最新版本的 VMFS 進行讀寫操作。讓我們來看看如何掛載已存在於另一台 ESXi 主機上的 VMFS 資料存放區。
- 將具有 VMFS 分割區的實體磁碟連接至安裝了 ESXi 的實體伺服器。
- 請在網頁瀏覽器中輸入您已掛載 VMFS 分割區(或多個分割區)的磁碟或磁碟陣列之 ESXi 主機的 IP 位址,以登入 VMware Host Client。本範例使用 ESXi 7.0。
- 前往
Storage > Devices並檢查所需磁碟是否顯示。點擊Rescan如果磁碟未自動顯示。
- 前往
Storage > Datastores並檢查現有的 VMFS 資料存放區是否已掛載。若顯示成功,請開啟Datastore browser並複製所需的檔案。您還可以在此 ESXi 主機上尋找 VMX 檔案、註冊虛擬機器並執行它們。若您右鍵點擊 VMFS 資料存放區,即可看到Mount/Unmount右鍵選單中的選項。
如何在 Windows 中掛載 VMFS
在 Windows 中掛載 VMFS 的功能受到限制,因為現有的工具僅能掛載 VMFS 3,而該版本已過時,且在現代的 vSphere 環境中已不再使用。VMFS 3 僅在 5.0 之前的 ESXi 版本中受到支援。VMware vSphere 7.0 不支援 VMFS 3。
截至本文撰寫時, VMFS 5 與 VMFS 6 被廣泛使用。
然而,如果您需要在 Windows 中掛載 VMFS,且檔案系統為 VMFS 3,您可以使用以 Java 編寫的開源 VMFS 驅動程式。此驅動程式最後一次更新於 2010 年,且需要在 Windows 中安裝 Java。
- 將一個或多個磁碟連接到 VMFS 資料存放區,並將其連接到您的 Windows 電腦。
- 請透過以下連結下載開源 VMFS 驅動程式: https://code.google.com/archive/p/vmfs/
- 從下載的檔案中解壓縮
fvmfs_r95_dist.zip將檔案歸檔至自訂目錄,例如, C:VMFS - 在 Windows 命令提示字元 (CMD) 中,前往您解壓縮開源 VMFS 驅動程式的目錄,並執行
fvmfs.jar這是一個 Java 應用程式。
cd C:VMFS
java -jar fvmfs.jar
- 開啟
Computer Management在 Windows 中(右鍵點擊My Computer > Manage) 並前往Disk Management. 請確認哪個編號對應至您的 VMFS 資料存放區,例如: 索引 1 – 磁碟 1. 對於 VMFS 驅動程式而言,此數字的解釋為 .PhysicalDrive1 - 在主控台中查看此磁碟的相關資訊:
java -jar fvmfs.jar .PhysicalDrive1 info
- 請使用 WebDAV 協定分享此磁碟。該
WebClient Service為此目的,必須在 Windows 中啟動該程式。
java -jar fvmfs.jar .PhysicalDrive1 webdav
- 請使用以下命令,在 Windows 中以 VMFS 格式掛載共用磁碟:
net use * http://localhost:50080/vmfs
- 檢查磁碟
Computer Management. 指派磁碟代號後,您可以在 我的電腦 (Windows 檔案總管) 以唯讀模式開啟,以便檢視及複製 VMFS 磁碟區中的檔案。 - 在您完成對已掛載至 Windows 的 VMFS 磁碟區的操作之前,請勿關閉 CMD 視窗。
結論
我們已說明如何在 Linux、Windows 和 ESXi 上掛載 VMFS。掛載現有 VMFS 資料存放區最簡單的方法,是將磁碟掛載至另一台 ESXi 主機。不過,您也可以在 Linux 上以唯讀模式掛載 VMFS,包括最新的 VMFS 5 和 VMFS 檔案系統。此處會使用 VMFS 工具和 VMFS 6 工具。 至於 Windows,現有工具對 VMFS 的支援相當有限,且無法讓您在 Windows 中掛載最新的 VMFS 版本。
在 ESXi 主機發生故障後,透過將檔案從掛載至正常運作電腦的 VMFS 檔案系統中複製出來,進行手動虛擬機器還原,可能會相當耗時。若您使用專業的備份解決方案,例如 NAKIVO Backup & Replication 該解決方案支援主機層級的虛擬機器備份、精簡配置磁碟、虛擬機器即時還原,以及細粒度即時還原。從備份還原虛擬機器資料,通常比手動進行 VMFS 還原更為有效。











