Bug 32634 - Update to GRUB 2.00 requires additional steps
Update to GRUB 2.00 requires additional steps
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: Grub
UCS 3.2
Other Linux
: P5 normal (vote)
: UCS 3.2
Assigned To: Sönke Schwardt-Krummrich
Erik Damrose
: interim-3
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-09-18 15:21 CEST by Sönke Schwardt-Krummrich
Modified: 2013-11-19 06:42 CET (History)
2 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
Terminal 1 with green font (18.41 KB, image/png)
2013-09-18 15:22 CEST, Sönke Schwardt-Krummrich
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sönke Schwardt-Krummrich univentionstaff 2013-09-18 15:21:09 CEST
The update from GRUB 1.97 to 2.00 requires additional steps.

If "grub-install $DEVICE" is *not* called, the updated system in not able to boot anymore because the old grub seems to be unable parse the new GRUB config.

With GRUB 2.00 the terminal color changes from grey to green. See attached screenshot.
Comment 1 Sönke Schwardt-Krummrich univentionstaff 2013-09-18 15:22:19 CEST
Created attachment 5442 [details]
Terminal 1 with green font
Comment 2 Sönke Schwardt-Krummrich univentionstaff 2013-10-15 21:47:10 CEST
(In reply to Sönke Schwardt-Krummrich from comment #0)
> The update from GRUB 1.97 to 2.00 requires additional steps.
> 
> If "grub-install $DEVICE" is *not* called, the updated system in not able to
> boot anymore because the old grub seems to be unable parse the new GRUB
> config.

GRUB 2.00 has been patched so it will create a grub.cfg that is readable by both versions (1.9x and 2.00) → 47-remain-backward-compatible.patch

During the update, the GRUB 2.00 packages will not write the new version automatically to the MBR of the harddisk. With the above patch, this seems to be no problem. However, the preup.sh tries to guess the device on which GRUB is installed within the MBR and stores the device in update/grub/boot. The postup.sh will check for the UCR variable and runs a "grub-install <DEVICE>".
If guessing the device fails, a warning will be printed to the updater.log.

On UEFI systems (grub/efi=yes) the preup.sh does no guessing. Instead postup.sh calls the generic command "grub-install" without arguments for installing/updating GRUB.

> With GRUB 2.00 the terminal color changes from grey to green. See attached
> screenshot.

This is caused by the colour depth of 16 bits (grub/vga=788). By switching to 800x600x24 (grub/vga=789) the wrong colours are fixed.
During the update to UCS 3.2-0 univention-grub updates the UCR variable grub/vga from 788 to 789. If other values are set, no change is done.

The automatic change may be suppressed by setting the UCR variable
update32/grub/changecolordepth=no prior to the update to UCS 3.2-0.

univention-updater (9.0.21-2) unstable; urgency=low
univention-grub (7.0.1-2) unstable; urgency=low

Changelog entry has been committed.
Comment 3 Sönke Schwardt-Krummrich univentionstaff 2013-10-21 18:06:57 CEST
univention-installer (9.0.28-1) unstable; urgency=low

The graphic mode of the installation DVD has also been changed from 788 to 789.
Comment 4 Felix Botner univentionstaff 2013-10-22 10:45:28 CEST
In the "Erweiterte Optionen ..." menu the selected entry is not highlighted and there is no option to go back to the "main" menu.
Comment 5 Sönke Schwardt-Krummrich univentionstaff 2013-10-31 13:56:32 CET
(In reply to Felix Botner from comment #4)
> In the "Erweiterte Optionen ..." menu the selected entry is not highlighted
> and there is no option to go back to the "main" menu.

The old layout of the UCS 3.1 grub menu has been restored by patching grub 2.00.
No change for the customer → no additional changelog entry required.

grub2 2.00-18.76.201310311322
i386 build has finished; amd64 is building right now
Comment 6 Erik Damrose univentionstaff 2013-11-01 16:13:18 CET
(In reply to Sönke Schwardt-Krummrich from comment #2)
> 47-remain-backward-compatible.patch
OK

> The postup.sh will check for the UCR variable and runs a "grub-install
> <DEVICE>".
> If guessing the device fails, a warning will be printed to the updater.log.
OK

> On UEFI systems (grub/efi=yes) the preup.sh does no guessing. Instead
> postup.sh calls the generic command "grub-install" without arguments for
> installing/updating GRUB.
OK

> This is caused by the colour depth of 16 bits (grub/vga=788). By switching
> to 800x600x24 (grub/vga=789) the wrong colours are fixed.
> During the update to UCS 3.2-0 univention-grub updates the UCR variable
> grub/vga from 788 to 789. If other values are set, no change is done.
OK

> The automatic change may be suppressed by setting the UCR variable
> update32/grub/changecolordepth=no prior to the update to UCS 3.2-0.
OK


(In reply to Sönke Schwardt-Krummrich from comment #5)

> The old layout of the UCS 3.1 grub menu has been restored by patching grub
> 2.00.
OK

Changelog: OK
-> Verified
Comment 7 Stefan Gohmann univentionstaff 2013-11-19 06:42:30 CET
UCS 3.2 has been released:
 http://docs.univention.de/release-notes-3.2-en.html
 http://docs.univention.de/release-notes-3.2-de.html

If this error occurs again, please use "Clone This Bug".