auto-resize install renders previous system with separate /boot unbootable
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
grub2 (Ubuntu) |
Fix Released
|
Medium
|
Loïc Minier | ||
Karmic |
Fix Released
|
Medium
|
Loïc Minier |
Bug Description
Binary package hint: ubiquity
During Karmic final install testing, I first did a manual partitioning with a 200 MB /boot (/dev/vda1) and a ~ 5 GB / (/dev/vda5), no swap. In the next round, I tried the auto-resize mode, which resized /dev/vda5 to 2.7 GB, and created a new /dev/vda6 for / and /dev/vda7 for swap.
/dev/vda1 * 1 24 192748+ 83 Linux
/dev/vda2 25 729 5662912+ 5 Extended
/dev/vda5 25 364 2731018+ 83 Linux
/dev/vda6 365 705 2739051 83 Linux
/dev/vda7 706 729 192748+ 82 Linux swap / Solaris
The newly installed system boots fine, but when I try to boot the previous one in grub2, it just fails with "error: You need to load the kernel first".
I think this is due to "search" and "linux" lines having the same UUID (that of the old root partition, 3534fc...). search should instead have the UUID of the old /boot partition (4b294e...). When I manually walk though the commands in grub, it says "error: file not found" in the "linux ..." step.
ProblemType: Bug
Architecture: i386
Date: Wed Oct 28 23:32:02 2009
DistroRelease: Ubuntu 9.10
InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release i386 (20091028.5)
LiveMediaBuild: Ubuntu 9.10 "Karmic Koala" - Release i386 (20091028.5)
Package: ubiquity (not installed)
ProcEnviron:
LANG=en_US.UTF-8
SHELL=/bin/bash
ProcVersionSign
SourcePackage: ubiquity
Uname: Linux 2.6.31-14-generic i686
XsessionErrors:
(gnome-
(gnome-
(nautilus:1282): Eel-CRITICAL **: eel_preferences
(polkit-
Related branches
Changed in grub2 (Ubuntu Karmic): | |
status: | Triaged → Fix Committed |
tags: | added: iso-testing |
The original grub.cfg from the old install was correct (/boot/ grub/grub. cfg on vda5):
### BEGIN /etc/grub. d/10_linux ###
recordfail= 1 0fb3-44bd- bc61-7f35ccb525 34 2.6.31- 14-generic root=UUID= 3534fcb7- 8b25-4b97- 8643-59b566d177 d7 ro quiet splash img-2.6. 31-14-generic
menuentry "Ubuntu, Linux 2.6.31-14-generic" {
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
insmod ext2
set root=(hd0,1)
search --no-floppy --fs-uuid --set 4b294ec9-
linux /vmlinuz-
initrd /initrd.
}
However, the one from the new install put the wrong UUID into the search line:
### BEGIN /etc/grub. d/30_os- prober ### 8b25-4b97- 8643-59b566d177 d7 2.6.31- 14-generic root=UUID= 3534fcb7- 8b25-4b97- 8643-59b566d177 d7 ro quiet splash img-2.6. 31-14-generic
menuentry "Ubuntu, Linux 2.6.31-14-generic (on /dev/vda5)" {
insmod ext2
set root=(hd0,5)
search --no-floppy --fs-uuid --set 3534fcb7-
linux /boot/vmlinuz-
initrd /boot/initrd.