Handy tools suitable for:
- Android boot.img splitting
- Android simg2img convertions
- Allwinner fex2bin and bin2fex utils (sunxi-tools)
All binaries are ELF 32-bit LSB executables. Sorry, OS X guys :(
This tool will unpack the boot.img from any Android device, but AFAIK repacked imgs will work only for Allwinner SOCs. Test carefully.
Simple usage:
./repacker.rb <boot.img>to unpack./repacker.rb <boot_src>to pack
Example:
$ ../allwinner-kitchen/repacker.rb boot.img
$ ../allwinner-kitchen/repacker.rb boot_src.232/
$ tree
.
βββ boot.img
βββ boot_src.232
βΒ Β βββ kernel
βΒ Β βββ ramdisk
βΒ Β βββ data
βΒ Β βββ default.prop
βΒ Β βββ dev
βΒ Β βββ init
βΒ Β βββ init.b2g.rc
βΒ Β βββ init.goldfish.rc
βΒ Β βββ initlogo.rle
βΒ Β βββ init.rc
βΒ Β βββ init.sun4i.rc
βΒ Β βββ init.sun4i.usb.rc
βΒ Β βββ proc
βΒ Β βββ sbin
βΒ Β βΒ Β βββ adbd
βΒ Β βΒ Β βββ ueventd -> ../init
βΒ Β βββ sys
βΒ Β βββ system
βΒ Β βββ ueventd.goldfish.rc
βΒ Β βββ ueventd.rc
βΒ Β βββ ueventd.sun4i.rc
βββ boot_src.232.img
8 directories, 16 files
allwinner-kitchen/tools $ ls
bin2fex fex2bin fexc make_ext4fs mkbootfs mkbootimg mkuserimg.sh simg2img split_bootimg.pl
Let's convert system.img to ext4 using the simg2img:
$ allwinner-kitchen/tools/simg2img system.img system_new.img
$ file system.img
system.img: data
$ file system_new.img
system_new.img: Linux rev 1.0 ext4 filesystem data, UUID=57f8f4bc-abf4-655f-bf67-946fc0f9f25b (extents) (large files)