Pei*_*JIA 13 dpkg upstart 15.04 runit
我正在使用 Ubuntu 15.04。每当我尝试安装任何软件包时,都会在标题中收到错误消息。我怎样才能摆脱这个烦人的错误信息?
:~$ uname -a
Linux LongerVision001 3.19.0-25-generic #26-Ubuntu SMP Fri Jul 24 21:17:31 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
:~$ uname -a
Linux LongerVision001 3.19.0-25-generic #26-Ubuntu SMP Fri Jul 24 21:17:31 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 15.04
Release: 15.04
Codename: vivid
Run Code Online (Sandbox Code Playgroud)
小智 18
我遇到了同样的错误。阅读错误消息,似乎runit
安装脚本upstart
在某一时刻需要,但我的系统(我怀疑你的)正在运行systemd
。值得注意的是,我的另一台机器在安装过程中没有出现此错误;唯一的实质性区别是出错的机器是从 14.10 升级的,而“正常工作”的机器是全新安装的。
由于 Vivid 不是 LTS,我认为可以编辑安装后的 dpkg 文件以使其重回正轨。(这个技巧也适用于 LTS 安装,但希望不会成为问题)。
当 dpkg 出错时
Setting up runit (2.1.2-3ubuntu1) ...
start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
dpkg: error processing package runit (--configure):
subprocess installed post-installation script returned error exit status 1
Processing triggers for ureadahead (0.100.0-19) ...
Errors were encountered while processing:
runit
E: Sub-process /usr/bin/dpkg returned an error code (1)
Run Code Online (Sandbox Code Playgroud)
它将使 runit 包处于半安装状态。您应该runit.postinst
在/var/lib/dpkg/info/
. 此文件作为 runit 包的安装后详细信息的一部分执行(主要用于在安装后立即启动 runit,而不是等到下一次系统启动)。错误在于脚本似乎忘记了systemd
/的排他性upstart
。由于您显然没有运行upstart
,请注释掉相关行(当前我安装的第 58 - 60 行)。
前:
if [ -x /sbin/start ]; then #provided by upstart
/sbin/start runsvdir
fi
Run Code Online (Sandbox Code Playgroud)
后:
#if [ -x /sbin/start ]; then #provided by upstart
# /sbin/start runsvdir
#fi
Run Code Online (Sandbox Code Playgroud)
保存该更改后,您可以告诉 apt 在停止的地方完成,然后就可以开始了:
$ sudo apt-get install -f
小智 5
只是清除暴发户,反正它坏了。
UPD:runit 似乎与 ubuntu 上的 systemd 不兼容,重启后可能会令人惊讶,runit 只会失败,说它不是 pid 1:
- runit: fatal: must be run as process no 1.
Run Code Online (Sandbox Code Playgroud)
所以另一种方法是切换到新贵:
sudo aptitude install upstart-sysv
sudo update-initramfs -u
sudo reboot
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
95681 次 |
最近记录: |