如何在启动时运行Shell脚本
在Amazon S3
Linux实例上,我有两个名为的脚本start_my_app
,stop_my_app
它们
永远
启动和停止(依次运行Node.js应用程序)。我使用这些脚本手动启动和停止我的Node.js应用程序。到目前为止,一切都很好。
我的问题:我还想将其设置start_my_app
为在系统启动时运行。我知道我需要在其中添加文件,init.d
并且知道如何将其符号链接到其中的适当目录rc.d
,但是我无法弄清楚放置在其中的文件中实际需要什么init.d
。我认为这应该只是一条线,例如start_my_app
,,但这对我没有用。
回答:
在您放入的文件中,/etc/init.d/
您必须使用以下命令将其设置为可执行文件:
chmod +x /etc/init.d/start_my_app
感谢@meetamit,如果此命令无法运行,则必须创建一个符号链接到 /etc/rc.d/
ln -s /etc/init.d/start_my_app /etc/rc.d/
请注意,在最新的Debian上,这将不起作用,因为您的脚本必须符合LSB(至少提供以下操作:启动,停止,重新启动,强制重载和状态):
https://wiki.debian .org /
LSBInitScripts
需要注意的是,您应该放置脚本的绝对路径而不是相对路径,这可能会解决意外的问题:
/var/myscripts/start_my_app
并且不要忘记在该文件之上添加:
#!/bin/sh
以上是 如何在启动时运行Shell脚本 的全部内容, 来源链接: utcz.com/qa/425259.html