Uninstall Linux from dual boot system 雙系統安全移除
常常安裝雙系統的使用者都知道,安裝雙系統(Win + Linux Distributions)比較簡單且安全的方式是先安裝 Windows 系統後在安裝 Linux 系統,詳細為何不再贅述。
這次主要是紀錄當要把 Linux 系統移除時,要如何做才安全正確。
這件事情發生不止一次,我決定把它記錄下來:
曾經都很單純的以為只要把 Linux 那些 ext4 的磁區刪除,就可以回復到只剩 Winodows 系統。事實上並非如此。我們如果單單照著這樣做可能會出現:
grub rescue >
這是為什麼呢?為什麼無法刪除 Linux 系統後竟然連 Windows 都進不去?關鍵在於一開始雙系統是如何設定開機選單的。
主開機紀錄(Master Boot Record,MBR),是開機讀取硬碟的第一個 sector,每個作業系統都有自己的 boot loader,安裝 Linux 後則是常用的 grub/grub2 寫入 MBR,設定開機程式選單引導到不同 filesystem 的 loader 載入核心。也因此如果直接把 Linux filesystem 刪除,grub 找不到對應正確的 boot loader 位址就會進入 rescue mode。
(source: VBird 鳥哥的私房菜)
當然我們可以利用尋找 set (hd0, msdos3)/boot/
之類的方式再次設定回正確的 Windows boot loader。但是有更好的方式。
我們可以在移除 Linux 分割區之前,先用可以寫入 MBR 的工具把預設的 MBR loader 改回 Windows,像是 EasyBCD 可以選擇安裝 Windows 7 Bootloader 到 MBR 後, 寫入 MBR。
每顆硬碟最前面區塊含有 MBR 或 GPT 分割表的提供 loader 的區塊,至於兩者的差異在於 MBR 只能包含 4 個 primary partition,所以如果要切更多磁區就要設定成 logical,還有不支援 2TB以上的硬碟等等。GPT 是比較新的分割表,優劣不贅述,但 UEFI 勢必都要搭配 GPT 服用。
謝謝分享!