要在开发板上的Linux开机启动自己的程序,想着简单,却改了很久,绕了一圈下来确实很简单,从我使用的开发板的角度讲,一般只要在/etc/init.d/rcS中加入你的程序或者脚本命令就可以实现开机自动运行;想在超级终端输入回车,登录后执行,则可以在/etc/profile中加入命令;如果想去掉每次开机完后的“Please pressEnter to activate this console”这句,也就是实现开机自动登录,可以在/etc/inittab中仿照busybox中example的inittab写,只是将::askfirst:-/bin/sh改为::respawn:-/bin/sh即可,如果发现没有inittab那么就自己建一个。其他的板子可以根据自己的情况修改脚本,都差不了多少。 下面进入正题,说说我自己的理解。 MB140P板子上的文件系统默认的内核命令行上有init=/linuxrc, 因此,在文件系统被挂载后,运行的第一个程序是根目录下的linuxrc。这是一个指向/bin/busybox的链接,也就是说,系统起来后运行的第一个程序也就是busybox本身。这种情况下,busybox首先将试图解析/etc/inittab来获取进一步的初始化配置信息 接下来初始化的脚本就是/etc/init.d/rcS,将需要执行的程序添加到此文件中如:&/opt/ptheadpool.
|