如何在Amazon Linux上运行启动脚本?

如何在Amazon Linux上运行启动脚本?

我正在尝试创建一些应该在启动时运行的脚本。

现在我在 /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

我在我的机器上创建了一个测试脚本,如果我关闭实例它就可以工作,而当我重新启动它时它就不起作用。

相关内容