WheezyでUpstartをSysvinitに置き換えるとエラーが発生します。

WheezyでUpstartをSysvinitに置き換えるとエラーが発生します。

UpstartがインストールされているDebian Wheezyサーバーがあります。

Upstartをアンインストールしてsysvinitに置き換えましたが、次のエラーが発生しました。

apt-get install --reinstall sysvinit
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 2 not upgraded.
Need to get 0 B/133 kB of archives.
After this operation, 0 B of additional disk space will be used.
(Reading database ... 102927 files and directories currently installed.)
Preparing to replace sysvinit 2.88dsf-41+deb7u1 (using .../sysvinit_2.88dsf-41+deb7u1_amd64.deb) ...
Unpacking replacement sysvinit ...
Processing triggers for man-db ...
Setting up sysvinit (2.88dsf-41+deb7u1) ...
sysvinit: restarting...init: timeout opening/writing control channel /run/initctl
.init: timeout opening/writing control channel /run/initctl
.init: timeout opening/writing control channel /run/initctl
.init: timeout opening/writing control channel /run/initctl
.init: timeout opening/writing control channel /run/initctl
.init: timeout opening/writing control channel /run/initctl
.init: timeout opening/writing control channel /run/initctl
.init: timeout opening/writing control channel /run/initctl
 failed.

サーバーを再起動すると、起動しなくなるか心配されます。正確に何が問題ですか?

答え1

初期化システムを切り替える正しい方法は次のとおりです。

  1. initシステムのinit以外の部分をインストールします(デフォルトでは、/ sbin / {init、runlevel、poweroff、reboot、shutdown}を除くすべての部分はそれを実装するinitシステムに接続されています)。これは Debian/Ubuntu の最新パッケージをsysvinit-core意味します。systemd

  2. GRUB_CMDLINEにinit =パラメータを追加してGRUBを更新してください。

  3. 再起動してリンクパッケージ(sysvinitまたはsystemd-sysv)をインストールします。

これはsysvinitとsystemdでのみ機能し、Upstartではこの方法を使用できません。また、sysvinit パッケージは最近一般的なパッケージとコアパッケージに分割されているため、Debian Jessie 以降から sysvinit に切り替える場合にのみ適用されます。

前述のように、別のオプションは最初にハード再起動を実行することです。これは問題ありません(syslog、MTA、Webサーバー、ユーザーセッションなどを最初に停止する必要があります)。

答え2

だから... initは手動ではなく起動時にのみ起動できることがわかりました。これがエラーメッセージが表示される理由です。

そして、UpstartをアンインストールしてSysvinitをインストールした後、再起動できない(以下のエラーメッセージを参照)、強制再起動を行うにはサーバーを再起動する必要がありました。

The system is going down for reboot NOW!
shutdown: timeout opening/writing control channel /run/initctl
init: timeout opening/writing control channel /run/initctl

答え3

これは質問に対する正確な答えではないかもしれませんが、役に立つと思いました。

私も同じ状況でしたが、こうやったと、そんなことが起こりましたねapt-get dist-upgrade。したがって、終了/再起動しようとしたときに上記のエラーが発生しました。履歴ログに/var/log/apt/history.log最後のジョブのリストがあります。

Install: sysvinit:i386 (2.88dsf-41+deb7u1, automatic)
Remove: upstart:i386 (1.6.1-1)

だから私はそうし、apt-get install upstart警告を削除してインストールしました。インストール後、すべてが正常でした。sysvinitupstart

警告する upstartをインストールしようとすると、「あなたは有害なことをします」のような警告です。だからそれは私には効果がありましたが、可能な結果が何であるかはわかりませんでした。自己責任でご使用ください。

関連情報