linux开机自启动,去掉“Please press Enter to activate this console“

解决在s3c6410开发板上开机自启动Qt应用程序时遇到的问题,包括界面叠加和“Please press Enter to activate this console”的提示。通过修改/etc/init.d/rcS、/etc/profile和/etc/inittab文件,实现开机自动运行程序并自动登录,避免用户手动输入回车。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      在s3c6410中自启动Qt应用程序,最先的想法是有/etc/init.d/rcS加入应用程序或者脚本命令就可以实现开机自动运行,不过出现了问题,启动了Qt应用程序,7寸屏幕界面中,如果点击界面会出现界面叠加的情况,也就是当前界面会被破坏,出现原来的底层界面。于是把Qt应用程序放到/etc/profile中自己开机启动的程序,但是不能自启动,需要在超级终端敲回车,"Please press Enter to activate this console",等待用户输入回车才能进入Qt程序。

解决方法:

       从开发板的角度讲,一般只要在/etc/init.d/rcS中加入你的程序或者脚本命令就可以实现开机自动运行;想在超级终端输入回车,登录后执行,则可以在/etc/profile中加入命令;如果想去掉每次开机完后的“Please press Enter to activate this console”这句,也就是实现开机自动登录,可以在/etc/inittab中仿照busybox中example的inittab写,只是将::askfirst:-/bin/sh改为::respawn:-/bin/sh即可,如果发现没有inittab那么就自己建一个,其他的板子可以根据自己的情况修改脚本,都差不了多少。

inittab脚本:
::sysinit:/etc/init.d/rcS

::respawn:-/bin/sh

       由于默认的内核命令行上有init=/linuxrc, 因此,在文件系统被挂载后,运行的第一个程序是根目录下的linuxrc。 这是一个指向/bin/busybox的链接,也就是说,系统起来后运行的第一个程序也就是busybox本身。这种情况下,busybox首先将试图解析/etc/inittab来获取进一步的初始化配置信息(参考busybox源代码init/init.c中的 parse_inittab()函数)。而事实上,root_qtopia中并没有/etc

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值