Updating to the latest grub version (at the moment 2.02~beta2-29ubuntu0.3) leads to error: symbol grub_efi_find_last_device_path not found when I try to start Windows on my dual boot system having Ubuntu 15.10 next to Windows 10.
This can be fixed by downgrading to the version before the latest one in the ubuntu repository till this bug is fixed.
Here is how I downgraded my grub installation:
sudo apt-get install grub2-common=2.02~beta2-29ubuntu0.2 \
grub-common=2.02~beta2-29ubuntu0.2 grub-efi-amd64=2.02~beta2-29ubuntu0.2 \
grub-efi-amd64-bin=2.02~beta2-29ubuntu0.2
sudo apt-mark hold grub-common grub-efi-amd64-bin grub2-common grub-efi-amd64
Without the hold line apt would install the latest version on the next upgrade. As soon as the bug is fixed you can remove the hold mark with
sudo apt-mark install grub-common grub-efi-amd64-bin grub2-common grub-efi-amd64
Source:
http://blog.coffeebeans.at/archives/1035
Update (16 october 2016): Since I am still facing this issue on a fresh new ubuntu 16.10 and the package-versions above were not existing in the repository of yakkety anymore:
1) Add temporarily following to your apt-sources.file:
###### Ubuntu Main Repos
deb http://de.archive.ubuntu.com/ubuntu/ wily main restricted universe multiverse
###### Ubuntu Update Repos
deb http://de.archive.ubuntu.com/ubuntu/ wily-security main restricted universe multiverse
deb http://de.archive.ubuntu.com/ubuntu/ wily-backports main restricted universe multiverse
2) perform an apt update && apt dist-upgrade
3) Save your fresh installed & old grub2 packages from future updates: sudo apt-mark hold grub-common grub-efi-amd64-bin grub2-common grub-efi-amd64
4) Undo above changes in your apt file to be in sync with your desired ubuntu package (I assume that you don't want to use wily in >= 2016).
or:
1) Download the four deb-files manually from here:
https://launchpad.net/~ubuntu-security-proposed/+archive/ubuntu/ppa/+build/8443424
2) install with dpkg -i grub*.deb
3) Keep your fresh installed & old grub2 packages safe from future (buggy) updates: sudo apt-mark hold grub-common grub-efi-amd64-bin grub2-common grub-efi-amd64
(everything on your own risk)
symbol grub_efi_find_last_device_path...
), which is installed with Ubuntu. – Rod Smith Feb 21 '16 at 14:47