Hyp*_*erX 87 grub2 dual-boot windows-7 os-prober
我终于在我的第二个驱动器上安装了 Ubuntu。当我启动我的计算机时,GRUB 只提供我启动 Ubuntu,而不是 Windows 7。需要做什么才能在 GRUB 中选择 Ubuntu 和 Windows?
当我在启动时按 F12 进入启动菜单并选择Windows Boot Manager它启动到 Windows 7 时。
我运行命令sudo fdisk -l,这里是日志(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.
Run Code Online (Sandbox Code Playgroud)
小智 115
启动 Ubuntu 并挂载您的 Windows 分区(只需在 Nautilus 上打开磁盘)
运行命令行(在下文Ctrl+ Alt+ t):
sudo os-prober
Run Code Online (Sandbox Code Playgroud)如果找到您的 Windows 安装,您可以运行:
sudo update-grub
Run Code Online (Sandbox Code Playgroud)请注意,第 2 步只是为了您的方便。您可以只挂载 Windows 7 分区,然后运行update-grub.
Phi*_*oud 18
如果上述os-prober方法不起作用,请尝试添加自定义 grub 菜单项。记录在这里。
前两个步骤用于查找您的<UUID>.
lsblk并找到行的名称/boot/efi示例输出(这里的答案是 sda2):
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 477G 0 disk
??sda1 8:1 0 450M 0 part
??sda2 8:2 0 100M 0 part /boot/efi
??sda3 8:3 0 16M 0 part
??sda4 8:4 0 47G 0 part /windows
??sda5 8:5 0 425,6G 0 part /
??sda6 8:6 0 3,7G 0 part [SWAP]
mmcblk0 179:0 0 14,9G 0 disk
??mmcblk0p1 179:1 0 14,9G 0 part
Run Code Online (Sandbox Code Playgroud)
sudo blkid /dev/sdaXwhere sdaXis the answer from上一步(sda2在我的情况下)。示例输出(这里的答案是 58E4-427D):
/dev/sda2: UUID="58E4-427D" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="b81727be-ba90-5f8c-ab98-d3ec67778b7d"
Run Code Online (Sandbox Code Playgroud)
/etc/grub.d/40_custom:menuentry "Windows 7" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set <UUID>
chainloader +1
}
Run Code Online (Sandbox Code Playgroud)
sudo update-grub并重新启动。小智 13
我运行了 Windows 10,然后尝试了双启动。安装 Ubuntu 后,Win 10 没有出现在我的 GRUB 加载程序中。我尝试了以下-
首先,我在Win10中禁用了安全启动。然后在 Ubuntu 中运行以下命令:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
Run Code Online (Sandbox Code Playgroud)
效果很好。之后能够在 GRUB 中找到 Windows 和 Ubuntu。
我按照引导修复的步骤解决了类似的问题
安装引导修复
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
Run Code Online (Sandbox Code Playgroud)
按“推荐修复”并按照建议在终端中输入一些命令。
我认为我的 Grub 由于关机错误而无法识别 Windows,它解决了问题。
方法略有不同,因为我从另一台计算机上复制了工作示例,张贴作为我自己的记录。
\n\n将以下内容附加到/etc/grub.d/40_custom:
menuentry "Windows 10" {\n insmod part_gpt\n insmod fat\n search --no-floppy --fs-uuid --set <boot_efi_uuid>\n chainloader /EFI/Microsoft/Boot/bootmgfw.efi\n}\nRun Code Online (Sandbox Code Playgroud)\n\n其中<boot_efi_uuid>是分区的 UUID /boot/efi。要找到这个:
$ lsblk\nNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT \nsda 8:0 0 119.2G 0 disk\n\xe2\x94\x94\xe2\x94\x80md126 9:126 0 357.7G 0 raid0\n \xe2\x94\x9c\xe2\x94\x80md126p1 259:0 0 499M 0 md\n \xe2\x94\x9c\xe2\x94\x80md126p2 259:1 0 100M 0 md /boot/efi \nRun Code Online (Sandbox Code Playgroud)\n\n$ sudo blkid | grep md126p2 # Replace with your device\n/dev/md126p2: UUID=<boot_efi_uuid>\nRun Code Online (Sandbox Code Playgroud)\n\n当然,保存文件后,运行:
\n\nsudo update-grub\nRun Code Online (Sandbox Code Playgroud)\n\n重新启动,您现在应该能够成功启动 Windows。
\n| 归档时间: |
|
| 查看次数: |
400753 次 |
| 最近记录: |