android

ramdisk-uboot.img 수정

깍수 2014. 6. 30. 10:43

AIL(Android Initial Language) 파일들을 수정하려면 동작 상태를 확인하려면 full android를 build하는것 보다 직접 이미지 파일(ramdisk.img)을 풀어서 수정하여 보자.


위의 ramdisk.img 파일의 위치는 out/target/product/$(product Name)/ 에서 찾아 볼 수 있다.

file ramdisk.img 하여 확인해 보면 gzip으로 압축 되어있는 것을 확인할 수 있다.

$file ramdisk.img
ramdisk.img: gzip compressed data, from Unix 


압축을 풀기 위해서 확장자를 변경한 다음 gzip을 이용하여 압축을 아래와 같이 해제 한다.

$mv ramdisk.img ramdisk.img.gz

$gzip -d ramdisk.img.gz 


이것을 다시 cpio를 이용하여 다시 풀어 내용을 확인 및 수정 한다.

 $cpio -i -F ramdisk.img


수정 완료후 다시 img 파일로 묶고 압축을 한다.

$find . | cpio -o -H newc | gzip > ../ramdisk.img


위 명령에서 gzip만 빼면 압축 없는 cpio 이미지가 만들어 진다.

$find . | cpio --quiet -o -H newc > ../rootfs.cpio


* cpio 파일을 풀기

$cd system <= 저장될 위치

 $cpio -i < (이미지 위치)/rootfs.cpio