注意:以下代碼中#開頭的則爲需要執行的shell命令,其他的爲打印的結果。#代表需要使用ROOT權限(su)執行,所以想要修改您android手機某個目錄掛載爲讀寫,首先需要有ROOT權限!
#adb shell
# mount
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
none /dev/cpuctl cgroup rw,cpu 0 0
/dev/block/mtdblock0 /system yaffs2 ro 0 0
/dev/block/mtdblock1 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock2 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block//vold/179:0 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
從上面的紅字部分可以看得出/system的權限是ro即是read only。
# mount -o remount /dev/block/mtdblock0 /system
# mount
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
none /dev/cpuctl cgroup rw,cpu 0 0
/dev/block/mtdblock0 /system yaffs2 rw 0 0
/dev/block/mtdblock1 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock2 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block//vold/179:0 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
已經修改完成
如果要改回去ro
#mount -o remount,ro /dev/block/mtdblock0 /system
退出adb 會自動改爲ro模式。
當/system 目錄爲RW權限後,您就可以隨意刪除或者替換系統應用了。可能您替換程序後還需要執行
$chmod 644 /system/app/您的程序.apk 【實際中我驗證是不需要的】
$代表一般權限,無需ROOT權限即可執行的命令。執行此命令後您的APK才能獲得執行權限,否則默認是無法執行的,程序在system/app目錄不顯示圖標,那說明它沒有執行權限