Substituindo Upstart por Sysvinit em Wheezy resulta em erro

1

Eu tenho um servidor Debian Wheezy com o upstart instalado.

Eu removi o upstart e o substituí com sysvinit, o que resultou no seguinte erro:

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.

Eu tenho medo que se eu reiniciar o servidor não inicialize mais ... o que exatamente é o problema aqui?

    
por Daps0l 11.09.2014 / 23:05

3 respostas

3

A maneira correta de trocar os sistemas init é:

  1. Instale as partes não-init do sistema init (basicamente tudo, exceto os links de / sbin / {init, runlevel, poweroff, reboot, shutdown}, no entanto, o sistema init os implementa). Isso significa sysvinit-core ou systemd packages no Debian / Ubuntu recente.

  2. Adicione o parâmetro init = ao seu GRUB_CMDLINE e atualize o GRUB.

  3. Reinicialize e instale os pacotes de links ( sysvinit ou systemd-sysv ).

Isso só funciona para o sysvinit e o systemd, o Upstart não pode usar este método. Também funciona apenas com a mudança para o sysvinit no Debian Jessie ou mais recente, uma vez que o pacote sysvinit só recebeu o split do pacote regular e principal recentemente.

A alternativa, como mencionado, é apenas fazer um hard reboot pela primeira vez, então você deve estar bem (também, você deve parar syslogs, MTAs, servidores web, sessões de usuário, e al primeiro).

    
por 12.09.2014 / 01:00
2

Então ... acontece que o init só pode ser iniciado na inicialização e não pode ser iniciado manualmente, razão pela qual a mensagem de erro é exibida.

Além disso, é impossível REINICIALAR depois de remover o Upstart e instalar o Sysvinit (consulte a mensagem de erro abaixo), então tive que ligar e desligar o servidor para forçar uma reinicialização.

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

Esta pode não ser exatamente a resposta da pergunta, mas acho que pode ser útil:

Eu tive a mesma situação, o que aconteceu quando eu fiz apt-get dist-upgrade . Então, ao tentar desligar / reiniciar, recebi o erro acima. No registro do histórico /var/log/apt/history.log , há a lista das últimas ações

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

então, eu acabei de apt-get install upstart , que avisou com a exclusão de sysvinit e a instalação de upstart , depois da instalação tudo correu bem.

aviso Ao tentar instalar o upstart, foi um aviso como "você vai fazer algo prejudicial". Então, embora tenha funcionado para mim, não sei quais as possíveis conseqüências que isso pode trazer. Por favor, tente por sua conta e risco.

    
por 18.05.2015 / 09:12