|
update-script腳本語法說明(根據(jù)android源代碼中的recovery.c進(jìn)行的定義): http://www./it/ho ... kage/ 1.copy_dir 語法:copy_dir 作用:將 舉例:copy_dir PACKAGE:system SYSTEM:(將升級(jí)包中的system文件夾復(fù)制到手機(jī)中) 2.format 語法:format 作用:格式化一個(gè)分區(qū) 舉例:format SYSTEM:(將手機(jī)/system分區(qū)完全格式化) 注意:格式化之后的數(shù)據(jù)是不可以恢復(fù)的 3.delete 語法:delete 作用:刪除文件1,2到n 舉例:delete SYSTEM:app/Calculator.apk(刪除手機(jī)systen文件夾中app中的Calculator.apk文件) 4.delete_recursive 語法:delete_recursive 作用:刪除文件或者目錄,刪除目錄時(shí)會(huì)將目錄中的所有內(nèi)容全部刪除 舉例:delete_recursive DATA:dalvik-cache(刪除/data/dalvik-cache文件夾下的所有內(nèi)容) 5.run_program 語法:run_program 作用:運(yùn)行終端程序 舉例:run_program PACKAGE:install_busybox.sh(執(zhí)行升級(jí)包中的install_busybox.sh腳本) 6.set_perm 語法:set_perm 作用:設(shè)置單個(gè)文件或目錄的所有者和權(quán)限,像linux中的chmod、chown或chgrp命令一樣,只是集中在了一個(gè)命令當(dāng)中 舉例:set_perm 0 2000 0550 SYSTEM:etc/init.goldfish.sh(設(shè)置手機(jī)system中的etc/init.goldfish.sh的用戶為root,用戶組為shell,所有者以及所屬用戶組成員可以進(jìn)行讀取和執(zhí)行操作,其他用戶無操作權(quán)限) 7.set_perm_recursive 語法:set_perm_recursive 作用:設(shè)置文件夾及文件夾中的文件的所有者和用戶組 舉例:set_perm_recursive 0 0 0755 0644 SYSTEM:app(設(shè)置手機(jī)system/app文件夾及其中文件的用戶為root,用戶組為root,app文件夾權(quán)限為所有者可以進(jìn)行讀、寫、執(zhí)行操作,其他用戶可以進(jìn)行讀取和執(zhí)行操作,其中的文件的權(quán)限為所有者可以進(jìn)行讀寫操作,其他用戶可以進(jìn)行讀取操作) 8.show_progress 語法:show_progress <表示一個(gè)小部分> <表示一個(gè)小部分的持續(xù)時(shí)間> 作用:為下面進(jìn)行的程序操作顯示進(jìn)度條,進(jìn)度條會(huì)根據(jù) 舉例:show_progress 0.1 0(顯示進(jìn)度條當(dāng)操作完成后前進(jìn)10%) 9.symlink 語法:symlink 表示鏈接到的目標(biāo),表示快捷方式的路徑 作用:相當(dāng)于linux中的ln命令,將在處創(chuàng)建一個(gè)軟鏈接,的格式應(yīng)為絕對(duì)路徑(或許相對(duì)路徑也可以),為“根目錄:路徑”的形式 舉例:symlink /system/bin/su SYSTEM:xbin/su(在手機(jī)中system中的xbin中建立一個(gè)/system/bin/su的快捷方式) android文件系統(tǒng)和分區(qū)的定義方式(根據(jù)android的源代碼的root.c獲得): 根目錄 Linux塊設(shè)備 掛載點(diǎn) 文件系統(tǒng) 大小 描述 BOOT: /dev/mtdblock[?] / RAM RAW 內(nèi)核,內(nèi)存,系統(tǒng)啟動(dòng)引導(dǎo)信息 DATA: /dev/mtdblock5 /data yaffs2 91904kb 用戶,系統(tǒng)設(shè)置,程序設(shè)置和應(yīng)用程序,不包括app2sd CACHE: /dev/mtdblock4 /cache yaffs2 30720kb OTA方式下載的緩存,恢復(fù)和升級(jí)時(shí)的設(shè)置以及臨時(shí)文件 MISC: /dev/mtdblock[?] 無 未知 RAW 暫時(shí)未知 PACKAGE: 相對(duì)于升級(jí)包而存在 無 相對(duì)于升級(jí)包存在的文件系統(tǒng) 不確定 升級(jí)包 RECOVERY: /dev/mtdblock[?] / RAM RAW 恢復(fù)模式和系統(tǒng)升級(jí)所需要的內(nèi)核和內(nèi)存部分,與BOOT分區(qū)類似 SDCARD: /dev/mmcblk0(p1) /sdcard fat32 32MB-32GB 內(nèi)存卡,update.zip升級(jí)包通常放在這里 SYSTEM: /dev/mtdblock3 /system yaffs2 92160kb 系統(tǒng)分區(qū),靜態(tài)并且只讀的 TMP: 無 /tmp RAM 標(biāo)準(zhǔn)的Linux緩存文件系統(tǒng) 更新部分update-script命令: 1.assert 作用:此命令用來判斷表達(dá)式boolexpr的正確與否,當(dāng)表達(dá)式錯(cuò)誤時(shí)程序終止執(zhí)行 ※此作用有待驗(yàn)證 2.write_radio_image 作用:將基帶部分的鏡像寫入手機(jī), 舉例:write_radio_image PACKAGE:radio.img 3.write_hboot_image 作用:將系統(tǒng)bootloader鏡像寫入手機(jī), 舉例:write_hboot_image PACKAGE:hboot.img 4.write_raw_image 作用:將boot.img寫入手機(jī),里面包含了內(nèi)核和ram盤 舉例:write_raw_image PACKAGE:boot.img BOOT: 更新手機(jī)常識(shí)理解: system:系統(tǒng)分區(qū).我們刷機(jī)器一般就是刷的這個(gè)分區(qū). userdata:數(shù)據(jù)分區(qū). cache:緩存分區(qū) recovery:Recovery分區(qū),相當(dāng)于建立在hboot與android系統(tǒng)間的一個(gè)中間層,如名字一般,主要用于系統(tǒng)調(diào)試和恢復(fù)。. boot:存放內(nèi)核和ramdisk的分區(qū). hboot:這個(gè)是SPL所在的分區(qū),即 bootloader splash1:這個(gè)就是開機(jī)第一屏幕了. radio:這個(gè)是無線所在的分區(qū). misc:其他分區(qū) |
|
|