Файл Initrd Архив CPIO x-cpio Тип файла Как перекомпилировать?

Как перекомпилировать тип файла CPIO-архива (application/x-cpio)

Я могу распаковать его содержимое с помощью команды ниже.

      unmkinitramfs initrd .

Но не получается перекомпилировать.

Как я могу достичь этого?

2 ответа

Хорошо, я почерпнул некоторую мотивацию из этого https://askubuntu.com/questions/777260/how-to-repack-initrd-img .

Начнем с предположения, что ваш текущий каталог$DIRи у него есть "initrd" изlive CD/casper/initrd. Мы создадим новый 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

@PRATAP, судя по твоему подтверждению в комментариях, ты можешь попробовать это?

Я предполагаю, что эти 3 каталога находятся внутри родительского каталога,kernel/

      find kernel/ | cpio -o -H newc > my_new_initrd

my_new_initrdдолжен быть ваш перекомпилированный initrd

Другие вопросы по тегам