I'm having trouble getting my (Win10/Ubuntu 15.10) dual boot set up the way I want. I have the following drives:

  • 500GB SSD - Windows (/dev/sdb, default boot in BIOS)
  • 250GB SSD - Ubuntu (/dev/sda, with GRUB installed here)
  • 1TB HDD - Data, to be shared

Ideally I would be able to set the Ubuntu drive to be the default boot drive, and have GRUB with an entry for Windows to boot there if I want. I'd like to mess with the Windows drive as little as possible, since I always end up shooting myself in the foot in some weird way that requires a reinstall. However, I can't seem to get Ubuntu/GRUB to recognize Windows on the /dev/sdb drive. The output of sudo fdisk -l gives:

Disk /dev/sda: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x72af2e5d

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1  *         2048    976895    974848   476M 83 Linux
/dev/sda2          978942 500117503 499138562   238G  5 Extended
/dev/sda5          978944  49805311  48826368  23.3G 83 Linux
/dev/sda6        49807360 469727231 419919872 200.2G 83 Linux
/dev/sda7       469729280 500117503  30388224  14.5G 82 Linux swap / Solaris

Disk /dev/sdb: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 4CF7AF69-3795-45AE-96B5-E4AFBBDBDF08

Device         Start       End   Sectors   Size Type
/dev/sdb1       2048    616447    614400   300M Windows recovery environment
/dev/sdb2     616448    821247    204800   100M EFI System
/dev/sdb3     821248   1083391    262144   128M Microsoft reserved
/dev/sdb4    1083392 975851519 974768128 464.8G Microsoft basic data
/dev/sdb5  975851520 976773119    921600   450M Windows recovery environment

When I run sudo grub-install /dev/sdb, I get:

Installing for i386-pc platform.
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: error: embedding is not possible, but this is required for cross-disk install.

Running sudo update-grub only gives:

Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.2.0-18-generic
Found initrd image: /boot/initrd.img-4.2.0-18-generic
Found linux image: /boot/vmlinuz-4.2.0-16-generic
Found initrd image: /boot/initrd.img-4.2.0-16-generic
Found memtest86+ image: /memtest86+.elf
Found memtest86+ image: /memtest86+.bin

Running os-prober returns nothing. The results of boot-repair's summary is at http://paste.ubuntu.com/13323193/ (too long to paste here)

What am I missing to be able to add Windows to the GRUB list?

  • It looks as if your Windows installation uses UEFI for booting and your Ubuntu system does not. – Elder Geek Nov 18 '15 at 2:25
  • @ElderGeek how can I get Ubuntu to use UEFI? I'll gladly reinstall, but I didn't see an option for that during installation. – Ryan Nov 18 '15 at 2:26
  • This will be helpful: help.ubuntu.com/community/UEFI – Elder Geek Nov 18 '15 at 2:28

Installing Ubuntu in UEFI rather than the legacy BIOS allowed it to properly add GRUB entries for Windows.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.