我正在运行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
脚本似乎具有正确的初始化信息:
#!/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
命令正常运行?
答案1
我推荐一种不同的方法,它将解决启动时启动的问题,并使 Nginx 将来在 Ubuntu 上更易于管理。
与官方联系Nginx Ubuntu PPA。
我假设您正在自定义一些编译时选项,因为预构建的二进制文件对您不起作用。因此,请使用一些命令下载软件包源代码。然后根据需要修改该软件包中的编译选项,并构建您自己的自定义软件包并安装它。
结果将是一个与官方软件包非常相似的软件包,您可以像管理其他软件包一样管理它。您还可以将您创建的“补丁”保存到默认软件包中,以便将来更轻松地重复该过程。
重建 Debian/Ubuntu 软件包的教程是这里。