5

So, I've managed to get Windows 10 and Ubuntu 14.04 LTS dual booting -- I have grub set to come up for a few seconds on boot so I don't have to mash F12 when I want to boot to Linux (windows is the default). It's been working perfectly for a few months.

Just now I tried to boot to Linux, and Grub helpfully didn't come up. I tried a few times, no such luck. I checked that it was actually booting to Grub, not windows boot manager by mashing F12 on boot and choosing Grub (the default). That didn't work either.

I haven't done anything that ought to affect anything. Ubuntu 16.04 LTS, installed from USB


UPDATE / 2017-12-15 10:55

I've borrowed a linux-on-a-stick drive from a friend, so I can run from it and edit Grub's config files. I could delete the secondary partion (from windows' partition manager) and reinstall, but that that takes forever so if anyone has a simpler solution that would be great.

  • Note: I'm willing to accept that this is a dumb question -- Just tell me instead of downvoting :) – SIGSTACKFAULT Feb 13 '17 at 19:35
  • No, already tried holding shift, I'll try mashing when I reboot next. – SIGSTACKFAULT Mar 6 '17 at 15:44
7
+25

The windows bootloader doesn't support loading linux, it loads windows only. Grub(2) is actually a boot manager which lets you choose between booting linux or windows.

Most difficulties occur when installing linux first and then windows (win installer is overriding the bootsector containing the grub boot manager with it's own windows bootloader), or after a boot from a windows media (dvd/usb stick) doing a windows repair (which also overrides grub on the bootsector).

An automated approach is to use bootrepair, since you haven't told us your linux distribution I'm assuming you're using ubuntu - here is the link for ubuntu's bootrepair howto.

The manual approach is to boot from your linux distribution's live media (dvd/usb-stick) chroot your linux partition and manually install and/or update grub.

Assuming you want to install your bootloader on /dev/sda and your linux partition is /dev/sda1 (replace it with your devids)

mount /dev/sda1 /mnt/
cd /mnt
mount -t proc proc /mnt/proc
mount -t sysfs sys /mnt/sys
mount -o bind /dev /mnt/dev
mount -t devpts pts /mnt/dev/pts/
chroot /mnt
grub-install /dev/sda
grub-install --recheck /dev/sda
update-grub
  • Yeah, I know. Grub was working, and I had it set to run the windows boot manager by default. – SIGSTACKFAULT Mar 6 '17 at 15:44

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.