sc03e make_rooted_systemを読み解く
https://github.com/kbc-developers/release/wiki/common
普段、世話になってばっかりで、仕組みについて全く理解していない。少しでも中身を解っていれば、トラブル対応、自分流カスタマイズの役に立つと思う。
suとSuperuserを_FACTORYFS_DIR内に配置するところ
func_install_su_type1() { _FACTORYFS_DIR=$1 echo ">>>>> su package insall..." sudo cp -av sed/su $_FACTORYFS_DIR/xbin/su sudo cp -av sed/Superuser.apk $_FACTORYFS_DIR/app/Superuser.apk sudo chown 0.0 $_FACTORYFS_DIR/xbin/su sudo chmod 6755 $_FACTORYFS_DIR/xbin/su sudo chown 0.0 $_FACTORYFS_DIR/app/Superuser.apk sudo chmod 644 $_FACTORYFS_DIR/app/Superuser.apk } # ------------------------------------------------------- func_install_su_type2() { _FACTORYFS_DIR=$1 echo ">>>>> su package insall..." sudo cp -av sed/SGS3RootingApp.apk $_FACTORYFS_DIR/app/SGS3RootingApp.apk sudo rm $_FACTORYFS_DIR/bin/fsslcmnd sudo cp -av sed/busybox_mount $_FACTORYFS_DIR/bin/busybox_mount sudo chown 0.2000 $_FACTORYFS_DIR/bin/busybox_mount sudo chmod 755 $_FACTORYFS_DIR/bin/busybox_mount sudo cp -av sed/setuid_wrapper $_FACTORYFS_DIR/bin/setuid_wrapper sudo chown 0.0 $_FACTORYFS_DIR/bin/setuid_wrapper sudo chmod 6755 $_FACTORYFS_DIR/bin/setuid_wrapper sudo rm $_FACTORYFS_DIR/bin/toolbox sudo cp -av sed/toolbox $_FACTORYFS_DIR/bin/toolbox sudo chown 0.2000 $_FACTORYFS_DIR/bin/toolbox sudo chmod 755 $_FACTORYFS_DIR/bin/toolbox sudo cp -av sed/install-recovery.sh $_FACTORYFS_DIR/etc/install-recovery.sh sudo cp -av sed/install-recovery.sh $_FACTORYFS_DIR/etc/rooting.sh sudo chown 0.0 $_FACTORYFS_DIR/etc/install-recovery.sh sudo chmod 755 $_FACTORYFS_DIR/etc/install-recovery.sh sudo chown 0.0 $_FACTORYFS_DIR/etc/rooting.sh sudo chmod 755 $_FACTORYFS_DIR/etc/rooting.sh sudo cp -av sed/busybox_file $_FACTORYFS_DIR/etc/busybox_file sudo cp -av sed/su_file $_FACTORYFS_DIR/etc/su_file }
最終工程のfunc_make_odin_packageはイメージファイル群である$OPT_FILESを無圧縮tarでくっつけて、md5のチェックサムを後ろにくっつけている。
func_make_odin_package() { _OUT_DIR=$1 _FACTORYFS_IMG=$2 _IMAGE_FILE=$3 _OPT_FILES=$4 echo ">>>>> make odin package..." cd $_OUT_DIR tar cvf $_IMAGE_FILE-system.tar $_FACTORYFS_IMG $_OPT_FILES md5sum -t $_IMAGE_FILE-system.tar >> $_IMAGE_FILE-system.tar mv $_IMAGE_FILE-system.tar $_IMAGE_FILE-system.tar.md5 sudo rm $_FACTORYFS_IMG if [ ! -z $_OPT_FILES ]; then sudo rm $_OPT_FILES fi cd $BASE_DIR }