我正在使用带有busybox的嵌入式linux。我想自动运行名为“myApplication”的应用程序(启动后运行级别为 5,所有服务都已启动)。
到目前为止我做了什么:
- 我在 /etc/init.d/ 下制作了一个名为 S90myscript 的脚本
- 然后我将这一行添加到 inittab 中:
::sysinit:/etc/init.d/S90myscript
该脚本包含以下内容:
! /bin/sh
### BEGIN INIT INFO
# Provides: myApplication
# Should-Start: $all
# Required-Start: $remote_fs $network $local_fs
# Required-Stop: $remote_fs
# Default-Start: 5
# Default-Stop: 0 6
# Short-Description: start myprogram at boot time
### END INIT INFO
#
set -e
. /lib/lsb/init-functions
PATH=/root:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/sbin
PROGRAMNAME="myApplication"
case "$1" in
start)
$PROGRAMNAME
;;
stop)
skill $PROGRAMNAME
;;
esac
exit 0
我错过了什么吗?符号链接?我做错了吗?
先感谢您
找到了解决方案。
myApplication
放在/usr/sbin/
/etc/init.d/S99myAppScript
(请注意,没有 .sh,我必须sudo chmod 755
在此脚本上运行)rcS
在位于/etc/init.d/
命令之前的文件末尾添加了以下行done
:重新启动系统后,myApplication 会自动运行。