我能够安装和运行 nginx 和乘客,但是每当我重新启动服务器时,我都无法启动 nginx。要启动 nginx 进程,我只需输入sudo /opt/nginx/sbin/nginx。根据我的理解,我在 /etc/init.d 中使用 ubuntu hardy 放入的任何内容都将被执行。有谁知道模仿这个命令行调用的命令?
须藤 /opt/nginx/sbin/nginx
小智 13
感谢您的信息,如果有人想要分步说明。转到/etc/init.d并运行sudo nano nginx-passenger.sh
,然后粘贴以下代码:
#!/bin/bash
# this script starts the nginx process attached to passenger
sudo /opt/nginx/sbin/nginx
Run Code Online (Sandbox Code Playgroud)
保存并退出。通过键入使文件可执行sudo chmod +x /etc/init.d/nginx-passenger.sh
。您可以通过键入sudo /etc/init.d/nginx-passenger.sh
这将运行脚本中的所有代码来测试脚本是否有效。在继续之前验证它是否启动了 nginx。
然后sudo update-rc.d nginx-passenger.sh defaults
在 /etc/init.d 目录中运行。一旦所有这些都到位,重启你的服务器,ngnix现在应该在启动时自动生成
3di*_*nce 10
/etc/init.d 只是启动脚本所在的位置。但是在那里有一个脚本不会自动做任何事情。
init 系统使用 /etc/rc#.d 目录中的符号链接指向 /etc/init.d 文件夹中的脚本。符号链接的名称需要以 S 开头,以使用 start 选项运行脚本,K 以运行停止选项,后跟优先级编号,然后是脚本名称。
有关更多信息,请参阅以下内容
/etc/init.d/README
/etc/rc1.d/README
/etc/rc2.d/README
或者,您可以将您想要运行的命令放入 /etc/rc.local 脚本中,该脚本在系统启动并完成执行 /etc/rc2.d/ 文件夹中的所有脚本后运行。