Добрый день, подскажите по поводу сборки ядра. У меня есть ядро kernel.bin, я хочу его распаковать изменить в нем некоторые файлы, и запаковать обратно в kernerl.bin, как я делаю:
- binwalk -e kernel.bin ищу блок где есть gzip
- dd if=kernel.bin bs=1 skip=13997184 | zcat > vmlinux, с помощью команды dd обрезаю что где находится сама операционка
- cpio -idmv < vmlinux потом разархивирую ее в директорию
- Структура линукса появляется в директории, могу что то поменять(для тестов ничего не меняю)
- Дальше собираю обратно find ./dir_whis_linux/ | cpio -o -H newc | gzip -9 > vmlinux.gz
- dd if=vmlinux.gz of=kernel.bin bs=1 seek=13997184 conv=notrunc получившийся архив добавляю с помощью dd туда откуда вырезал Если сравнивать ядра с помощью hexdump новое и оригинальное ядро, то идет расхождение, с этого байта. И ядро новое не рабочее. Подскажите что я делаю не так?
Перемещено dataman из general