GRUB / os-prober 没有看到 Windows 8.1 分区

GRUB / os-prober 没有看到 Windows 8.1 分区

我有一块 1 TB 的硬盘,里面有七个分区,一个 ~600GB 用于 Windows,一个 ~300GB 用于 Xubuntu,其余空间被一堆各式各样的系统分区占据。最近,我以全新安装的方式覆盖了我的 Xubuntu 分区,因为我不知怎么搞砸了它,这就是我的问题所在。以前,GRUB 会在启动时出现,要求我启动 Xubuntu 或 Windows。重新安装后,这种情况不再发生。

我尝试运行os-prober,但它什么也不做,也不输出任何内容。update-grub显示我的 Linux 分区正常,但根本没有提到 Windows。

这是我的布局(parted -l):

Model: ATA ST1000DM003-1CH1 (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name                          Flags
 1      1049kB  525MB   524MB   fat16        EFI system partition          boot
 2      528MB   570MB   41.9MB  fat32        Basic data partition          hidden
 3      570MB   705MB   134MB                Microsoft reserved partition  msftres
 4      705MB   2852MB  2147MB  ntfs         Basic data partition          hidden, diag
 5      2852MB  632GB   629GB   ntfs         Basic data partition          msftdata
 7      632GB   994GB   362GB   ext4                                       boot
 6      994GB   1000GB  6093MB  ntfs         Microsoft recovery partition  hidden, diag

os-prober输出(只是挂在那里一秒钟并且不说任何话):

marvin@ttyfsck:~$ sudo os-prober
marvin@ttyfsck:~$ 

update-grub输出:

marvin@ttyfsck:~$ sudo update-grub
Generating grub configuration file ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-3.13.0-24-generic
Found initrd image: /boot/initrd.img-3.13.0-24-generic
Adding boot menu entry for EFI firmware configuration
done

fdisk -l输出:

marvin@ttyfsck:~$ sudo fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x314b8de1

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  1953525167   976762583+  ee  GPT
Partition 1 does not start on physical sector boundary.

启动信息(长):http://paste.ubuntu.com/7416627/

规格(再次):
Xubuntu 14.04
Windows 8.1
1 TB HDD

编辑:我可以安装我的 Windows 分区并查看内容,没有问题。

答案1

你应该使用boot-repair在大多数情况下,它能够帮助解决问题。

Boot-Repair 是一个简单的工具,用于修复您在 Ubuntu 中可能遇到的常见启动问题,例如在安装 Windows 或其他 Linux 发行版后无法启动 Ubuntu,或者在安装 Ubuntu 后无法启动 Windows,或者 GRUB 不再显示,某些升级会破坏 GRUB 等。

答案2

尝试使用 Windows 可启动修复/恢复 CD 或 DVD 重写 Windows MBR,然后执行 update-grub操作。这应该可以解决问题。

您可以挂载 Windows 分区并查看文件,因此您的 Windows 安装可能仍然完好无损。只是由于 Windows 没有有效的 MBR 条目,所以os-prober/grub会忽略它。

答案3

您是否检查过 grub 配置文件以查看是否列出了 Windows?如果没有,则最好使用以下命令添加 Windows 条目/etc/grub.d/40_custom

menuentry ‘Windows 7′ {  
    set root=’(hd0,msdos2)’  
    chainloader +1  
}

此后更新你的 grub。

注意:编辑 grub 文件时要小心,如果操作不当,可能会搞乱你的系统。

相关内容