我正在运行从源代码编译的Ubuntu 12.04和Nginx 1.2.1 。 我尝试了下面的命令让nginx在启动时启动:
$ sudo update-rc.d nginx default $ sudo update-rc.d nginx enable 2345
在这两种情况下,我收到以下错误:
update-rc.d: warning: nginx start runlevel arguments (none) do not match LSB Default-Start values (2 3 4 5) update-rc.d: warning: nginx stop runlevel arguments (none) do not match LSB Default-Stop values (0 1 6)
我不明白的是我的/etc/init.d/nginx脚本似乎有正确的init信息:
#!/bin/sh ### BEGIN INIT INFO # Provides: nginx # Required-Start: $all # Required-Stop: $all # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts the nginx web server # Description: starts nginx using start-stop-daemon ### END INIT INFO
我需要更改update-rc.d命令才能正常工作?
我推荐了一种不同的方法,它将解决启动时的问题,并使Nginx在Ubuntu上更容易pipe理。
使用官方的Nginx Ubuntu PPA自己设置。
我认为你正在定制一些编译时选项,因为预编译的二进制文件不适合你。 相反,使用一些命令来下载软件包源代码。 然后根据需要修改该包中的编译选项,然后构build自己的自定义包并安装它。
结果就像一个官方的包,你可以像其他包一样pipe理。 您还可以将您创build的“修补程序”保存到默认包中,以便将来重复该过程。
重buildDebian / Ubuntu软件包的教程就在这里 。