当前位置: 首页>>技术教程>>正文


GRUB不检测Windows

, , , ,

问题描述

我终于在第二个驱动器上安装了Ubuntu。当我启动计算机时,GRUB只提供我启动Ubuntu,而不是Windows 7.需要做什么才能在GRUB中选择Ubuntu和Windows?

当我在启动时按F12启动菜单并选择Windows Boot Manager时,它会启动到Windows 7。


我运行了命令sudo fdisk -l,这里是log(http://pastebin.com/Cgv1igHc):

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: 0xc3ffc3ff

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

最佳解决办法

  1. 启动Ubuntu并挂载Windows分区(只需在Nautilus上打开磁盘)

  2. 在命令行上运行以下命令(Ctrl + Alt + t):

    sudo os-prober
    
  3. 如果找到了Windows安装,则可以运行:

    sudo update-grub
    

请注意,第2步只是为了您的方便。您可以挂载Windows 7分区,然后运行update-grub

相关问题

次佳解决办法

如果上面的os-prober方法不起作用,请尝试添加自定义grub菜单项

记录here编辑/etc/grub.d/40_custom文件

menuentry "Windows 7" {  
     insmod ntfs  
     set root='(hd0,1)'  
     search --no-floppy --fs-uuid --set a3f1ea41fc67a3f1  
     chainloader +1  
}

你可以通过blkid /dev/sdx命令获得uuid

第三种解决办法

我让Windows 10运行,然后尝试双启动。一旦安装了Ubuntu,Win 10就不会出现在我的GRUB加载器中。我试过以下 –

First of all, I disabled Secure Boot in Win10. Then ran the below commands in Ubuntu :

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

工作得很好。之后能够在GRUB中找到Windows和Ubuntu。

第四种办法

我按照Boot-Repair的步骤解决了类似的问题

安装boot-repair

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

按”Recommended repair”并按照建议将一些命令放入终端。

我认为我的Grub由于关机不好而无法识别Windows,它解决了这个问题。

第五种办法

如果您之前安装了可能导致问题的RAID。在我的情况下,我在2010年构建了我的桌面,并且我使用条带RAID安装了两个1.5 TB。 User gracemercy54 mentions here that this is left over metadata from the former RAID configuration.

当我最初尝试Hermes的步骤时,我收到一条错误,指出“RAID集中的设备数量错误”。所以,如果你碰巧打开一个终端并运行:

   sudo dmraid -rE
   sudo os-prober
   sudo update-grub

这为我解决了这个问题。

第六种办法

我在Windows 10中遇到了同样的问题。我在笔记本电脑上安装了Linux Mint 18.1 Cinnamon 64-bit,用于WIN10的双启动。安装完成后,GRUB仅提供启动Linux而不启动Windows。我发现这个视频https://www.youtube.com/watch?v=0fCA7ToywoY和这篇文章https://forums.linuxmint.com/viewtopic.php?f=46&t=209082,但不幸的是两个都不适合我,所以我使用这两个的组合来解决我的问题。

打开终端并按照这些命令打开名为40_custom的文件:

sudo gedit /etc/grub.d/40_custom

将这些行添加到文件中,然后保存并退出。

menuentry "Windows 10" {

   set root='{hd0,1}'

   chainloader + 1

}

保存文件后,使用以下行更新GRUB:

sudo update-grub

然后重新启动计算机以查看它是否有效。

希望这也适用于其他人。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/2348.html,未经允许,请勿转载。