Skip to content

doesn't properly unpack initrd/initramfs (which is a cpio archive) on debian #64

@dilinger

Description

@dilinger

I could've sworn that this used to work, but my tests on current debian stable have it not working.

On debian 13 (dtrx 8.5.3-3), if I run lsinitramfs on the latest generated initrd, I get a list of almost 2000 files and directories inside of the cpio archive:

dilinger@hm90:/tmp$ file /boot/initrd.img-6.12.41+deb13-amd64 
/boot/initrd.img-6.12.41+deb13-amd64: ASCII cpio archive (SVR4 with no CRC)
dilinger@hm90:/tmp$ lsinitramfs /boot/initrd.img-6.12.41+deb13-amd64 |wc -l
1839

However, if I then attempt to use dtrx to unpack that initrd, it only unpacks a single file. This is obviously incorrect behavior.

dilinger@hm90:/tmp$ dtrx /boot/initrd.img-6.12.41+deb13-amd64 
/boot/initrd.img-6.12.41+deb13-amd64 contains one directory but its name doesn't match.
 Expected: initrd.img-6.12.41+deb13-amd64
   Actual: kernel/
You can:
 * extract the directory _I_nside a new directory named initrd.img-6.12.41+deb13-amd64
 * extract the directory and _R_ename it initrd.img-6.12.41+deb13-amd64
 * extract the directory _H_ere
What do you want to do?  (I/r/h) 
dilinger@hm90:/tmp$ find initrd.img-6.12.41+deb13-amd64/
initrd.img-6.12.41+deb13-amd64/
initrd.img-6.12.41+deb13-amd64/kernel
initrd.img-6.12.41+deb13-amd64/kernel/x86
initrd.img-6.12.41+deb13-amd64/kernel/x86/microcode
initrd.img-6.12.41+deb13-amd64/kernel/x86/microcode/AuthenticAMD.bin
dilinger@hm90:/tmp$ 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions