我在 SSD 和 HDD 上安裝了 ubuntu。如何啟動 SSD 上的 ubuntu 而不是 HDD 上的 ubuntu

我在 SSD 和 HDD 上安裝了 ubuntu。如何啟動 SSD 上的 ubuntu 而不是 HDD 上的 ubuntu

我在 HDD 上安裝了 ubuntu 20.04,並將其複製到 SSD 上的新分割區 (/dev/sdb4),然後安裝了 grub。現在,每當我選擇 /dev/sdb4 上的 ubuntu(即 SSD 上的 ubuntu)開機選項時,我的系統都會從 HDD ubuntu 而不是 SSD ubuntu 開機。如何解決這個問題?

在此輸入影像描述

有關如何將 ubuntu 從 HDD 複製到 SDD 的更多信息,請參閱此內容:-如何將 ubuntu 20.10 從 HDD 轉移到 SSD,我已經在 SSD 上安裝了 Windows 10

答案1

在 中/boot/efi/EFI/ubuntu/grub.cfg,有一個檔案系統 UUID 引用包含/boot目錄/檔案系統的任何分割區。 GRUB 使用它來尋找真實的/boot/grub/grub.cfg,其中包含對 Ubuntu 檔案系統的進一步基於 UUID 的參考。

當您將 Ubuntu 分割區複製到 SSD 時,它也會複製檔案系統 UUID。因此,您有兩個具有相同 UUID 的檔案系統,並且在搜尋該 UUID 時,GRUB 碰巧首先查看 HDD。

如果您不再需要 HDD 上的副本,則應變更 HDD 上副本的 UUID,使其不再與 GRUB 所尋找的內容相符。更改檔案系統 UUID 的命令特定於每種檔案系統類型:看到這個問題適用於多種檔案系統類型的適當命令。

或者,您可以變更 SSD 上 Ubuntu 檔案系統的 UUID,然後在基於 SSD 的安裝上將所有對該 UUID 的參考替換為新的 UUID。您必須至少編輯/boot/efi/EFI/ubuntu/grub.cfg/boot/grub/grub.cfg、 ,/etc/fstab也可能編輯/etc/initramfs-tools/conf.d/resume,然後在 SSD 上重新產生 initramfs 檔案。這需要更多工作,但透過在硬碟上保持原始檔案不變,如果您犯了嚴重錯誤,您將能夠再次嘗試複製。

相關內容