
我在外部硬碟上安裝了linux,但是當拔掉外部硬碟時,我無法存取Windows(出現了grub,但grub在外部硬碟中),只有當我將外部硬碟放回去時才會出現grub並且我選擇Windows,然後在Windows上刪除HD,Windows即可正常運作。有沒有辦法像以前一樣正常使用windows而不需要插入HD?
答案1
顯然您已將 grub 安裝到內部磁碟機上。您可能在外部磁碟機上有其模組和 grub.cfg,但引導程式碼(或 UEFI 系統的 EFI 二進位檔案)安裝到內部磁碟機的 MBR(以及 MBR 後間隙/BIOS 開機分割區)。我敢打賭,當您拔下外部磁碟機時,您會看到 grub RESCUE shell。
解決方法是重新正確安裝grub。例如,如果
/dev/sda
:內部 Windows 驅動器/dev/sdb
:外部Linux驅動器
你所做的可能是:
grub-install /dev/sda
,它由隱含選項組成--boot-directory /boot
,而/boot
on/dev/sdb
你該做的是:
grub-install /dev/sdb
請注意,/dev/sdX 命名可能會在引導期間變更。因此,在執行此命令之前,請務必檢查lsblk
或findmnt
確認哪個磁碟機是 Linux 磁碟機。
然後修復內部 (Windows) 磁碟機的 MBR:https://technet.microsoft.com/en-us/library/cc749177%28v=ws.10%29.aspx