1

I have a Debian Wheezy server with upstart installed.

I removed upstart and replaced it with sysvinit, which resulted in the following error:

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.

I'm afraid if i restart the server won't boot anymore... what exactly is the problem here?

3 Answers 3

3

The correct way to switch init systems is to:

  1. Install the non-init parts of the init system (basically everything but the links from /sbin/{init,runlevel,poweroff,reboot,shutdown} to however the init system implements those). This means sysvinit-core or systemd packages on recent Debian/Ubuntu.

  2. Add the init= parameter to your GRUB_CMDLINE, then update GRUB.

  3. Reboot, then install the links packages (sysvinit or systemd-sysv).

This only works for sysvinit and systemd, Upstart can not use this method. It also only works with switching to sysvinit on Debian Jessie or newer, since the sysvinit package only got the regular and core package split recently.

The alternative, as mentioned, is to just do a hard reboot the first time, then you should be fine (also, you should stop syslogs, MTAs, web servers, user sessions, et al first).

2

So... it turns out init can only be started on boot, and it cannot be started manually, which is the reason the error message is displayed.

Also, it's impossible to REBOOT after removing Upstart and installing Sysvinit (see error message below), so i had to power cycle the server to force a reboot.

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

This might not exactly be the answer of the question, but I guess might be helpful:

I had the same situation, which happened when I did apt-get dist-upgrade. So, when trying to shutdown/reboot I got the above error. In history log /var/log/apt/history.log there is the list of last actions

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

so, I just did apt-get install upstart, that warned with deleting sysvinit and installing upstart, after installation everything was fine.

warning When trying to install upstart it was a warning smth like "you are going to do something harmful". So, though it worked for me, I do not know what possible consequences it can bring. Please try at your own risk.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .