備份還原後的系統啟動修復

2021-07-14 23:14:59 字數 1898 閱讀 1660

最近在看筆記本的備份與還原,現在大多數的筆記本都採用的

efi型別的主機板以及

gpt磁碟分割槽格式,由於還原需要重新劃分分割槽或格式化磁碟,還原後的磁碟簽名、guid、分割槽guid、偏移等都可能發生改變,所以需要手動修改

efi啟動選項,才能保證還原過後系統能夠正常啟動。

設定efi

選項的具體做法是,首先使用

diskpart

命令列掛載

efi系統分割槽,這個分割槽一般都是

100m

,如分配到

h盤,然後使用

bcdedit

命令將系統啟動項、啟動管理器選項分別之前合適的分割槽。要設定啟動選項,必須找到

bcd檔案,一般對於

efi系統,

bcd檔案的路徑都比較固定,如

h:\efi\microsoft\boot\bcd

。設定啟動管理器選項的命令列如下:

bcdedit /store h:\efi\microsoft\boot\bcd/set device partition=h:

通過實驗發現,上面這個命令在傳統的

bios/mbr

系統上能夠起作用,但是對於

efi/gpt

系統並不能設定啟動裝置為

h:盤,原因是

efi/gpt

的啟動設定儲存在了主機板韌體

firmware

中了,所以需要改為命令:

bcdedit /set device partition=h:

假設系統分割槽為

c,要是還原後系統從

c啟動,需要執行的命令列如下:

bcdedit /store h:\efi\microsoft\boot\bcd/set device partition=c:

bcdedit /store h:\efi\microsoft\boot\bcd/set osdevice partition=c:

雖然以上兩個命令在大多數情況都是可行的,但是有時

bcd中並不包含

這個預設系統啟動選項,通過觀察發現,如果不存在

則往往存在

選項指向當前的啟動系統,因此可以使用

替換呼叫以上的命令。然而,這還有可能失敗,這時就需要找到備份時系統所在的啟動選項進行設定了,可先呼叫「

bcdeidt /store h:\efi\microsoft\boot\bcd /enum all

」檢視所有已存在選項,然後找到描述資訊為備份時系統的相關資訊,如一般預設的是

」windows 7」

、」windows 8」

等,然後設定該啟動也可以從

c盤啟動。

以上只是還原後修復啟動項的最簡單方法,如果要做到準確無誤,就需要在備份時記錄備份的各個磁碟、分割槽的

guid

、磁碟簽名、分割槽偏移等資訊,然後在還原後,將所有包含備份磁碟、分割槽的

guid

資訊改為新的磁碟、分割槽

guid

,這樣不僅能夠保證系統能夠正常啟動,還可以修復系統休眠、系統恢復等其他啟動選項。具體做法這裡就不詳細介紹了,有需要的可以聯絡本人。

在測試了幾台筆記本後,如dell、hp、msi等,發現還原後f3、f8等一鍵還原無法使用了,開機按f8後,啟動報錯,錯誤碼為0xc0000225,意思是找不到啟動裝置,但是通過windows的系統設定中,可以選擇重啟並成功進入系統恢復介面,之前也有發現f8進入的一鍵還原介面,和通過windows系統設定重啟進入的系統恢復介面是一樣的。通過掛載efi系統分割槽、並分析檔案、目錄結構發現,在efi系統分割槽中還藏有另外乙份bcd,如hp機器中的h:\efi\hp\boot\bcd,dell機器中h:\efi\dell\boot\bcd,通過手動修改其中的啟動選項,可發現f8一鍵還原已經可用。有興趣的朋友可以自己試試看。

本文出自 「jsl_mes」 部落格,請務必保留此出處

檔案系統啟動修復

1 指定 boot目錄所在的分割槽 grub set root hd0,msdos1 2 載入核心檔案,並以唯讀的方式載入根分割槽 3 指定initramfs檔案 grub initfd initramfs 4.18.0 80.e18.x86 64.img4 啟動 grub boot5 進入系統後重...

Ubuntu 10 04 雙系統啟動修復

在ubuntu系統之後安裝其他系統,會將ubuntu的grub破壞掉,導致非linux系統無法啟動,提示系統所在的分割槽不存在。下面是一些本人實驗過的修復方法。如果你能進入ubuntu,那麼恭喜,您只需敲入一句命令即可 情景1 原來的系統是xp,然後在空分割槽安裝了ubuntu10.04,雙系統可以...

完美修復xp vista雙系統啟動項

我的愛機是在c盤安裝的xp系統,然後在d全新安裝的vista系統,這樣裝好後啟動選單有兩個系統可以選擇進入,我估計不少人是這樣安裝的。後來我的xp系統出了些問題,我用ghost恢復後,啟動項被破壞,只能進入xp系統,無法進入vista系統,我看到論壇上不少人是這樣的狀況。首先,按照論壇裡面的介紹 1...