ESP在错误的磁盘上使用Windows / Ubuntu双启动


1

我有一台笔记本电脑,配有硬盘和Windows 8预装。我已经用SSD替换了硬盘驱动器,并将硬盘驱动器放在光学托架的位置,并带有optibay。我之后在SSD和Ubuntu上安装了新的Windows。

我的问题是,当从GRUB启动到Windows时,我经常收到错误消息:

错误:不是有效的根设备。

这并不总是发生,但大约一半的时间。发生这种情况时,如果我进入UEFI引导设置并更改引导顺序以使Windows领先于Ubuntu(GRUB),则Windows仍可引导。在这种情况下,当然,我只能启动到Windows,如果我想启动Ubuntu,我必须回到启动设置并更改订单。真烦人

(这已经发生了很长一段时间,但是现在我真的厌倦了它,因为我必须经常在两个操作系统之间切换。)

我已经调查了这个问题,事实证明,由于某些原因,当我在SSD上安装Windows时,它仍然决定使用已经在HDD上创建的ESP。Ubuntu也在sdb1上注册了同样的ESP,但也在sda3上创建了自己的ESP。

当我启动到Ubuntu时,/ dev / sda3挂载到/ boot / efi,其中只有Ubuntu启动文件:

> ls -lR /boot/efi
/boot/efi:
total 4
drwxr-xr-x 3 root root 4096 feb 13  2016 EFI

/boot/efi/EFI:
total 4
drwxr-xr-x 2 root root 4096 feb 13  2016 ubuntu

/boot/efi/EFI/ubuntu:
total 3444
-rwxr-xr-x 1 root root     126 aug 20 13:50 grub.cfg
-rwxr-xr-x 1 root root  958328 aug 20 13:50 grubx64.efi
-rwxr-xr-x 1 root root 1271672 aug 20 13:50 MokManager.efi
-rwxr-xr-x 1 root root 1289424 aug 20 13:50 shimx64.efi

sdb1未自动安装。如果我挂载它,我可以看到Ubuntu和Windows的启动文件(太多文件列出所有这些文件):

> ll sdb1/EFI/
total 20
drwxr-xr-x 5 root root 4096 mrt 13  2015 ./
drwxr-xr-x 6 root root 4096 jan  1  1970 ../
drwxr-xr-x 2 root root 4096 mrt 13  2015 Boot/
drwxr-xr-x 4 root root 4096 okt 12  2014 Microsoft/
drwxr-xr-x 2 root root 4096 mrt 13  2015 ubuntu/

ubuntu这里的文件夹似乎也有所有相关文件,除了旧文件:

sdb1/EFI/ubuntu:
total 3444
-rwxr-xr-x 1 root root     126 jan  8  2016 grub.cfg
-rwxr-xr-x 1 root root  958328 jan  8  2016 grubx64.efi
-rwxr-xr-x 1 root root 1271672 jan  8  2016 MokManager.efi
-rwxr-xr-x 1 root root 1289424 jan  8  2016 shimx64.efi

我对这种情况不是很满意,理想情况下我希望HDD(sdb)仅用作数据存储,以便我可以在必要时将其删除。这当然不可能,因为该磁盘上有(更完整的)ESP。

我也怀疑这会导致error: not a valid root device我之前描述的问题。

你怎么建议我理清这种情况?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.