【发布时间】:2014-07-04 15:10:57
【问题描述】:
我正在尝试修改已植根的 Nexus 7 设备上的 init.rc 文件。 我想在我的 /userdata/ 分区挂载之前插入一个简单的 hello world 模块。 我尝试过的事情:
从设备中提取 boot.img,提取 ramdisk,对 init.rc 进行更改(不起作用),重新创建 boot.img(使用 mkbootimg 工具),然后将其刷新到设备上再次
我已经将我为内核编译的 hello.ko 放在了 2 个地方:一个是 init.rc 所在的当前目录,这样我就可以执行类似 insmod hello.ko 的操作,它会找到它.其次,我创建了 /lib/modules/ 目录并将其放在里面
在我的 init.rc 中,我在 on_boot 之后放置了 insmod /lib/modules/hello.ko。 我还更改了 init.flo.rc 并将 insmod 放在挂载文件系统的 ./mount_all 之前和之后。 但是,我根本看不到我的模块加载。 权限集是 0644(我也试过 0777)
-
我在 /etc/folder 中创建了 init.d 并放置了一个 loadmodule.sh,它执行 insmod /lib/modules/hello.ko 并且该模块在启动过程完成后加载。
理想情况下,我希望在挂载 /userdata/ 分区之前立即执行此操作。
有人可以帮我解决这个问题吗?
我的设备是 Nexus 7,安装了 flo_kernel 和 root、busybox 等。
【问题讨论】:
标签: android init nexus-7 init.d insmod