Por que existem ambos, um script Upstart e um script init.d para vários daemons? [fechadas]

4

Estou executando o Ubuntu 12.04.3 LTS e instalei vários serviços como o Samba, o servidor DHCP, ...

Eu recebo o seguinte aviso quando executo "halt now", "telinit 6" ou similar:

Since the script you are attempting to invoke has been converted
to an Upstart job, you may also use the...

Eu posso ver que os serviços afetados tentam parar / iniciar duas vezes. Uma vez através do trabalho Upstart e novamente através dos links simbólicos S / K na pasta /etc/rcN.d que direciona o script init.d. Provavelmente eu posso simplesmente remover o link simbólico na pasta /etc/rcN.d.

Exemplo de fluxo:

  1. Executar 'interromper agora' do shell
  2. Upstart para o Samba (porque existe um arquivo conf do Upstart para o Samba)
  3. O SysV tenta parar o Samba novamente (porque também há um link simbólico /etc/rc0.d/K20smbd)

Eu não entendo / quero o passo 3, pois parece desnecessário e mostra um aviso feio.

Por que existem ambos, o script Upstart e os links simbólicos para o script init.d, para vários daemons? É a maneira correta de limpar manualmente os links simbólicos duplicados em cada pasta /etc/rcN.d?

    
por Alex 18.09.2013 / 23:02

2 respostas

1

O Ubuntu tem compatibilidade com init links que chamam os upstart de suas contrapartes sempre que você os executa.

Se você chamar, por exemplo, sudo /etc/init.d/apache start , você será vinculado ao job iniciante que apresentar a você uma boa mensagem de informação que você deve usar sudo services apache start e depois executar o comando por si só.

ls -l /etc/init.d/network-manager 
lrwxrwxrwx 1 root root 21 Sep 18 14:02 /etc/init.d/network-manager -> /lib/init/upstart-job

cat /lib/init/upstart-job
#!/bin/sh -e
# upstart-job
#
# Symlink target for initscripts that have been converted to Upstart.
{ lots of ASCII awesomeness }
    
por 18.09.2013 / 23:10
0

Eu descobri que isso é um erro de configuração nos meus scripts de marionetes.

O atributo do tipo 'serviço' 'enable' criou o script init do SysV em vez de reconhecer o script Upstart.

    
por 19.09.2013 / 00:45