Comment 168 for bug 1289977

Revision history for this message
olly_b (olly-xquest) wrote :

After many attempts I have found a fix that works for my situation (Win 8 dual boot with 14-04 upgraded from 13-10 after running boot repair)

Status before fix
on power-up "symbol 'grub_term_highlight_color' not found"

boot from 14-04 USB

sudo parted -l
 Model: ATA TOSHIBA MQ01ABD1 (scsi)
 Disk /dev/sda: 1000GB
 Sector size (logical/physical): 512B/4096B
 Partition Table: gpt

 Number Start End Size File system Name Flags
  1 1049kB 1075MB 1074MB ntfs Basic data partition hidden, diag
  2 1075MB 1347MB 273MB fat32 Basic data partition boot
  3 1347MB 1482MB 134MB ntfs Basic data partition msftres
  4 1482MB 496GB 494GB ntfs Basic data partition
  6 496GB 498GB 2048MB linux-swap(v1)
  7 498GB 968GB 470GB ext4
  8 968GB 988GB 20.0GB ext4
  5 989GB 1000GB 11.7GB ntfs Basic data partition hidden, diag

sudo efibootmgr -v
 BootCurrent: 0004
 Timeout: 0 seconds
 BootOrder: 0004,0000,0003,2003,2001,2002
 Boot0000* ubuntu HD(2,200800,82000,ccc07869-f302-11e2-9c39-b3f1c77c46b3)File(\EFI\ubuntu\shimx64.efi)
 Boot0001* EFI Network 0 for IPv6 (08-9E-01-DF-22-D9) ACPI(a0341d0,0)PCI(1c,3)PCI(0,0)MAC(089e01df22d9,0)030d3c000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000RC
 Boot0002* EFI Network 0 for IPv4 (08-9E-01-DF-22-D9) ACPI(a0341d0,0)PCI(1c,3)PCI(0,0)MAC(089e01df22d9,0)IPv4(0.0.0.0:0<->0.0.0.0:0,0, 0RC
 Boot0003* Ubuntu HD(2,200800,82000,ccc07869-f302-11e2-9c39-b3f1c77c46b3)File(\EFI\ubuntu\grubx64.efi)RC
 Boot0004* Windows Boot Manager HD(2,200800,82000,ccc07869-f302-11e2-9c39-b3f1c77c46b3)File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
 Boot2001* EFI USB Device RC
 Boot2002* EFI DVD/CDROM RC
 Boot2003* EFI Network RC

Fix Summary omitting all unsuccessful activities/reboots etc

sudo mkdir /mnt/temp /mnt/temp/boot
sudo mount /dev/sda8 /mnt/temp
sudo mount /dev/sda2 /mnt/temp/boot
for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt/temp$i;
done
sudo cp /etc/resolv.conf /mnt/temp/etc/resolv.conf
sudo chroot /mnt/temp

mkdir /boot/EFI/old
cd /boot/EFI
mv Boot /boot/EFI/old/.

vi /etc/grub.d/40_custom

G (go to end of file)
a (append)

menuentry "Windows 8 on /dev/sda2" {
    insmod part_gpt
    insmod fat
    insmod chain
    set root='(hd0,gpt2)'
    chainloader /EFI/Microsoft/Boot/bkpbootmgfw.efi
}

ESC (quit text entry)
:wq! (save and exit)

dpkg-reconfigure grub-efi-amd64
 Installing for x86_64-efi platform.
 Installation finished. No error reported.
 Generating grub configuration file ...
 Found linux image: /boot/vmlinuz-3.13.0-24-lowlatency
 Found initrd image: /boot/initrd.img-3.13.0-24-lowlatency
 Found linux image: /boot/vmlinuz-3.13.0-24-lowlatency
 Found initrd image: /boot/initrd.img-3.13.0-24-lowlatency
 Found linux image: /boot/vmlinuz-3.13.0-24-generic
 Found initrd image: /boot/initrd.img-3.13.0-24-generic
 Found Windows Boot Manager on /dev/sda2@/EFI/Microsoft/Boot/bootmgfw.efi
 Adding boot menu entry for EFI firmware configuration
 done

exit
for i in /dev/pts /dev /proc /sys /boot; do sudo umount /mnt/temp$i;
done

Notes:
There appear to be 2 problems:
1 - grub error on power-up before Boot Menu can be displayed
 Cause - extra Boot directory in /boot/EFI probably created in previous run of Boot Repair
 Countermeasure - move /boot/EFI/Boot
2 - grub error on selection of Windows from Boot Menu
 Cause - boot/EFI/Microsoft/Boot/bootmgfw.efi renamed to bkpbootmgfw.efi and replaced during previous run of Boot Repair. Replacment not functional in 14-04.
 Countermeasure - create new menu entry similar to existing Windows option but calling bkpbootmgfw.efi instead of bootmgfw.efi
    run dpkg-reconfigure grub-efi-amd64 to update grub.cfg

The above actions (or similar) are all detailed in this thread, but not all together.
This gives me a working system where I can run 14-04 or Windows by selecting the 'Windows 8' option.
However, I imagine that the problem(s) could return on any future install or upgrade...?

I agree with #167, but for users with dual boot Win8/14-04 also to advise creation of a set of Windows restore disks.
Also, would it be a good idea to draw attention to this on the download page, rather than in the release notes?