移动叔叔

标题: Android的Amend脚本(update-script)和Edify脚本(updater-script和update-binary)比较 [打印本页]

作者: polar    时间: 2011-8-28 15:46
标题: Android的Amend脚本(update-script)和Edify脚本(updater-script和update-binary)比较
Android的Amend脚本(update-script)和Edify脚本(updater-script和update-binary)比较
我不是春哥@移动叔叔
2011年8月28日

[attach]85393[/attach]
PDF下载



  最近在汉化移植ClockworkMod的Recovery到基于MT6573方案的联想的A60机器,新版的Recovery仅支持的Edify脚本和之前的RA的Recovery支持的Amend脚本语法比较不完整版.供做ROM的同学参考.


[attach]85391[/attach]

如果使用老的脚本的卡刷包将会提示如下:

Amend scripting (update-script) is no longer supported,
Amend scripting was deprecated by Google in Android 1.5.
It was necessary to remove it when upgrading to the ClockworkMod 3.0 Gingerbread based recovery.
Please swith to Edify scripting (update-script and update-binary) to create working update zip packages
Installation aborted。

大致意思是:

Amend脚本(update-script)已经不再支持,
在Android1.5的时使用的Amend脚本已经过时
有必要更新到姜饼的最新recovery
请将升级包脚本升级到Edify脚本(updater-script和update-binary).
安装已取消!

1安装信息输出:
  Amend:
          无
  Edify:
          ui_print(“---start mobileuncle update---”);


[attach]85394[/attach]


通过ui_print()命令可以输出脚本执行到那个环节了


2 格式化分区
  Amend:
                 format SYSTEM:
                 format DATA:
                 format CACHE:
       Edify:
                 format(“MTD,”system”);
                 format(“MTD”,”userdata”);
                 format(“MTD”,”cache”);
3 复制分区
 3.1 system分区
       Amend:
      copy_dir PACKAGE:system SYSTEM:
     Edify:
                mount("MTD", "system", "/system");
                package_extract_dir("system", "/system");
 3.2 data分区
   Amend:
            copy_dir PACKAGE:data DATA:
         Edify:
            mount("MTD", "userdata", "/data");
            package_extract_dir("data", "/data");  
  3.3 sdcard            
       Amend:
           copy_dir PACKAGE:sdcard SDCARD:
       Edify:
           mount("vfat","/dev/block/mmcblk0p1","/sdcard");
           package_extract_dir("sdcard", "/sdcard");

  4 删除目录
   Amend: 
        delete_recursive DATA:app
   Edify:
              delete_recursive("/data/app");

5 删除文件
   Amend:
      delete DATA:etc/hosts
   Edify:
             delete("/data/etc/hosts");




6 目录权限设置
   Amend:  
          set_perm_recursive 1000 1000 0771 0644 DATA:app
     Edify:
          set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");

7 文件权限设置
 Amend:
          set_perm 2000 2000 0771 DATA:etc
   Edify:
          set_perm(2000, 2000, 0771, "/data/etc");

8 软链接
 Amend:
    symlink /data/app/apps.apk SYSTEM:app/apps.apk
    symlink /data/etc/hosts SYSTEM:etc/hosts

  Edify:
       symlink("/data/app/apps.apk", "/system/app/apps.apk");
       symlink("/data/etc/hosts", "/system/etc/hosts");

9 toolbox软链                                 
  Amend:
    symlink toolbox SYSTEM:bin/date
  Edify:
        symlink("toolbox", "/system/bin/date");

10 Busybox安装
      Amend:                                       
           run_program PACKAGE:installbusybox
      Edify:   
          run_program("installbusybox");
         set_perm(0, 1000, 0755, "/system/xbin/busybox");

11 写Boot.img
    Amend:
      format BOOT:
      write_raw_image PACKAGE:boot.img BOOT:
    Edify:
      package_extract_file("boot.img","/tmp/boot.img");
      write_raw_image("/tmp/boot.img", "boot");
      delete("/tmp/boot.img");


12 toolbox批量软链
Amend:
     无
