os serviços do Debian não estão em execução

3

Após uma reinicialização inesperada, minha máquina debian está inicializando em uma tela de terminal em vez de gui.

Não tenho certeza do que fazer para diagnosticar o problema ... mas notei que todos os serviços em /etc/rc2.d/ (inittab diz nível de execução 2) não estão em execução ..

Eu olho para o cron, por exemplo:

Alguém, por favor, me ajude a entender por que executar o S17cron não funciona, mas executar o arquivo vinculado sym funciona diretamente.

O que estou perdendo? Alguém sabe como ou por que meu sistema está nessa condição? como consertar?

    
por Quinn Wilson 18.05.2015 / 04:14

1 resposta

10

Esqueça os /etc/inittab e os níveis de execução.

Como diz o systemd doco, no mundo do systemd o conceito de níveis de execução é "obsoleto". O próprio systemd funciona em termos de destinos , e não em níveis de execução.

Também obsoleto é o seu arquivo /etc/inittab . A atualização do Debian 7 para o Debian 8 muda o sistema init do System 5 init + rc para o systemd. Deixa /etc/inittab por aí, porque esse arquivo não é apropriadamente atribuído como propriedade de um pacote no Debian 7.

O que /etc/inittab diz é totalmente sem sentido. Não apenas o systemd ignora totalmente esse arquivo; mas o systemd não tem um conceito de nível de execução atual em primeiro lugar.

Esqueça-se dos scripts Systemv 5 rc .

Isso é possivelmente um pouco strong, mas é necessário mostrar que você demonstrou vários maus hábitos que você precisa aprender. De fato, você teve que desaprender várias versões do Debian atrás .

  • Não execute scripts em /etc/rc*.d/ diretamente. Primeiramente, você fará isso errado, como está fazendo aqui, e as coisas não funcionarão. Em segundo lugar, não há garantia de que esse farm de links simbólicos exista mesmo em sistemas não-systemd. Alguém poderia estar usando o arquivo-rc ao invés de sysv-rc , por exemplo.
  • Não execute scripts em /etc/init.d/ diretamente. Em sistemas operacionais systemd, não há garantia de que esses scripts existam, e muito menos de que eles estejam especificando seu serviço. Mesmo no Debian 7, havia unidades systemd suplantando o System 5 rc scripts; e isto é mais no Debian 8. Os comandos corretos para usar são:
    • systemctl com seus subcomandos status , start , stop , enable e disable
    • service
    • update-rc.d e invoke-rc.d , mas somente se você for um script do mantenedor de pacotes

O comportamento dos comandos que você observou é, portanto, um completo arenque vermelho, e nada a ver com o porquê seu sistema está inicializando como está.

Diagnostique seu problema adequadamente com as ferramentas disponíveis.

Existem vários programas que você deve estar executando neste momento. Estes incluem:

  • systemctl get-default para determinar se seu sistema está configurado para inicializar graphical.target .
  • systemctl list-units para mostrar quais serviços e destinos estão sendo executados. Seu gerenciador de exibição X é um serviço.
  • systemctl status para mostrar porque um serviço com falha falhou.
  • journalctl -x -b para ver o log desde o tempo de inicialização.

Leitura adicional

por 18.05.2015 / 14:35

Tags