I had Ubuntu 12.04 with root on /dev/sda2
and installed Fedora 21 with converting disk from MBR to GPT.Now I can boot into Fedora and have Ubuntu option in my GRUB, but it fails with error: kernel too old
, when I try boot from GRUB command line, I get error: can't find command 'linux'
, because GRUB has only linuxefi
command. Can somebody tell me how can I boot Ubuntu?

- 1
1 Answers
My rough guess is that Fedora installed its grub EFI way, while Ubuntu installed another grub legacy way, so when Fedora tries to pick Ubuntu to show it in its menu, it finds an incompatible step.
You might find hints on Why can't I boot into Ubuntu after installing and then erasing Fedora? for manual solutions like list EFI boot entries registered in BIOS with
sudo efibootmgr -v
and remove extraneous ones with commands like
sudo efibootmgr -b 5 -B # don't run unmodified, adapt to your case! I did not need such a step
You might find solutions that might better suit you if you prefer automagical tools Can't boot ubuntu 13.10 after install Fedora 20 on a x86_64 EFI machine but I avoided them, preferring to know what happens.
What I ended up on my machine is to change the boot order in the BIOS setup to choose Ubuntu first. Then, if I want to boot Fedora I press Esc on BIOS screen which shows an EFI boot menu allowing to choose the OS to boot. I ignore the fact that different grub instances offer non-working options to boot the other distro(s).
Probably, if all OSes using grub are configured the same (EFI or legacy), then all grub instances can boot all other OSes (which is the case on a non-EFI machine) but that's not necessary (just inelegant to show non-working options).

- 2,069