Os serviços não serão iniciados após a inicialização até após o login no console virtual [closed]

0

Atualmente estou executando o teste Debian, que no momento é imbecil. Aqui está o cenário:

Eu tenho dois serviços em particular, lighttpd e chrony , que não serão iniciados normalmente após a inicialização. A parte estranha é que eles começam normalmente APENAS SE eu faço o login através do console virtual em tty1 as root . Fazer o login como usuário não root às vezes funciona também, mas é inconsistente. A menos que eu faça isso, lighttpd não completará seu procedimento de inicialização. Quando eu verifico o serviço systemd, ele mostra apenas 2 processos php-cgi bifurcados, em vez de 5-6, como normalmente faria, e enquanto o status mostra o processo como ativo e iniciado, não consigo acessar o servidor web. No caso de chrony , o tempo limite será atingido e falhará.

Eu posso conectar o SSH à máquina sem problemas, mas alguns comandos relacionados ao systemd também irão travar, ou seja, se eu tentar desabilitar ou reiniciar o serviço, ele irá travar ou expirar. Quando eu fizer o login através de tty1 , ele será retomado. Eu só preciso logar uma vez, então eu posso sair. A partir daí, tudo funciona normalmente, mesmo através do SSH. É somente após o boot que o problema ocorre. Se eu efetuar login através de tty1 assim que estiver disponível após a inicialização, os dois serviços serão iniciados corretamente.

No que diz respeito à solução de problemas, as coisas que fiz foram desinstalar lighttpd , php* e chrony , incluindo todos os pacotes que dependiam deles usando apt purge e garantir que todos os arquivos restantes fossem removidos e depois reinstalados. Para lighttpd e chrony , também adicionei substituições aos arquivos de unidade do systemd para After= e Wants= para network-online.target em vez de network.target , mas isso não teve efeito.

Eu também iniciei com ambos os serviços desinstalados. Se eu tentar instalar o chrony novamente por meio do SSH, ele será interrompido no ponto em que o systemd criará os links simbólicos para ativar os arquivos da unidade do systemd. Quando eu fizer login através de tty1 enquanto estiver neste ponto, ele continuará e concluirá a configuração. Então, parece-me que há algum tipo de problema com o procedimento de inicialização pelo qual o systemd está passando está causando isso, como se o processo de inicialização de alguma forma não terminasse completamente.

Eu olhei alguns logs, mas não consegui encontrar nenhuma informação que me apontasse na direção certa para resolver isso.

    
por user304851 10.08.2018 / 20:41

1 resposta

3

Depois de vasculhar os logs um pouco mais, vi a mensagem kernel: random: crng init done aparecer e os serviços começariam logo depois disso. Acontece que é um bug com o kernel do Linux que foi introduzido no 4.16 de acordo com esta resposta a uma pergunta sobre a mesma mensagem .

Dado que urandom estava sendo bloqueado, mesmo que não devesse, o login através do console virtual foi suficiente para reunir a entropia adicional e permitir que os serviços continuem sendo iniciados.

Eu instalei haveged e o problema foi resolvido.

    
por 10.08.2018 / 23:02