[Mageia-dev] MGA2 Installer + Bootloader stage issue: initrd regeneration not happening?

Colin Guthrie mageia at colin.guthr.ie
Sat Jul 14 20:49:23 CEST 2012


'Twas brillig, and Olivier Blin at 14/07/12 17:30 did gyre and gimble:
> Colin Guthrie <mageia at colin.guthr.ie> writes:
> 
>> Hi,
>>
>> While debugging https://bugs.mageia.org/show_bug.cgi?id=6692#c8 I
>> realised that the initrd is generated when the kernel is installed, but
>> it's not regenerated again later.
> 
> Hi,
> 
> /root/drakx/ddebug.log might give some clue about what failed.

Not a huge deal in it that gives (me) clues:

* starting step `setupBootloader'
* to put in /mnt/etc/modprobe.preload evdev
* modify_append:
* modify_append:  resume=UUID=f06016be-3bda-495d-900e-72f5c7d13a41
* running: /sbin/display_driver_helper --is-kms-allowed with root /mnt
* modify_append:  nokmsboot resume=UUID=f06016be-3bda-495d-900e-72f5c7d13a41
* bootloader::suggest_onmbr: type empty, onmbr 1, unsafe 0
* adding /boot/vmlinuz-3.3.6-desktop-2.mga2
* current labels: linux
* adding /boot/vmlinuz-3.3.6-desktop-2.mga2
* current labels: linux linux-nonfb
* adding /boot/vmlinuz-3.3.6-desktop-2.mga2
* current labels: linux linux-nonfb failsafe
* looking for configured grub on partitions
* setupBootloaderBefore end
* step `setupBootloader' finished
...
* fs::get::device2part: unknown device <</dev/sda>>
* running: keytab-lilo.pl us with root /mnt
* program not found: keytab-lilo.pl
* writing grub config to /mnt/boot/grub/menu.lst
* Installing boot loader...
* running: sh /boot/grub/install.sh with root /mnt


    GNU GRUB  version 0.97  (640K lower / 3072K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename. ]
grub> root (hd0,0)
 Filesystem type is ext2fs, partition type 0x83
grub> setup --stage2=/boot/grub/stage2 (hd0)
 Checking if "/boot/grub/stage1" exists... no
 Checking if "/grub/stage1" exists... yes
 Checking if "/grub/stage2" exists... yes
 Checking if "/grub/e2fs_stage1_5" exists... yes
 Running "embed /grub/e2fs_stage1_5 (hd0)"...  17 sectors are embedded.
succeeded
 Running "install --stage2=/boot/grub/stage2 /grub/stage1 (hd0)
(hd0)1+17 p (hd0,0)/grub/stage2 /grub/menu.lst"... succeeded
Done.
grub> quit
* step `summary' finished



> 
>> I'm not sure why this isn't working but perhaps someone more familiar
>> with the installer itself (TV?) could comment?
>>
>> I was under the impression the initrd would be regenerated at the end?
>> Does this even happen or have I just assumed this? I'm pretty sure in
>> the past it did used to regenerate it but I could be mistaken.
>>
>> So the question then remains, how do we ensure that either:
>>  a) the initrd is regenerated at the end of the install process
> 
> That's ensured at the bootloader installation step.
> If not present for every configured kernel, an initrd will be created.

What if the initrd is present? e.g. it was created when the kernel was
installed. Would it still be REgenerated at this stage? (I always
presumed it would be or that it was not generated at the install time).

Looking at the script /sbin/installkernel I see:

 [ -z "$DURING_INSTALL" ] || exit 0

So it shouldn't do anything when run as part of the kernel post
install... So perhaps some other package triggers an initrd generation?

Looking at things happening live... I see that the symlink
initrd-desktop.img is created, but it points nowhere. I wonder could one
of the bootsplash scripts do something like resolve the symlink name and
then recreate the initrd automatically because the file does not exist?


Col

-- 

Colin Guthrie
colin(at)mageia.org
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited http://www.tribalogic.net/
Open Source:
  Mageia Contributor http://www.mageia.org/
  PulseAudio Hacker http://www.pulseaudio.org/
  Trac Hacker http://trac.edgewall.org/




More information about the Mageia-dev mailing list