[Bug 1289977] Re: Ubuntu 14.04 Update breaks grub, resulting in "error: symbol 'grub_term_highlight_color' not found"

Terry Ellison Terry at ellisons.org.uk
Sun May 4 12:08:33 UTC 2014


@Phillip, I took a step back and analysed what went wrong with in my
upgrade process.  As part of the upgrade, the process executes a dpkg-
reconfigure  grub-pc which throws up a configuration dialogue, in my
case listing the install devices as:

[ ] /dev/sda (500107 MB; ST9500325AS)
[ ] - /dev/sda5 (32212 MB; /)

I obviously did a mind-fart and checked sda5 instead of sda, latching
the wrong configuration into the package.  This in turn generates the
warning:

Filesystem `ext2' doesn't support embedding.  Embedding is not possible.
GRUB can only be installed in this setup by using blocklists.  However,
blocklists are UNRELIABLE and their use is discouraged.

Since this was a "warning" the report then give the message
"Installation finished. No error reported."  However  the old core.img
has been left on track 0 so that the MBR -> (1.99)core.img ->
(2.02)/boot installation now fails due to a version mismatch and the
machine is unbootable -- except if you are an advanced user used to
LiveCDs, etc.

At this point you can say "user error", not the package fault and close
my call.  This is fare enough -- from a package perspective, but NOT
from a system perspective.  Consider if you are a typical non-expert
user:

* You are daily nagged that your configuration is no longer supported
and you have to upgrade.

* Hopefully you read release notes, and click the button to start this
"painless" operation.

* During the process, which involves a big download and the occasional
dialogue prompt about configuration settings (nearly always the default
is safe, but you may need to tweak configuration changes later).  The
system then reboots and you are live with the new version.

However one of these steps is grub reconfiguration, and a typical user
knows nothing about this.  If he or she has dual boot (say sda1 --
WinXX, sda5 -- Ubuntu), they might realise that they boot from the
"ubuntu loader" and select that partition.  If they do then there system
will die on reboot.

The release notes make no mention of grub, nor any explanation or
warning about the dialogue to come which can trash their system; no
reference to read up or any links to how to recover their PCs.

One innocent mis-selection and the PC dies.  As Ian McDonald said: this
happened with 25% of his users, so it is easy to do.

*  Given this, surely the Trusty Tahr release notes should include an
explicit section on the fact that this release is upgrading grub and
explain is plain user-friendly terms what this means and what the
consequences of the selection are -- possibly with links to other
articles to give a more in-depth explanation for those that would like
it.

*  The logic in the grub-pc configuration is incorrect.  The install
DOES upgrade /boot to 2.02, if the configuration results in no Stage 1.5
core.img being written to HDD, and and one isn't already on one of the
putative targets, then the system WILL be unbootable.  This is not a
warning.  It's a hard error; it should be reported as such and the
system should not be rebooted.

*  The wording of the dialogue is incomprehensible or misleading to a
typical user

> The grub-pc package is being upgraded. This menu allows you to select
which devices you'd like grub-install to be automatically run for, if
any.  <CR>  Running grub-install automatically is recommended in most
situations, to prevent the installed GRUB core image from getting out of
sync with GRUB modules or grub.cfg. <CR> If you're unsure which drive is
designated as boot drive by your BIOS, it is often a good idea to
install GRUB to all of them.  <CR> Note: it is possible to install GRUB
to partition boot records as well, and some appropriate partitions are
offered here. However, this forces GRUB to use the blocklist mechanism,
which makes it less reliable, and therefore is not recommended.

It could be better phrased, for example:

GRUB is the boot loader which is used to load this and any other
operating systems.  The GRUB loader is normally installed in the area
between the MBR and the first partition on your BIOS-designated boot
disk (for example HD0 = /dev/sda).

It is possible to install GRUB alternative locations, but refer to the
<URL> documentation before any of selecting these.

GRUB must be installed in at least one valid location OTHERWISE YOUR
SYSTEM MAY NOT BOOT CORRECTLY.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/1289977

Title:
  Ubuntu 14.04 Update breaks grub, resulting in "error: symbol
  'grub_term_highlight_color' not found"

Status in “grub2” package in Ubuntu:
  Incomplete

Bug description:
  The update from 13.10 to 14.04 via update-manager broke grub for me,
  which resulted in the grub error:

  "symbol 'grub_term_highlight_color' not found"

  on startup.

  To fix the problem I had to boot to my persisting Ubuntu installation
  (e.g. using Super Grub Disk) and had to reinstall grub on my boot
  partition: "sudo grub-install --recheck /dev/sdx"

  ProblemType: Bug
  DistroRelease: Ubuntu 14.04
  Package: grub2-common 2.02~beta2-6
  ProcVersionSignature: Ubuntu 3.13.0-16.36-generic 3.13.5
  Uname: Linux 3.13.0-16-generic x86_64
  ApportVersion: 2.13.3-0ubuntu1
  Architecture: amd64
  CurrentDesktop: Unity
  Date: Sun Mar  9 10:36:45 2014
  EcryptfsInUse: Yes
  InstallationDate: Installed on 2013-12-10 (88 days ago)
  InstallationMedia: Ubuntu 13.10 "Saucy Salamander" - Release amd64 (20131016.1)
  ProcEnviron:
   LANGUAGE=de_DE
   PATH=(custom, no user)
   XDG_RUNTIME_DIR=<set>
   LANG=de_DE.UTF-8
   SHELL=/bin/bash
  SourcePackage: grub2
  UpgradeStatus: Upgraded to trusty on 2014-03-07 (2 days ago)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1289977/+subscriptions



More information about the foundations-bugs mailing list