Linux-Mint

無法在另一個驅動器上找到最近安裝的發行版的 GRUB 驅動器,編輯 device.map?

  • April 28, 2019

我在三星 860 EVO 500 GB (dev/sdb) 上執行 Linux Mint 19.1 和 Windows 10,最近添加了 Crucial 英睿達 MX500 1TB (dev/sda) 來試用和使用更多發行版,它們都是分區的。在安裝其他發行版(Kali 和 Parrot)時在 MX500 上安裝 GRUB 失敗後,我嘗試執行

sudo update-grub

它返回以下錯誤:

/usr/sbin/grub-probe: error: cannot find a GRUB drive for /dev/sda1.  Check your device.map.
Found Kali GNU/Linux Rolling (kali-rolling) on /dev/sda1
/usr/sbin/grub-probe: error: cannot find a GRUB drive for /dev/sda1.  Check your device.map.
/usr/sbin/grub-probe: error: cannot find a GRUB drive for /dev/sda1.  Check your device.map.
/usr/sbin/grub-probe: error: cannot find a GRUB drive for /dev/sda1.  Check your device.map.
/usr/sbin/grub-probe: error: cannot find a GRUB drive for /dev/sda3.  Check your device.map.
Found Parrot 4.5 (4.5) on /dev/sda3
/usr/sbin/grub-probe: error: cannot find a GRUB drive for /dev/sda3.  Check your device.map.

檢測到 Mint 和 Windows,沒有返回錯誤。GRUB 手冊頁確實建議編輯 device.map (https://www.gnu.org/software/grub/manual/grub/html_node/Device-map.html),我不知道該怎麼做(我也在 /boot/grub/ 中找不到該文件,它似乎不再存在於 GRUB 2 中),我也不理解https://www.gnu.org/software/grub/manual/grub上的說明/html_node/Device-map.html。我還搜尋了各種論壇,例如建議刪除 grub.cfg 並通過再次更新 grub 或執行來重新生成它

sudo grub-mkdevicemap

所有這一切都沒有奏效。

一條評論詢問了 lsblk 的輸出,所以這裡是:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0 157,2M  1 loop /snap/brave/58
loop1    7:1    0  91,1M  1 loop /snap/core/6531
loop2    7:2    0 152,7M  1 loop /snap/brave/44
loop3    7:3    0  34,8M  1 loop /snap/gtk-common-themes/1122
loop4    7:4    0 155,5M  1 loop /snap/brave/57
loop5    7:5    0  89,3M  1 loop /snap/core/6673
loop6    7:6    0  34,6M  1 loop /snap/gtk-common-themes/818
loop7    7:7    0    91M  1 loop /snap/core/6405
loop8    7:8    0  35,3M  1 loop /snap/gtk-common-themes/1198
sda      8:0    0 931,5G  0 disk 
├─sda1   8:1    0   326G  0 part 
├─sda2   8:2    0  31,3G  0 part 
├─sda3   8:3    0 195,3G  0 part 
└─sda4   8:4    0  15,9G  0 part 
sdb      8:16   0 465,8G  0 disk 
├─sdb1   8:17   0   549M  0 part 
├─sdb2   8:18   0 239,8G  0 part 
├─sdb3   8:19   0     1K  0 part 
└─sdb5   8:21   0 225,5G  0 part /
sdc      8:32   0 931,5G  0 disk 
└─sdc1   8:33   0 931,5G  0 part 

sdc 是我的硬碟,沒有安裝作業系統。sdb2 是 Windows,sdb5 是 Mint。

我現在設法自己確定了問題:我選擇了錯誤的分區表類型。如果要安裝作業系統,請始終將其分區為 MBR(在 GParted 中稱為“msdos”)。現在一切正常,即使在 UEFI 中選擇相同的驅動器,我也可以啟動一切。

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