我在笔记本电脑的另一个 SSD 上安装了 Ubuntu 16.04。hd1 上安装了 Windows 10,hd0 上安装了 Ubuntu。
我想使用 grub 进行双启动,并且按照教程将 Windows 条目添加到 grub 启动菜单中,但是在启动 Ubuntu 后,包含 Windows 10 的磁盘甚至没有出现。
输出自lsblk
:
NAME FSTYPE SIZE MOUNTPOINT LABEL
sda 447.1G
├─sda4 vfat 191M /boot/efi
├─sda2 ntfs 382.1G
├─sda5 ext4 40.4G /home
├─sda3 swap 14.9G [SWAP]
└─sda1 ext4 9.5G /
sda
是 Ubuntu 的磁盘,没有出现其他磁盘。我该怎么做才能手动检测我的 Windows 磁盘?
答案1
我没有遇到过这个特定问题,但是从 grub2 手册中(假设这是你的引导加载程序):
5.3.4 DOS/Windows5.3 一些操作系统特定问题的警告
GRUB 无法直接启动 DOS 或 Windows,因此您必须链式加载它们(请参阅链式加载)。但是,它们的引导加载程序存在一些严重缺陷,因此仅链式加载它们可能不起作用。为了克服这些问题,GRUB 为您提供了两个辅助函数。
如果你在非第一块硬盘上安装了 DOS(或 Windows),则必须使用磁盘交换技术,因为该操作系统无法从第一块硬盘以外的任何磁盘启动GRUB 中使用的解决方法是命令 drivemap(参见 drivemap),如下所示:
drivemap -s (hd0) (hd1)
这会在您的第一个和第二个硬盘之间执行虚拟交换。
我不知道下面的方法是否可行,但希望它能为您指明正确的方向。祝您好运。
menuentry "Windows" {
insmod chain
insmod ntfs
drivemap -s (hd0) (hd1) # swap hd1 for hdo
set root=(hd0,1)
chainloader +1
}
答案2
即使您没有提供硬件信息,我也很确定您的主驱动器是 Cheap! Crap! Inc! 无品牌 SSD,仅通过特定于供应商的 UEFI 和 Windows 驱动程序与 Windows 兼容,而您的第二个驱动器是开箱即用的优质品牌产品。(我们最近在这里看到它们的频率更高了)
如果您的计算机仍在保修期内,请坚持要求供应商将 SSD 更换为开箱即用的产品,或者获得全额退款并仅在实际测试后购买产品。
如果不在保修范围内:经常备份你的 Windows,因为 SSD 可能会像心脏病发作一样突然死机和对新驱动器进行分区拥有一个可以在 Windows 下读取的 FAT 或 NTFS 分区,以便您可以在 Windows 和 Ubuntu 之间交换信息。