Mailinglist Archive: opensuse-factory (498 mails)

< Previous Next >
Re: [opensuse-factory] Broken /boot/initrd file after latest upgrade (Tumbleweed 20160519)
Jan Engelhardt wrote:
On Saturday 2016-05-21 13:38, Bjoern Voigt wrote:
1) It is not compressed:

file /boot/initrd-`uname -r`
/boot/initrd-4.5.4-1-default: ASCII cpio archive (SVR4 with no CRC)
file is not able to handle chained cpio archives.
What it reports is correct though: the first part is a cpu firmware
(on some machines), followed by the - not reported - second compressed part.

2) It contains only two files and some directories:

# cpio --extract --make-directories --verbose < /boot/initrd-`uname -r`
cpio is unable to handle chained cpio archives.

.
early_cpio
kernel
kernel/x86
kernel/x86/microcode
kernel/x86/microcode/GenuineIntel.bin
16 blocks

3) It is bigger than the content:

# du -h
12K ./kernel/x86/microcode
16K ./kernel/x86
20K ./kernel
28K .
All normal given the above.
Ok, thank, Jan.

This must be a modern way or SUSE way to create initrd files.
Unfortunately most Internet blogs still show the old way to analyze
initrd files (first: gunzip the initrd file; second: extract the cpio
file). It there a documentation for analyzing the initrd files in the
modern format? I read something, that I have to skip some blocks in the
header to get the embedded "lzma" compressed file. Here is a script with
should do this (not tested):
http://forum.xda-developers.com/wiki/Extract_initramfs_from_zImage_compressed_with_LZMA_and_CPIO

Unfortunately one of my two problems is still unsolved.

The first problem (system only boots to text mode with Kernel
4.5.4-1-default) does not occur anymore.

The second problem still persists after calling "mkinitrd" and
"grub2-mkconfig -o /boot/grub2/grub.cfg" again and again: Because Kernel
4.6 (e.g. from kernel_stable repo) is currently incompatible with NVidia
driver, I currently want to stay on the 4.5.x kernel series. I manually
patched the Kernel sources kernel-source-4.5.4-1.1.noarch.rpm from
Tumbleweed with the 4.5.4 to 4.5.5 vanilla Kernel patch
(https://cdn.kernel.org/pub/linux/kernel/v4.x/incr/patch-4.5.4-5.xz)
without conflicts and compiled and installed the Kernel with "make
binrpm-pkg" and "rpm -ivh ...". I deselected the Kernel options
"CONFIG_DEBUG_KERNEL" and "CONFIG_EXPERT" because otherwise the Kernel
RPM files get 10x bigger than normal.

The Kernel 4.5.5-mykernel worked until today. Today I updated the system
to the latest Tumbleweed snapshot 20160519.

But now I have the following problem with the 4.5.5-mykernel:

1) I select the Kernel in Grub2:

openSUSE, with Linux 4.5.5-mykernel

2) Then I see

Loading Linux 4.5.5-mykernel ....
Loading initial ramdisk ...

3) The screen clears and the system stops booting with

uncompression error

-- System halted

Maybe the initrd is incorrectly at least for my Kernel or my Kernel is
incapable of decompressing the used initrd format. Could deselection of
CONFIG_EXPERT caused the problem? But the Kernel worked yesterday.

Any ideas?

Greetings,
Björn
--
To unsubscribe, e-mail: opensuse-factory+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-factory+owner@xxxxxxxxxxxx

< Previous Next >