用于将 /System 重挂载为可读/可写的 root Android 终端命令

我正在编写一个安卓应用程序,需要在运行时将文件复制到 "/system"分区。我已经掌握了运行 "su"的命令,可以成功请求超级用户权限,并以 root 身份运行命令。但我不知道如何让这个应用程序在多台设备上通用,因为挂载命令会因 /system 的实际挂载位置而不同。下面是最常用的命令:

mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system

但我知道,在某些设备上,mtdblock3 可能是不同的(我想,yaffs2 也可能是不同的)。因此,我的问题是:有没有一种通用命令可以适用于所有手机?或者有没有办法在运行时找出正确的参数?

我使用这个命令:

mount -o rw,remount /system
评论(9)
解决办法

你可以运行不带参数的 mount 命令,以便在构建挂载命令前获得分区信息。下面是 HTC Hero 输出的不带参数的挂载命令示例。

$ mount
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/mtdblock3 /system yaffs2 rw 0 0
/dev/block/mtdblock5 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock4 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=
1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,s
hortname=mixed,utf8,errors=remount-ro 0 0
评论(6)

执行重挂载时,无需同时传递两个参数。只需传递挂载点(此处为 /system)即可。而且 /system 在安卓设备中是通用的。

评论(8)