当前位置: 首页>>技术教程>>正文


ubuntu服务器16.04:无法让主管自动启动

,

问题描述

我在ubuntu服务器16.04上安装了主管。

$ sudo apt-get install supervisor
$ sudo update-rc.d supervisor defaults

重新启动后,超级用户没有自动开始。检查状态:

qinking126@nas:~$ sudo service supervisor status
[sudo] password for qinking126:
● supervisor.service - Supervisor process control system for UNIX
   Loaded: loaded (/lib/systemd/system/supervisor.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: http://supervisord.org

我不确定为什么它不活动(死机)。我需要检查些什么才能将其修复?

最佳方案

我确信这个问题是Ubuntu 16.04中Supervisor软件包中的打包错误,它似乎是由切换到systemd引起的:

  • 该问题已经在issue 735的Supervisor项目的问题跟踪器(无法修复任何问题)的上游进行了报告。

  • 几天前,我被这个问题咬了一下,很惊讶地发现,即使Ubuntu 16.04在很早以前发布,也从未向软件包维护者报告过这个问题,这破坏了向后兼容性和预期的行为。这就是为什么我决定向bug 1594740中的软件包维护者报告此问题的原因。

我在bug 1594740中记录了一个简单的解决方法,该方法不需要创建任何配置文件-安装软件包后,您只需要启用并启动Supervisor守护程序即可:

# Make sure Supervisor comes up after a reboot.
sudo systemctl enable supervisor

# Bring Supervisor up right now.
sudo systemctl start supervisor

我不确定在Ubuntu 16.04中是否可以解决此问题,但至少现在有一个中心位置可以收集投诉和文档解决方法(在bug 1594740中,不在issue 735中)。

如果有人被此问题困扰,请考虑在bug 1594740中表达您的担忧,以说服软件包维护者解决此问题。谢谢!

更新(2017-03-24):由于bug 1594740的结果,昨天针对此问题was released修复了xenial-updates的问题,因此新安装不应再遇到此问题。

次佳方案

看到这里Running supervisord automatically on startup

  1. /usr/lib/systemd/system中创建supervisord.service文件,并将以下内容放入此文件中,具体取决于系统:initscripts

  2. sudo systemctl daemon-reload

  3. sudo systemctl enable supervisord.service

  4. sudo systemctl start supervisord.service

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9704.html,未经允许,请勿转载。