Edify:
   symlink("toolbox",
         "/system/bin/renice","/system/bin/cmp",
        "/system/bin/chown","/system/bin/rm",
        "/system/bin/chmod","/system/bin/df",
        "/system/bin/sleep","/system/bin/sendevent",
        "/system/bin/mount","/system/bin/setprop",
        "/system/bin/hd","/system/bin/umount",
        "/system/bin/getevent","/system/bin/ls",
        "/system/bin/uptime","/system/bin/watchprops",
        "/system/bin/start","/system/bin/top",
        "/system/bin/lsof","/system/bin/kill",
        "/system/bin/reboot","/system/bin/ps",
        "/system/bin/route","/system/bin/wipe",
        "/system/bin/dd","/system/bin/setconsole",
        "/system/bin/cat","/system/bin/sync",
        "/system/bin/mv","/system/bin/notify",
        "/system/bin/rmdir","/system/bin/date",
        "/system/bin/ifconfig","/system/bin/insmod",
        "/system/bin/dmesg","/system/bin/lsmod",
        "/system/bin/id","/system/bin/smd",
        "/system/bin/getprop","/system/bin/ln",
   "/system/bin/stop","/system/bin/log",
        "/system/bin/netstat","/system/bin/ionice",
        "/system/bin/newfs_msdos","/system/bin/schedtop",
        "/system/bin/nandread","/system/bin/vmstat",
        "/system/bin/rmmod","/system/bin/printenv",
        "/system/bin/mkdir","/system/bin/iftop",
        "/system/bin/ioctl");
set_perm(0, 0, 04755, "/system/bin/toolbox");



13 busybox批量软链
Amend:
     无
