![如何在Amazon Linux上运行启动脚本?](https://linux22.com/image/98736/%E5%A6%82%E4%BD%95%E5%9C%A8Amazon%20Linux%E4%B8%8A%E8%BF%90%E8%A1%8C%E5%90%AF%E5%8A%A8%E8%84%9A%E6%9C%AC%EF%BC%9F.png)
我正在尝试创建一些应该在启动时运行的脚本。
现在我在 /etc/init.d/ 下创建了一些 myScript 文件,然后运行 sudo chkconfig --add myScript;
chkconfig --list myScript
输出为:
myScript 0:off 1:off 2:on 3:on 4:on 5:on 6:off
我的脚本:
#!/bin/sh
# chkconfig: 2345 98 02
# description:
# processname:
# Source function library.
if [ -f /etc/init.d/functions ] ; then
. /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
. /etc/rc.d/init.d/functions
else
exit 0
fi
KIND="_"
start() {
echo starting `date` >> ~/myScript.log
}
stop() {
echo stopping myScript
}
restart() {
echo restarting
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit $?
现在我可以成功运行service myScript start
并且将附加日志记录。但是,如果我sudo reboot
使用 AWS UI 控制台运行或重新启动实例,它就不会按预期工作。
虽然runlevel
输出是:
N 3
需要一些帮助。
答案1
如果您是您的实例,您的chkconfig
配置将起作用shutdown
。
我在我的机器上创建了一个测试脚本,如果我关闭实例它就可以工作,而当我重新启动它时它就不起作用。