使用 update-rc.d 为 Ubuntu 添加额外的 tomcat 实例失败

Adding additional tomcat instance using update-rc.d for Ubuntu fails

我的问题简而言之:我无法设置 tomcat.

的多个实例

这开始发生在使用 tomcat8 的新 Ubuntu 16.04 设置上。相同的配置在 Ubuntu 12.04 和 tomcat7.

上运行良好

我已经安装了 tomcat8 和 tomcat8-user:

apt-get install tomcat8
apt-get install tomcat8-user

然后我创建 tomcat:

的新实例
tomcat8-instance-create -p 8081 -c 8006 -w shutdown-test /var/lib/tomcat8-test

我复制所有必要的 tomcat 工作和 conf 文件和文件夹。 接下来我为新实例复制 [​​=41=]8 脚本:

/etc/init.d# cp tomcat8 tomcat8-test

我用这样的新数据更新脚本:

/etc/init.d# nano tomcat8-test

# file contents
NAME=tomcat8-test
DESC="Tomcat 8 Test instance"
CATALINA_HOME=/usr/share/tomcat8

最后我尝试更新服务的新脚本 link:

/etc/init.d# update-rc.d tomcat8-test defaults 90

我收到以下消息:

insserv: script tomcat8-test: service tomcat8 already provided! insserv: exiting now!
update-rc.d: error: insserv rejected the script header

有没有其他人经历过这样的事情?

我设法找到自己的是:

source: [https://wiki.debian.org/LSBInitScripts/DependencyBasedBoot][1]
insserv: script X: service Y already provided!
Bug in the package with script X: The facility provided in script /etc/init.d/X uses a non-unique value. Changing it to a unique value (for example the script name without .sh ending), solves the issue.

我在 /etc/init.d/tomcat8-test 中额外修改脚本后开始工作:

### BEGIN INIT INFO
# Provides:          tomcat8
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Should-Start:      $named
# Should-Stop:       $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start Tomcat.
# Description:       Start the Tomcat servlet engine.
### END INIT INFO

至:

### BEGIN INIT INFO
# Provides:          tomcat8-test
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Should-Start:      $named
# Should-Stop:       $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start Tomcat.
# Description:       Start the Tomcat servlet engine.
### END INIT INFO

这很奇怪,我不需要在 ubuntu 12.04 上用 tomcat7 更新它:)。我以为这只是一条评论,但看起来它正在以某种方式执行。