Edify:
 symlink("busybox", "/system/xbin/[","/system/xbin/[[",
            "/system/xbin/addgroup","/system/xbin/adduser",
            "/system/xbin/adjtimex","/system/xbin/ar",
                         "/system/xbin/arp","/system/xbin/arping",
            "/system/xbin/ash","/system/xbin/awk",
            "/system/xbin/basename","/system/xbin/bbconfig",
                         "/system/xbin/beep","/system/xbin/blkid",
                    "/system/xbin/brctl",”/system/xbin/bunzip2",
                    "/system/xbin/bzcat","/system/xbin/bzip2",
                    ”/system/xbin/cal","/system/xbin/cat",
                    "/system/xbin/catv",”/system/xbin/chat",
                    "/system/xbin/chattr","/system/xbin/chgrp",
                    ”/system/xbin/chmod","/system/xbin/chown",
                    "/system/xbin/chpasswd",”/system/xbin/chpst",
                    "/system/xbin/chroot","/system/xbin/chrt",
                    ”/system/xbin/chvt","/system/xbin/cksum",
                    "/system/xbin/clear",”/system/xbin/cmp",
                    "/system/xbin/comm","/system/xbin/cp",
                    ”/system/xbin/cpio","/system/xbin/crond",
                    "/system/xbin/crontab",”/system/xbin/cryptpw",
                    "/system/xbin/cttyhack","/system/xbin/cut",
                    ”/system/xbin/date","/system/xbin/dc",
                    "/system/xbin/dd",”/system/xbin/deallocvt",
                    "/system/xbin/delgroup","/system/xbin/deluser",
                    ”/system/xbin/depmod","/system/xbin/devmem",
                    "/system/xbin/df",”/system/xbin/diff",
                    "/system/xbin/dirname","/system/xbin/dmesg",
                    ”/system/xbin/dnsd","/system/xbin/dnsdomainname",
                    "/system/xbin/dos2unix",”/system/xbin/du",
                    "/system/xbin/dumpkmap","/system/xbin/echo",
                    ”/system/xbin/ed","/system/xbin/egrep",
                    "/system/xbin/eject",”/system/xbin/env",
                    "/system/xbin/envdir","/system/xbin/envuidgid",
                    ”/system/xbin/ether-wake","/system/xbin/expand",
                    "/system/xbin/expr",”/system/xbin/fakeidentd",
                    "/system/xbin/false","/system/xbin/fbset",
                    ”/system/xbin/fbsplash","/system/xbin/fdflush",
                    "/system/xbin/fdformat",”/system/xbin/fdisk",
                    "/system/xbin/fgrep","/system/xbin/find",
                    ”/system/xbin/findfs","/system/xbin/fold",
                    "/system/xbin/free",”/system/xbin/fsck",
                    "/system/xbin/fsck.minix","/system/xbin/fsync",
                    ”/system/xbin/ftpd","/system/xbin/ftpget",
                    "/system/xbin/ftpput",”/system/xbin/fuser",
                    "/system/xbin/getopt","/system/xbin/getty",
                    ”/system/xbin/grep","/system/xbin/gunzip",
                    "/system/xbin/gzip",”/system/xbin/halt",
                    "/system/xbin/hd","/system/xbin/hdparm",
                    ”/system/xbin/head","/system/xbin/hexdump",
                    "/system/xbin/hostid",”/system/xbin/hostname",
                    "/system/xbin/httpd","/system/xbin/hush",
                    ”/system/xbin/hwclock","/system/xbin/id",
                    "/system/xbin/ifconfig",”/system/xbin/ifdown",
                        "/system/xbin/ifenslave","/system/xbin/ifplugd",
                        ”/system/xbin/ifup","/system/xbin/inetd",
                        "/system/xbin/init",”/system/xbin/insmod",
                        "/system/xbin/install","/system/xbin/ionice",
                        ”/system/xbin/ip","/system/xbin/ipaddr",
                        "/system/xbin/ipcalc",”/system/xbin/ipcrm",
                        "/system/xbin/ipcs","/system/xbin/iplink",
                        ”/system/xbin/iproute","/system/xbin/iprule",
                        "/system/xbin/iptunnel",”/system/xbin/kbd_mode",
                        "/system/xbin/kill","/system/xbin/killall",
                        ”/system/xbin/killall5","/system/xbin/klogd",
                        "/system/xbin/last",”/system/xbin/length",
                        "/system/xbin/less","/system/xbin/linux32",
                        ”/system/xbin/linux64","/system/xbin/linuxrc",
                        "/system/xbin/ln",”/system/xbin/loadfont",
                        "/system/xbin/loadkmap","/system/xbin/logger",
                        ”/system/xbin/login","/system/xbin/logname",
                        "/system/xbin/logread",”/system/xbin/losetup",
                        "/system/xbin/lpd","/system/xbin/lpq",
                        ”/system/xbin/lpr","/system/xbin/ls",
                        "/system/xbin/lsattr",”/system/xbin/lsmod",
                        "/system/xbin/lzmacat","/system/xbin/lzop",
                        ”/system/xbin/lzopcat","/system/xbin/makedevs",
                        "/system/xbin/makemime",”/system/xbin/man",
                        "/system/xbin/md5sum","/system/xbin/mdev",
                        ”/system/xbin/mesg","/system/xbin/microcom",
                        "/system/xbin/mkdir",”/system/xbin/mkdosfs",
                        "/system/xbin/mkfifo","/system/xbin/mkfs.minix",
                        ”/system/xbin/mkfs.vfat","/system/xbin/mknod",
                        "/system/xbin/mkpasswd",”/system/xbin/mkswap",
                        "/system/xbin/mktemp","/system/xbin/modprobe",
                        ”/system/xbin/more","/system/xbin/mount",
                        "/system/xbin/mountpoint",”/system/xbin/msh",
                        "/system/xbin/mt","/system/xbin/mv",
                        "/system/xbin/nameif",”/system/xbin/nc",
                        "/system/xbin/netstat","/system/xbin/nice",
                        ”/system/xbin/nmeter","/system/xbin/nohup",
                        "/system/xbin/nslookup",”/system/xbin/od",
                        "/system/xbin/openvt","/system/xbin/passwd",
                        ”/system/xbin/patch","/system/xbin/pgrep",
                        "/system/xbin/pidof",”/system/xbin/ping",
                        "/system/xbin/ping6","/system/xbin/pipe_progress",
                        ”/system/xbin/pivot_root","/system/xbin/pkill",
                        "/system/xbin/popmaildir",”/system/xbin/poweroff",
                        "/system/xbin/printenv","/system/xbin/printf",
                        ”/system/xbin/ps","/system/xbin/pscan",
                        "/system/xbin/pwd","/system/xbin/raidautorun",
                        ”/system/xbin/rdate","/system/xbin/rdev",
                        "/system/xbin/readahead",”/system/xbin/readlink",
                        "/system/xbin/readprofile","/system/xbin/realpath",
                        ”/system/xbin/reformime","/system/xbin/renice",
                        "/system/xbin/reset",”/system/xbin/resize",
                        "/system/xbin/rm","/system/xbin/rmdir",
                        ”/system/xbin/rmmod","/system/xbin/route",
                        "/system/xbin/rtcwake",”/system/xbin/run-parts",
                        "/system/xbin/runlevel","/system/xbin/runsv",
                        ”/system/xbin/runsvdir","/system/xbin/rx",
                        "/system/xbin/script",”/system/xbin/scriptreplay",
                        "/system/xbin/sed","/system/xbin/sendmail",
                        ”/system/xbin/seq","/system/xbin/setarch",
                        "/system/xbin/setconsole",”/system/xbin/setfont",
                        "/system/xbin/setkeycodes","/system/xbin/setlogcons",
                        ”/system/xbin/setsid","/system/xbin/setuidgid",
                        "/system/xbin/sh",”/system/xbin/sha1sum",
                        "/system/xbin/sha256sum","/system/xbin/sha512sum",
                        ”/system/xbin/showkey","/system/xbin/slattach",
                        "/system/xbin/sleep",”/system/xbin/softlimit",
                        "/system/xbin/sort","/system/xbin/split",
                        ”/system/xbin/start-stop-daemon","/system/xbin/stat",
                        "/system/xbin/strings",”/system/xbin/stty",
                        "/system/xbin/sulogin","/system/xbin/sum",
                        ”/system/xbin/sv","/system/xbin/svlogd",
                        "/system/xbin/swapoff",”/system/xbin/swapon",
                        "/system/xbin/switch_root","/system/xbin/sync",
                        ”/system/xbin/sysctl","/system/xbin/syslogd",
                        "/system/xbin/tac",”/system/xbin/tail",
                        "/system/xbin/tar","/system/xbin/tcpsvd",
                        ”/system/xbin/tee","/system/xbin/telnet",
                        "/system/xbin/telnetd",”/system/xbin/test",
                        "/system/xbin/tftp","/system/xbin/tftpd",
                        ”/system/xbin/time","/system/xbin/timeout",
                        "/system/xbin/top",”/system/xbin/touch",
                        "/system/xbin/tr","/system/xbin/traceroute",
                        ”/system/xbin/true","/system/xbin/tty",
                        "/system/xbin/ttysize",”/system/xbin/tunctl",
                        "/system/xbin/udpsvd","/system/xbin/umount",
                        ”/system/xbin/uname","/system/xbin/uncompress",
                        "/system/xbin/unexpand",”/system/xbin/uniq",
                        "/system/xbin/unix2dos","/system/xbin/unlzma",
                        ”/system/xbin/unlzop","/system/xbin/unzip",
                        "/system/xbin/uptime",”/system/xbin/usleep",
                        "/system/xbin/uudecode","/system/xbin/uuencode",
                        ”/system/xbin/vconfig","/system/xbin/vi",
                        "/system/xbin/vlock",”/system/xbin/volname",
                        "/system/xbin/watch","/system/xbin/watchdog",
                        ”/system/xbin/wc","/system/xbin/wget",
                        "/system/xbin/which",”/system/xbin/who",
                        "/system/xbin/whoami","/system/xbin/xargs",
                        ”/system/xbin/yes","/system/xbin/zcat",
                        "/system/xbin/zcip");
                                
set_perm(0, 1000, 0755, "/system/xbin/busybox");

参考:
1 [SS][原创]2011年元旦首发MTK Android系统卡刷Update.zip刷机包制作教程15页PDF文档
2 http://forum.xda-developers.com/showthread.php?t=936175
作者: boramm    时间: 2016-1-1 17:51
可口可乐了可口可乐了
作者: rolwu    时间: 2016-2-2 17:46
Good!

作者: leeyonwang    时间: 2016-4-20 15:01
RE: Android的Amend脚本(update-script)和Edify脚本(updater-script和update-binary)比较 [[url=]修改[/url]]









作者: woshini大爷    时间: 2016-5-14 15:57
呵呵,太感谢了,真的很不错~~
作者: 15319498863    时间: 2016-8-18 06:17
Android的Amend脚本(update-script)和Edify脚本(updater-script和update-binary)比较 [[url=]修改[/url]

作者: javedyu    时间: 2017-8-22 22:22
强烈支持楼主ing……
作者: yeren86125    时间: 2017-9-27 15:37
感谢楼主分享
作者: elivon    时间: 2018-2-17 22:40
谢谢分享,学习中!





欢迎光临 移动叔叔 (http://bbs.ydss.cn/) Powered by Discuz! X3.2