可以编辑/etc/rcd/rclocal,加入需要自启软件的命令。比如开机运行firefox
1,打开终端,输入vi /etc/rcd/rclocal。
2,在末行添加一句:firefox就行了。
3,保存退出,注销重新登录查看效果。
阅读之前建议先看一下附图。本文中假设inittab中设置的init tree为:/etc/rcd/rc0d /etc/rcd/rc1d /etc/rcd/rc2d /etc/rcd/rc3d /etc/rcd/rc4d /etc/rcd/rc5d /etc/rcd/rc6d /etc/rcd/initd1 关于Linux的启动init是所有进程之父 init读取/etc/inittab,执行rcsysinit脚本 (注意文件名是不一定的,有些unix甚至会将语句直接写在inittab中) rcsysinit脚本作了很多工作: init $PATH config network start swap function set hostname check root file system, repair if needed check root space rcsysinit根据inittab执行rcd脚本 Linux是多用户系统,getty是多用户与单用户的分水岭 在getty之前运行的是系统脚本2 关于rcd所有启动脚本放置在 /etc/rcd/initd下 rc number决定执行的顺序3 启动脚本示例这是一个用来启动>
开机后自动运行用户的应用程序或启动系统服务的命令保存在开发板根文件系统的/usr/etc/rclocal文件中。有的开发板开机后自动运行图形界面程序,需要按住ctrl+c让开发板进入到linux的SHELL提示符界面。其实可通过注释掉rclocal文件中调用图形界面的命令,增加运行用户应用程序的命令,达到开机自动运行用户应用程序的目的。
下面以我做的实验为例,描述具体的实现步骤。该方法源于网络,我加以验证,稍做修改,此文相当于转载。
1.进入pc机的Linux *** 作系统,在/nfs/usr/下通过mkdir lz 命令新建一个名为lz的文件夹,进入lz文件夹,通过mkdir hello新建一个hello文件夹用来存放我们将要编写的helloc文件和编译生成的可执行文件。
2.在/nfs/usr/lz/hello下通过vi helloc命令新建helloc文件,编辑如下测试程序:
#include <stdioh>
int main(){
printf("Hello,test arm-linux!\n");
return 0;
}
完成编辑后通过:wq保存后退出。
3.主机通过如下命令交叉编译环境编译helloc:
#arm-linux-gcc –o hello helloc
4.通过ls 命令可以看到在/nfs/usr/lz/hello/下已经生成了hello可执行文件,我们可以在开发板上通过/hello来测试自己编写的helloc执行情况
5.修改rclocal文件,在文件的最后通过‘#’释掉启动图形界面的指令,增加执行用户应用程序hello的指令,具体实现如下:
#export PATH=$QPEDIR/bin:$PATH
#qtopia
#/usr/qtopia/bin/qtopia
/usr/lz/hello//hello
注:前三行是注释掉启动图形界面,最后一行是添加的执行用户的hello测试程序。
6.重启开发板,通过vivi参数配置让开发板通过nfs挂载主机上的文件系统,这时我们就可以通过超级终端看到开发板已经运行了我们编写的hello程序。
如果是一次性的,可以用 at 命令指定一个时间点让 Linux 系统定点执行一个程序。
如果是周期性的每隔一段时间就要执行一个程序,首先需要启动一个叫 cron 的服务,然后编辑 /etc/crontab 文件,以便指定执行的程序名、执行的时间。
以上就是关于如何让Linux系统的程序在开机时自动运行全部的内容,包括:如何让Linux系统的程序在开机时自动运行、如何使Linux系统上的程序开机后自动运行、如何在linux嵌入式开发板上开机自动运行用户应用程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)