我在 Samsung 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。
答案1
我现在设法自己确定问题:我选择了错误的分区表类型。如果要安装操作系统,请始终将其分区为 MBR(在 GParted 中称为“msdos”)。现在一切正常,即使在 UEFI 中选择相同的驱动器,我也可以启动一切。