我想在Android M OS的根文件系统上创建一个指向/ system / bin的链接。 如果我执行此命令,则会创建链接:
mount -o remount,rw /
ln -s /system/bin /bin
mount -o remount,ro /
root@nexbox:/ # ls -l
drwxr-xr-x root root 2015-01-01 01:00 acct
lrwxrwxrwx root root 2015-01-01 01:04 bin -> /system/bin
drwxr-xr-x root root 1970-01-01 01:00 boot
drwxrwx--- system cache 2017-06-15 02:08 cache
lrwxrwxrwx root root 1970-01-01 01:00 charger -> /sbin/healthd
dr-x------ root root 2015-01-01 01:00 config
lrwxrwxrwx root root 2015-01-01 01:00 d -> /sys/kernel/debug
但是当我重新启动设备时,链接就消失了。我试图在/system/etc/init.d
中做一个这样的守护进程# crond has "/bin/sh" hardcoded
mount -o remount,rw -t auto /
ln -s /system/bin /bin
mount -o remount,ro -t auto /
它不起作用 我错过了什么?
感谢您的帮助
答案 0 :(得分:0)
这是因为根目录中的文件夹/文件是在ramdisk中而非系统分区中创建/装入的。您需要修改系统上的/init.rc
文件,以通过在文件末尾添加symlink /system/bin /bin
来创建符号链接。
为此,您需要:
将启动分区复制到启动映像文件。
解压缩启动映像文件。
解压缩虚拟磁盘。
修改init.rc。
重新打包ramdisk和启动映像。
将修改后的启动映像写回到设备的启动分区。