Извлечь boot.img

Я вытащил boot.img из резервной копии CWM моего телефона. Как мне его извлечь? Пробовал split_bootimg.pl. Но выдает ошибку -

Android Magic not found in boot.img. Giving up.
С какого телефона?
@eldarerathis Sony Xperia P
Хм, хорошо. Я видел случаи, когда некоторые устройства от более мелких производителей использовали нестандартные заголовки в своих загрузочных образах, но я не ожидал такого от Sony. Я бы попробовал скрипт unpack-bootimg.pl отсюда , возможно (инструкции подробно описаны на этой вики-странице ). Возможно, тот сможет его правильно распаковать.
anirudh@Kat ~/Downloads/mkboot $ ./unpack-bootimg.pl /home/anirudh/Downloads/boot.img-tools/source_img/boot.img ядро, записанное в /home/anirudh/Downloads/boot.img-tools/ source_img/boot.img-kernel.gz виртуальный диск записан в /home/anirudh/Downloads/boot.img-tools/source_img/boot.img-ramdisk.cpio.gz gzip: ..//home/anirudh/Downloads/boot. img-tools/source_img/boot.img-ramdisk.cpio.gz: Нет такого файла или каталога cpio: преждевременный конец архива извлечено содержимое ramdisk в каталог /home/anirudh/Downloads/boot.img-tools/source_img/boot.img -ramdisk/

Ответы (1)

Прочитав комментарий, я заметил ошибку...

anirudh@Kat ~/Downloads/mkboot $ ./unpack-bootimg.pl /home/anirudh/Downloads/boot.img-tools/source_img/boot.img ядро, записанное в /home/anirudh/Downloads/boot.img-tools/ source_img/boot.img-kernel.gz виртуальный диск записан в /home/anirudh/Downloads/boot.img-tools/source_img/boot.img-ramdisk.cpio.gz gzip: ..//home/anirudh/Downloads/boot. img-tools/source_img/boot.img-ramdisk.cpio.gz: Нет такого файла или каталога cpio: преждевременный конец архива извлечено содержимое ramdisk в каталог /home/anirudh/Downloads/boot.img-tools/source_img/boot.img -ramdisk/

Для boot.img-ramdisk.cpio.gz- это требует специальной обработки... попробуйте следующее:

gzip -dc boot.img-ramdisk.cpio.gz | cpio -i

Способ сделать это после распаковки boot.imgсоздать каталог с именем что-то вроде ramdisk, перейти в этот каталог и использовать gzip -dc ../boot.img-ramdisk.cpio.gz | cpio -i, причина в том, чтобы организовать структуру и файлы с минимальным беспорядком.

gzipраспаковывает архив ramdisk в stdout, передает его cpioс помощью -iпереключателя для чтения, stdinи он правильно извлечет данные.

Чтобы сделать обратное, скажите после внесения изменений здесь и там в ramdiskкаталоге:

mkbootfs ramdisk/ | gzip > my_new_ramdisk.gz
это дает мне-dc: No such file or directory