UEFI 電腦上的 Windows 和 Linux 的映像(例如使用 Clonezilla)

UEFI 電腦上的 Windows 和 Linux 的映像(例如使用 Clonezilla)

多年來,我使用 Clonezilla 成功地從託管 Windows 7 或更小版本以及 Ubuntu 和其他作業系統的分割區製作映像。製作圖像並恢復它們對我來說很容易。

但現在隨著 UEFI 的出現,我不確定如何使用 Clonezilla 製作圖像以及如何以正確的方式恢復它們。

我在同一個 GPT 磁碟上運行 Windows 7 和 Ubuntu。兩者都使用 UEFI。

問題是:

  • 如果想要使用 Clonezilla 製作託管 Windows 7 或 8 的分割區的可恢復映像,我是否還必須製作「EFI 系統分割區」和 MRP 的映像?

  • 或者是否不需要製作分割區「EFI 系統分割區」和 MRP 的映像,因為在還原 Windows 和 Ubuntu 的映像後可以重建這兩個分割區(可能使用 Windows 安裝光碟或 Linux 工具)新磁碟?

  • 在新磁碟(例如使用 Clonezilla)上恢復 Windows 7 或 8 (UEFI) 映像的簡單方法是什麼 - 在恢復映像之前我是否必須手動建立其他分割區(“EFI 系統分割區”和 MRP)?

我知道可以克隆孔磁碟,而不僅僅是一個分割區,但這不是我想要的。

提前謝謝了!

答案1

EFI 系統分割區 (ESP)保存 Windows 和 Linux 的引導程式。因此,對其進行備份至關重要。儘管您可以使用緊急工具恢復這兩個引導程序,但從備份中恢復它們可能更容易。另請注意,一些關鍵的啟動訊息(即哪個啟動載入程式)儲存在 NVRAM 中。理論上,恢復這些資訊很容易——如果你知道如何。在 Linux 下,您可以使用該efibootmgr實用程式。我建議將其當前配置儲存在文件中:

$ sudo efibootmgr -v
BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0000,0004
Boot0000* rEFInd (direct)   HD(2,c00,114000,6e49fcaf-d054-47c9-ba69-a668c5ee8192)File(\EFI\refind\refind_x64.efi)
Boot0004* UEFI: Built-in EFI Shell  Vendor(5023b95c-db26-429b-a648-bd47664c8012,)..BO

此範例不會重定向到文件,只是為了描述其內容。系統透過 rEFInd(條目)僅啟動一個作業系統(Linux)Boot0000。該Boot0004條目啟動“內建 EFI shell”(但對於我的電腦來說,這實際上是韌體設定實用程式)。雙重開機系統可能至少還有一個條目。這裡的關鍵點是記錄引導程式的檔案名稱——\EFI\refind\refind_x64.efi在此範例中。如果有必要,您可以使用efibootmgr's選項還原這些條目。-c另請注意,NVRAM 條目透過其 GUID 號(在本例中為 6e49fcaf-d054-47c9-ba69-a668c5ee8192)以及可能的其他硬體標識來引用分區。因此,如果您重新分割或更換磁碟,即使您恢復檔案並efibootmgr完整顯示舊條目,也可能需要重新建立這些條目。大多數電腦都有一些條目,例如此處的「內建 EFI shell」範例,這些條目由韌體管理,通常不應嘗試重新建立或修改。

我假設“MRP”是指 Microsoft 保留分割區。該分區通常不包含任何內容;它被 Windows 分割區工具用作「暫存空間」——或者至少,它是為此目的而保留的。 (我不知道這些工具是否真的將它用於任何用途。)因此,不備份它應該是安全的,但您應該記下它的大小並確保在其位置創建一個新分區。如果您想格外小心,您可以使用dd或類似的工具進行低階備份。我不知道Clonezilla是否會備份這種類型的分割區。

答案2

我尋找過這樣的討論。這個新的 UEFI 事物帶來了改變。我認為,對於 Windows 7 64 位,您必須保存(如果製作分割映像)兩個分割區 fe sda1 和 sda2 才能恢復它們。 Fe sda1是EFI分區(我手動建立的,100MB的分區),sda2是整個系統所在的windows分區。 EFI 很重要,我還沒有找到恢復 Windows 啟動的方法,如果丟失該分割區,您將丟失 Windows 安裝。對於 linux、fe Debian,只需使用即可輕鬆恢復啟動該指令。我還沒有嘗試過恢復由clonezilla保存的那種分區,但我認為它應該可以工作。我正在使用parted magic live usb。所以,我會告訴你它是否有效。

答案3

-c | --create 建立新變數 bootnum 並加入到 bootorder -C | --create-only 建立新變數 bootnum 並且不加入到 bootorder

請注意,這條路線的開關不是很準確嗎?

相關內容