On armel (Babbage platform), kernel image upgrading breaks if Ubiquity is instructed not to install a bootloader
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
flash-kernel (Ubuntu) |
Fix Released
|
High
|
Ubuntu ARM Team | ||
initramfs-tools (Ubuntu) |
Fix Released
|
Medium
|
Ubuntu ARM Team |
Bug Description
Binary package hint: ubiquity
If the "install bootloader" option is cleared (in the advanced options on the last page of the Ubiquity installer dialogs), it appears that no /etc/flash-
However, the linux image postinst script unconditionally runs flash-kernel to reprogram the kernel and (I think) initrd on the SD card. flash-kernel gets confused if there is no /etc/flash-
This means that if the kernel image package (e.g., linux-image-
This will not affect typical users who just install with the default configuration; however I already had a different SD card set up with a suitable kernel for booting purposes, and wanted to avoid clobbering the SD card with the live image on it so that I could use it again, reproducibly.
Here's what happens when I try to upgrade the kernel image just after a clean install:
(Actually, there's no newer package available, so I simulate this by reinstalling the kernel image)
root@ubuntu-
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0B/8235kB of archives.
After this operation, 0B of additional disk space will be used.
Do you want to continue [Y/n]?
(Reading database ... 95002 files and directories currently installed.)
Preparing to replace linux-image-
Done.
Unpacking replacement linux-image-
Setting up linux-image-
Running depmod.
update-initramfs: Generating /boot/initrd.
is not a block device
Failed to create initrd image.
dpkg: error processing linux-image-
subprocess post-installation script returned error exit status 2
Errors were encountered while processing:
linux-
E: Sub-process /usr/bin/dpkg returned an error code (1)
Poking around, I can see that there is no flash-kernel.conf (it _is_ there with sane contents of bootloader installation was enabled)
root@ubuntu-
ls: cannot access /etc/flash-
Since flash-kernel.conf is just sourced as a shell script, I can artificially make flash-kernel "succeed" by this ugly hack (but it's obviously not the right solution!)
root@ubuntu-
root@ubuntu-
Setting up linux-image-
Running depmod.
update-initramfs: Generating /boot/initrd.
Not updating initrd symbolic links since we are being updated/reinstalled
(2.6.28-11.42 was configured last, according to dpkg)
Not updating image symbolic links since we are being updated/reinstalled
(2.6.28-11.42 was configured last, according to dpkg)
root@ubuntu-
ProblemType: Bug
Architecture: armel
DistroRelease: Ubuntu 9.04
Package: ubiquity 1.12.12
ProcEnviron:
LANG=en_GB.UTF-8
SHELL=/bin/bash
SourcePackage: ubiquity
Uname: Linux 2.6.28-11-imx51 armv7l
tags: | removed: arm |
Changed in flash-kernel (Ubuntu): | |
status: | New → Triaged |
Changed in initramfs-tools (Ubuntu): | |
status: | New → Triaged |
Changed in flash-kernel (Ubuntu): | |
importance: | Undecided → Medium |
Changed in initramfs-tools (Ubuntu): | |
importance: | Undecided → Medium |
Could you please attach your /etc/kernel- img.conf?