答案1
好的,我从中获得了些许动力https://askubuntu.com/questions/777260/how-to-repack-initrd-img
首先假设您当前的目录是 ,$DIR
并且它有来自 的“initrd” 。我们将在同一个目录中live CD/casper/initrd
创建一个名为myinitrd
${DIR}
mkdir 18
unmkinitramfs initrd ${DIR}/18
# start with an empty file
rm -rf ${DIR}/myinitrd
touch ${DIR}/myinitrd
# Add the first microcode firmware
cd ${DIR}/18/early
find . -print0 | cpio --null --create --format=newc > ${DIR}/myinitrd
# Add the second microcode firmware
cd ${DIR}/18/early2
find kernel -print0 | cpio --null --create --format=newc >> ${DIR}/myinitrd
# Add the actual ram fs file system
cd ${DIR}/18/main
find . | cpio --create --format=newc | xz --format=lzma >> ${DIR}/myinitrd
# verify both initrds are the same
binwalk ${DIR}/myinitrd
binwalk ${DIR}/initrd
答案2
@PRATAP,根据您在评论中的确认,您可以尝试一下吗?
我假设这 3 个目录位于父目录内,kernel/
find kernel/ | cpio -o -H newc > my_new_initrd
my_new_initrd
应该是你重新编译的 initrd