Linux

如何將第二個 linux 發行版(xubuntu)添加到 grub?

  • December 3, 2019

我在 pcie ssd 上安裝了 Xubuntu,以便與 Mint 並排使用。但是,我仍然想在其目前的 SATA 固態硬碟上使用 Mint。理想情況下,我想確保 Xubuntu 安裝是可引導的(我還不能),然後在 Grub 中為每個安裝一個條目。我有一個用於執行任何 grub 命令或生成更多資訊的引導修復 USB。

我已經嘗試了幾種不同的 grub 安裝組合,但到目前為止還沒有運氣。假設我希望我目前的驅動器(Mint/SATA)來處理 grub 管理,是否有一種規範的方法可以將 xubuntu 發行版添加到 grub?

這是我的 lsblk 輸出(不包括 snap/loop 設備)…

sda           8:0    0 111.8G  0 disk 
└─sda1        8:1    0 108.4G  0 part /
sr0          11:0    1  1024M  0 rom  
nvme0n1     259:0    0   477G  0 disk 
└─nvme0n1p1 259:1    0   477G  0 part /media/alpha/xubuntu

sda1 是我目前的 Mint 發行版所在的位置。

更新 grub 的輸出:

$ sudo update-grub
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/50_linuxmint.cfg'
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.15.0-66-generic
Found initrd image: /boot/initrd.img-4.15.0-66-generic
Found linux image: /boot/vmlinuz-4.15.0-58-generic
Found initrd image: /boot/initrd.img-4.15.0-58-generic
Found linux image: /boot/vmlinuz-4.15.0-20-generic
Found initrd image: /boot/initrd.img-4.15.0-20-generic
done

編輯:似乎原因是其中一個系統通過舊版 BIOS 而不是 UEFI 引導。這導致 Mint 無法檢測到 nvm 上的輔助系統。

所以對於有類似問題的人來說:確保你所有的 Linux 安裝都使用相同的引導方法。如果修復此問題沒有幫助,請查看本文的其餘部分。

  • 引導您的兩個 Linux 安裝並應用以下步驟 - 一個接一個,因為在其中一個中安裝新核心時,將呼叫 update-grub 並可能覆蓋您在另一個中所做的設置。
  • 編輯 /etc/default/grub 並設置 GRUB_TIMEOUT_STYLE=menu 以使菜單出現,並將 GRUB_TIMEOUT 設置為 10(秒)
  • 執行sudo update-grub此命令會​​將您目前執行的 Linux 的所有核心安裝到菜單中。之後,它會添加它在目前可用磁碟上找到的所有其他 Linux 安裝的所有核心。檢查它是否檢測到所有可用的系統!
  • 如果上述方法沒有幫助,請執行sudo grub-install /dev/sda將 grub 安裝到 SSD 中。但很可能這不會改變任何事情,因為它已經自動完成了。

最後呼叫的 Linuxupdate-grub將位於頂部,如果GRUB_DEFAULT=0. 這可能會改變,因為無論何時安裝新核心都會自動呼叫 update-grub。

如果由於某種原因自動檢測不起作用,請編輯/etc/grub.d/文件。但是您必須update-grub始終從您修改這些文件的 Linux 中獲取。當安裝新核心後自動呼叫 update-grub 時,這可能是一個問題。

如果您希望 UEFI 引導菜單選擇要引導的 Linux,只需這樣做:

  • 引導薄荷
  • sudo grub-install /dev/sda
  • 啟動Xubuntu
  • sudo grub-install /dev/nvme0n1

這將導致 grub 中的優先級不同,具體取決於 UEFI 從哪個磁碟啟動。可以肯定的是,之後不要忘記 update-grub。

PS。如果由於某種原因自動檢測不起作用(使用 nvme …),那麼您必須/etc/grub.d

聚苯乙烯。如果它仍然無法正常工作,並且您想從 Live CD 中嘗試。您將需要 chroot 進入已安裝的系統。這不是微不足道的。讓它為所有 Linux 安裝安裝菜單條目可能會更加困難。

順便說一句,我不確定 Linux 如何處理使用grub-install /dev/sda. grub 菜單和 grub 引導扇區程式碼之間的連接是如何工作的?

引用自:https://unix.stackexchange.com/questions/552709