TODO ====== abootimg ====== project's home page http://gitorious.org/ac100/abootimg ====== Introduction ====== **abootimg** is a tool created by Gilles Grandou for manipulating Android Boot Images directly from the AC100 (Be carefull to not mess your bootimg otherwise you will need the free tool [[putusb]] or the proprietary NVidia's [[nvflash]] to flash again a bootable image). abootimg can work directly on block devices, or, the safest way, on a file image. For further informations, enter **abootimg -h** in a terminal or read the [[http://gitorious.org/ac100/abootimg/blobs/master/README|README]]. ====== Usage ====== *reading current boot image abootimg -i /dev/mmcblk0p2 *extracting current bootable image cd /tmp/bootimg abootimg -x /dev/mmcblk0p2 *updating the kernel on a copy of the current bootable image dd if=/dev/mmcblk0p2 of=/tmp/part-6.img abootimg -u /tmp/part-6.img -k /boot/vmlinuz WARNING : if you want to modify **/dev/mmcblk0p2**, DO A BACKUP BEFORE AND STORE IT ON A REMOVABLE MEDIA! ===== Output examples ===== below there is the output of the previous commands for an AC100-114: root@ac100:/tmp/bootimg# abootimg -i /dev/mmcblk0p2 Android Boot Image Info: * file name = /dev/mmcblk0p2 [block device] * image size = 8388608 bytes (8.00 MB) page size = 2048 bytes * Boot Name = "Ubuntu Boot Img" * kernel size = 3146584 bytes (3.00 MB) ramdisk size = 2310081 bytes (2.20 MB) * load addresses: kernel: 0x10008000 ramdisk: 0x11000000 tags: 0x10000100 * cmdline = mem=448M@0M tegrapart=recovery:300:a00:800,boot:d00:1000:800,mbr:1d00:200:800 root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx zcache debug verbose console=tty0 console=ttyGS0,115200n8 console-setup/layoutcode=fr console-setup/variantcode=oss locale=fr_FR * id = 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 root@ac100:/tmp/bootimg# abootimg -x /dev/mmcblk0p2 writing boot image config in bootimg.cfg extracting kernel in zImage extracting ramdisk in initrd.img root@ac100:/tmp/bootimg# ls -1 bootimg.cfg initrd.img zImage root@ac100:/tmp/bootimg# dd if=/dev/mmcblk0p2 of=/tmp/part-6.img 16384+0 records in 16384+0 records out 8388608 bytes (8.4 MB) copied, 0.430688 s, 19.5 MB/s root@ac100:/tmp/bootimg# abootimg -u /tmp/part-6.img -k /boot/vmlinuz-2.6.38-1001-ac100 reading kernel from /boot/vmlinuz-2.6.38-1001-ac100 Writing Boot Image /tmp/part-6.img ====== Compiling ====== if your distribution don't provide this tool, follow this method to compile it under [[installing_linux#ubuntu_oneiric|Ubuntu Oneiric]]: apt-get install libblkid-dev git clone git://gitorious.org/ac100/abootimg.git cd abootimg make cp -p abootimg /usr/local/sbin ====== References ====== [[http://android.git.kernel.org/?p=platform/system/core.git;a=tree;f=mkbootimg|The official tool used to create boot images is part of the Android Project]] [[http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_Re-Pack_Boot_Images#Alternative_Method|HOWTO: Unpack, Edit, and Re-Pack Boot Images]] ====== Greatings ====== Thank you very much for this great tools ggrandou! ;-)