0

The link in the "duplicate" is too specific to that user's issue to be of any help to me. When I run that answer, I get:

grub-probe: warning: disk does not exist, so falling back to partition device /dev/sda1.
grub-probe: warning: disk does not exist, so falling back to partition device /dev/sda1.
grub-probe: warning: disk does not exist, so falling back to partition device /dev/sda1.
grub-probe: error: disk `hostdisk//dev/sda1' not found.

As a preface I have this laptop, albiet a few years old now, which is very bad at playing nice with anything other an Windows 8: https://www.asus.com/Notebooks/ASUS_ROG_G750JX/overview/

I've tried dual booting off the same drive in the past, and it hasn't worked out for me on this machine for whatever reason. So this time, I caved and decided to split them up.

I've for Ubuntu 14.04 LTS on a 1TB HDD (/dev/sda), and Windows 7 Ult (x64)(/dev/sdb) on a 250GB SSD. Both appear in the BIOS as boot options, with the Ubuntu drive being set as the default.

My only gripe, is that currently the only way into Windows is to let the Laptop boot to GRUB, then select System Settings, so that it reboots directly into the BIOS, and then select my Windows SSD from the boot override page.

I've been told millions of times that GRUB would simply find my Windows OS after doing a 'sudo update-grub' but it never has.

All I want is to be able to boot to Win7 directly from GRUB

And yes, I followed all the normal dual boot procedure, despite being on separate drive (ie. Windows first, then Ubuntu, made sure the Windows drive was plugged in at the time, etc.).

I would greatly appreciate any helpful responses.


lsblk output:

NAME                         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                            8:0    0 931.5G  0 disk 
├─sda1                         8:1    0   512M  0 part /boot/efi
├─sda2                         8:2    0   244M  0 part /boot
└─sda3                         8:3    0 930.8G  0 part 
  ├─ubuntu--vg-root (dm-0)   252:0    0 914.9G  0 lvm  /
  └─ubuntu--vg-swap_1 (dm-1) 252:1    0  15.9G  0 lvm  [SWAP]
sdb                            8:16   0 238.5G  0 disk 
├─sdb1                         8:17   0   100M  0 part 
└─sdb2                         8:18   0 238.4G  0 part 
sr0                           11:0    1  1024M  0 rom  

So not sure if this is important or not, but in the GUI for boot-repair, where it lets me change the "OS to boot by default" dropwdown bar it lists Windows as the following:

"Windows (via mapper/ubuntu--vg-root menu)"

  • Could you post the output of sudo update-grub? – Ferris Garden Sep 17 '15 at 08:34
  • 'Generating grub configuration file ...'

    Found linux image: /boot/vmlinuz-3.19.0-28-generic

    Found initrd image: /boot/initrd.img-3.19.0-28-generic

    Found linux image: /boot/vmlinuz-3.19.0-26-generic

    Found initrd image: /boot/initrd.img-3.19.0-26-generic

    Found linux image: /boot/vmlinuz-3.19.0-25-generic

    Found initrd image: /boot/initrd.img-3.19.0-25-generic

    Found linux image: /boot/vmlinuz-3.13.0-63-generic

    Found initrd image: /boot/initrd.img-3.13.0-63-generic

    Adding boot menu entry for EFI firmware configuration

    done

    @FerrisGarden

    No clue how to format this correctly, sorry

    – WorseDoughnut Sep 17 '15 at 08:40
  • 1
  • I think thats exactly solving your Problem. (UEFI is messing around here) Note that beside the marked as correct answer there you can boot from a boot-repair disk which solves your problem with 1 click. http://sourceforge.net/projects/boot-repair-cd/?source=typ_redirect – Ferris Garden Sep 17 '15 at 09:03
  • @Ferris skipped straight to trying boot-repair, because frankly I found that first post was pretty non-user-friendly.

    Ran all of boot-repairs commands, window's still isn't appearing in GRUB at all.

    – WorseDoughnut Sep 17 '15 at 16:18
  • http://paste.ubuntu.com/12439009/ – WorseDoughnut Sep 17 '15 at 16:18
  • Still getting the same output for 'sudo update-grub' as before too. – WorseDoughnut Sep 17 '15 at 16:19
  • Can someone actually explain how to solve this using the answer listed in the duplicate post? This isn't helpful at all to just point me at someone else's post and walk away. – WorseDoughnut Sep 17 '15 at 23:17
  • I was also told that if you want to boot off 2 different hdds through grub you have to turn off fast boot option in the EFI firmware. Reference: http://askubuntu.com/questions/591193/install-ubuntu-alongside-win-8-1-on-separate-physical-drives-and-dual-boot – Organic Marble Sep 17 '15 at 23:48
  • @OrganicMarble just confirmed that fast boot (AKA Launch CSM on this laptop) is disabled. AllI remember happening when I initially disabled it was that it changes the resolution on grub, but nothing else changes. – WorseDoughnut Sep 18 '15 at 00:00
  • I am writing a detailed procedure. – Organic Marble Sep 18 '15 at 00:13
  • @WorseDoughnut I have to sleep too. People live on other sides of the planet nowadays. – Ferris Garden Sep 18 '15 at 09:11

2 Answers2

1

I can supply a more step by step way of doing the fix in the linked answer. Big picture, we are going to manually add a Windows entry to grub. Most of this procedure is finding the needed information to do that.

  1. Find where the windows bootloader resides by mounting the efi partition, and searching for bootmgfw.efi.

On my system (a 64 bit Win 8.1 / Ubuntu dual boot) the EFI partition is already mounted. If it is not on your system, please comment to that effect, and I will revise the answer.

Find the EFI partition by issuing the command lsblk in a terminal window. On my system it is mounted at /boot/efi on partition sda2

cd to that directory and look around for the file bootmgfw.efi. On my system it was located at /boot/efi/EFI/Microsoft/Boot Seems a bit redundant but whatever.

  1. Find the uuid of the drive

in a terminal type sudo blkid and enter your password when prompted. This will list all your drives and their UUIDs. In my case I wanted the one for sda2.

  1. add this to /etc/grub.d/40_custom

in a terminal type gksudo gedit /etc/grub.d/40_custom and supply your password

Add this entry to the file. Where it says UUID replace the text UUID with the value of the UUID you obtained in step 2. After the (${root}) replace /efi/Microsoft/Boot/bootmgfw.efi with the path you found in step 1.

menuentry "Windows x86_64 UEFI-GPT" {
    search --fs-uuid --no-floppy --set=root UUID
   chainloader (${root})/efi/Microsoft/Boot/bootmgfw.efi
}
  1. and finally run update-grub

Type sudo update-grub into the terminal.

Organic Marble
  • 23,641
  • 15
  • 70
  • 122
0

There are 2 possibilities now:

For the record: You have 2 drives (1 with windows which is MBR/NTFS partitioned and 1 with Ubuntu which is GPT/ext3-4 partitioned). You're running under a UEFI Bios and have problems of your UEFI-Grub starting up the MBR-Windows.

Possibilities:

  1. You are trying to boot your bios-mode Windows 7 bootloader from UEFI-Grub.
    • This will not work. Since @oldfred pointed out you cant mix boot modes.
    • If you have the file (${root})/efi/Microsoft/Boot/EFIMicrosoftBootbootmgfw.efi) that is NOT your Problem, because MBR or GPT is not important here but Windows wont create a efi boot file if you install it in MBR mode.
    • make a backup of your bootloader partition (sdb1) before the next step (e.g. with clonezilla)
    • If you DONT have this file then windows can create a efi bootloader. Described in this post: How to boot Windows 8 from a legacy MBR partition in UEFI mode via GRUB?

  1. You alread have the efi boot file (e.g. EFIMicrosoftBootbootmgfw.efi)

    • If you already have a Windows efi boot file e.g. (EFIMicrosoftBootbootmgfw.efi) like pointed out in your boot-repair log in line 1301, then try different options in the configuration in your /etc/grub.d/40_custom. For you that would be:

      menuentry "Windows 7 " --class windows --class os {
      insmod part_msdos
      insmod ntfs
      insmod search_fs_uuid
      insmod chain
      
      set root='hd1,msdos1'
      if [ x$feature_platform_search_hint = xy ]; then
        search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1  06D67F5BD67F4A47 
      else
        search --no-floppy --fs-uuid --set=root 06D67F5BD67F4A47 
      fi
      
      chainloader (${root})/efi/Microsoft/Boot/EFIMicrosoftBootbootmgfw.efi
      
      }
      
    • These values are read from your boot-repair log or are guessed. If your efi boot file is at a different location change the line chainloader ...


  1. Last but not least you can still wipe your second harddrive. Partition it with GPT/NFTS and then install a new windows. Data loss coming up here
  • Might just go for the wipe actually, since I only set it up a few days ago and it's literally an empty install at this point. If I do, once it's done installing windows, should it automatically show up in GRUB? Or do I still have to add it as a custom one? – WorseDoughnut Sep 18 '15 at 14:54
  • Do I have to do anything special for a windows install on a GPT drive? Most of the google results are giving conflicting information / only pertain to versions after 7. – WorseDoughnut Sep 18 '15 at 14:57
  • Hi. Yes Windows is a bit tricky there. Google provides various articles. Try that one: http://www.sevenforums.com/tutorials/186875-uefi-unified-extensible-firmware-interface-install-windows-7-a.html. And Yes the entry should appear automatically with update-grub. Please let me know if and how you got it working! – Ferris Garden Sep 21 '15 at 14:39