web-dev-qa-db-ja.com

ソケット/ com / ubuntu / upstartへの接続に失敗しました:接続は拒否されました:処理中にエラーが発生しました: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
:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 15.04
Release:        15.04
Codename:       vivid
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
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
Errors were encountered while processing:
 runit
E: Sub-process /usr/bin/dpkg returned an error code (1)
14
Pei JIA

同じエラーが発生しました。エラーメッセージを読むと、runitインストールスクリプトはある時点でupstartを期待しているように見えますが、私のシステム(および私はあなたのシステム)はsystemdを実行しています。特に、インストール中にnotこのエラーが発生した別のマシンがあります。唯一の実質的な違いは、エラーが発生したマシンが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)

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

後:

#if [ -x /sbin/start ]; then #provided by upstart
#  /sbin/start runsvdir
#fi

その変更を保存したら、中断したところを終了するようにaptに伝えることができます。

$ Sudo apt-get install -f

19

スタートアップをパージするだけで、とにかく壊れています。

UPD:runitは、ubuntuのsystemdと互換性がないようです。再起動後に驚きになる可能性があります。runitはpid 1ではないと言って失敗します。

- runit: fatal: must be run as process no 1.

したがって、他の方法はupstartに切り替えることです。

Sudo aptitude install upstart-sysv
Sudo update-initramfs -u
Sudo reboot
5
hryamzik