爱黑武论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10214|回复: 6

[安卓技术] 【制作安卓刷机包x】---番外篇,制作system.img命令

[复制链接]
发表于 2011-5-8 20:44 | 显示全部楼层 |阅读模式

立即注册,加入爱黑武论坛的大家庭!爱黑武,爱上搞机生活!

您需要 登录 才可以下载或查看,没有账号?注册

x

linux中使用root用户运行mksystem.sh,即可生成system.img........

默认生成的yaffs2镜像,如果需要ext2或squashfs镜像,百度.谷歌方法。
boot.img这个想做的,百度吧



mksystem.sh 脚本命令:
  1. #!/bin/sh

  2. ####################

  3. # 获取当前路径

  4. ####################

  5. SCRIPT_PATH=`dirname $(readlink -f $0)`

  6. EXTRACT_PATH=$SCRIPT_PATH/extract

  7. ####################

  8. # 获取升级包名称

  9. # 解压缩升级包

  10. ####################

  11. BUILD=`ls $SCRIPT_PATH/*.zip | tail -1`

  12. BUILD_VER=`echo $BUILD | cut -d'-' -f2 | sed 's/.zip//'`

  13. unzip $SCRIPT_PATH/$BUILD -d $EXTRACT_PATH/

  14. ####################

  15. # 删除不需要的文件

  16. ####################

  17. # app

  18. rm $EXTRACT_PATH/system/app/CMWallpapers.apk

  19. rm $EXTRACT_PATH/system/app/Provision.apk

  20. rm $EXTRACT_PATH/system/app/RomManager.apk

  21. # etc

  22. rm $EXTRACT_PATH/system/etc/init.d/05mountsd

  23. rm $EXTRACT_PATH/system/etc/firmware/default*.acdb

  24. # lib

  25. rm $EXTRACT_PATH/system/lib/hw/gps.goldfish.so

  26. rm $EXTRACT_PATH/system/lib/hw/gps.mahimahi.so

  27. rm $EXTRACT_PATH/system/lib/hw/sensors.goldfish.so

  28. rm $EXTRACT_PATH/system/lib/hw/lights.mahimahi.so

  29. # tts

  30. rm $EXTRACT_PATH/system/tts/lang_pico/de-DE_gl0_sg.bin

  31. rm $EXTRACT_PATH/system/tts/lang_pico/de-DE_ta.bin

  32. rm $EXTRACT_PATH/system/tts/lang_pico/en-GB_kh0_sg.bin

  33. rm $EXTRACT_PATH/system/tts/lang_pico/en-GB_ta.bin

  34. rm $EXTRACT_PATH/system/tts/lang_pico/es-ES_ta.bin

  35. rm $EXTRACT_PATH/system/tts/lang_pico/es-ES_zl0_sg.bin

  36. rm $EXTRACT_PATH/system/tts/lang_pico/fr-FR_nk0_sg.bin

  37. rm $EXTRACT_PATH/system/tts/lang_pico/fr-FR_ta.bin

  38. rm $EXTRACT_PATH/system/tts/lang_pico/it-IT_cm0_sg.bin

  39. rm $EXTRACT_PATH/system/tts/lang_pico/it-IT_ta.bin

  40. # usr

  41. rm $EXTRACT_PATH/system/usr/keylayout/mahimahi-keypad.kl

  42. rm $EXTRACT_PATH/system/usr/keychars/mahimahi-keypad.kcm.bin

  43. ####################

  44. # 替换相关文件

  45. # 修改build.prop,使其适用于本机型

  46. ####################

  47. cp -a $SCRIPT_PATH/update/* $EXTRACT_PATH/system

  48. mv $EXTRACT_PATH/system/lib/hw/sensors.mahimahi.so $EXTRACT_PATH/system/lib/hw/sensors.htcleo.so

  49. # build.prop

  50. sed -i \

  51.     -e 's/ro.product.model=Nexus One/ro.product.model=HTC HD2/' \

  52.     -e 's/ro.product.brand=google/ro.product.brand=htc_wwe/' \

  53.     -e 's/ro.product.board=mahimahi/ro.product.board=htcleo/' \

  54.     -e 's/-N1/-HD2ONE/' \

  55.     $EXTRACT_PATH/system/build.prop

  56. ####################

  57. # 读取updater-script

  58. # 创建符号链接

  59. # 设置目录和文件权限

  60. ####################

  61. # updater script

  62. UPDATE_SCRIPT=$EXTRACT_PATH/META-INF/com/google/android/updater-script

  63. # create symbolic links

  64. SYMLINKS=`grep "symlink" $UPDATE_SCRIPT | cut -d'"' -f2`

  65. for SYMLINK in $SYMLINKS; do

  66.     echo "Creating symolic links for $SYMLINK..."

  67.     if [ "$SYMLINK" = "busybox" -o "$SYMLINK" = "iwmulticall" ]; then

  68.         LINK_DIR='/system/xbin/'

  69.     elif [ "$SYMLINK" = "toolbox" ]; then

  70.         LINK_DIR='/system/bin/'

  71.     fi

  72.     MATCHES=`awk '/symlink\("'"$SYMLINK"'/,/\);/ {print}' $UPDATE_SCRIPT | \

  73.              sed "s/symlink("$SYMLINK",//g" | \

  74.              sed 's/);//g' | \

  75.              sed 's/"//g' | \

  76.              sed 'N;s/\n//g' | \

  77.              sed 's/ //g' | \

  78.              sed 's/,/ /g' | \

  79.              sed "s@$LINK_DIR@@g"`

  80.     cd $EXTRACT_PATH$LINK_DIR

  81.     for LINK in $MATCHES; do

  82.         echo -n "Linking $SYMLINK to $LINK... "

  83.         ln -sf $SYMLINK $LINK && echo "done"

  84.     done

  85. done

  86. # set permissions

  87. grep "set_perm_recursive" $UPDATE_SCRIPT | grep -v "tmp" | grep -v "recovery" | \

  88. while read LINE; do

  89.     PERM=`echo $LINE | sed 's/set_perm_recursive(//g' | sed 's/);//g' | sed 's/"//g' | sed 's/ //g'`

  90.     USER=`echo $PERM | cut -d',' -f1`;

  91.     GROUP=`echo $PERM | cut -d',' -f2`;

  92.     DIR_PERM=`echo $PERM | cut -d',' -f3`;

  93.     FILE_PERM=`echo $PERM | cut -d',' -f4`;

  94.     TARGET=`echo $PERM | cut -d',' -f5`;

  95.     echo -n "Setting permissions for $TARGET... "

  96.     chown -R $USER:$GROUP $EXTRACT_PATH$TARGET

  97.     chmod -R $DIR_PERM $EXTRACT_PATH$TARGET

  98.     find $EXTRACT_PATH$TARGET -type f -exec chmod $FILE_PERM {} \; && echo "done"

  99. done

  100. grep "set_perm" $UPDATE_SCRIPT | grep -v "recursive" | grep -v "tmp" | grep -v "recovery" | \

  101. while read LINE; do

  102.     PERM=`echo $LINE | sed 's/set_perm(//g' | sed 's/);//g' | sed 's/"//g' | sed 's/ //g'`

  103.     USER=`echo $PERM | cut -d',' -f1`;

  104.     GROUP=`echo $PERM | cut -d',' -f2`;

  105.     FILE_PERM=`echo $PERM | cut -d',' -f3`;

  106.     TARGET=`echo $PERM | cut -d',' -f4`;

  107.     echo -n "Setting permissions for $TARGET... "

  108.     chown $USER:$GROUP $EXTRACT_PATH$TARGET

  109.     chmod $FILE_PERM $EXTRACT_PATH$TARGET && echo "done"

  110. done

  111. ####################

  112. # 这部分可以删除

  113. ####################

  114. chown 0:2000 $EXTRACT_PATH/system/xbin/cssync

  115. chmod 06755 $EXTRACT_PATH/system/xbin/cssync

  116. ####################

  117. # 创建yaffs2镜像文件

  118. ####################

  119. rm -f $SCRIPT_PATH/system-$BUILD_VER.img

  120. cd $EXTRACT_PATH && mkyaffs2image system $SCRIPT_PATH/system-$BUILD_VER.img

  121. chmod 644 $SCRIPT_PATH/system-$BUILD_VER.img

复制代码
 楼主| 发表于 2011-5-8 20:45 | 显示全部楼层
这个  具体  包 具体 对待  ,,不是  一层不变的   
发表于 2011-5-8 21:00 | 显示全部楼层
支持一下。。。
发表于 2011-5-8 21:06 | 显示全部楼层
顶  虽说不打算大搞手机了[s:113]

点评

你必须 顶啊  发表于 2011-5-8 21:16
发表于 2011-5-8 21:18 | 显示全部楼层
不懂
纯支持
发表于 2011-5-8 21:29 | 显示全部楼层
不懂的飘过~~~~~~~~
[s:72]
发表于 2011-5-8 22:48 | 显示全部楼层
我觉得有的照猫画虎就完了  嘿嘿
 Hello,黑武的好机友!回复想偷个懒?点这里: 
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|Archiver|手机版|爱黑武论坛 ( 京ICP备2023028323号 | 京公网安备11011202000270号 )

GMT+8, 2024-11-23 17:39 , Processed in 0.047039 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, ihei5.com

快速回复 返回顶部 返回列表