Como remover um serviço que impede o sistema de inicializar?

1

Eu criei um serviço que inicia um script usando exec, porque ele funciona no upstart. No systemd, ele impede que o sistema inicie, porque ele aguarda que meu script termine, mas como é um servidor da Web, ele não terminará até ser interrompido. Como faço para corrigir isso?

    
por Crimson Tulip 29.12.2014 / 12:30

1 resposta

1

Como MariusMatutiae mencionou que você tem que modificar o arquivo da unidade (ou desativá-lo). Para fazer isso, você pode inicializar um Linux diferente (é uma boa idéia ter um pequeno Linux adicional instalado para tais propósitos; você pode inicializar a partir do CD / DVD ou do pendrive, também) ou inicializar este Linux com opções de inicialização que impedem a execução deste problema.

De link

Como iniciar metas de resgate ou de emergência

Para inicializar diretamente no destino de recuperação, adicione systemd.unit=rescue.target ou apenas 1 à linha de comando do kernel. Esta meta é útil se o problema ocorrer em algum lugar depois que o sistema básico é ativado, durante o início dos serviços "normais". Se este for o caso, você deve ser capaz de desativar o mau serviço a partir daqui. Se o destino de resgate não for inicializado, o alvo de emergência mais mínimo poderá.

Para inicializar diretamente no shell de emergência, adicione systemd.unit=emergency.target ou emergency à linha de comando do kernel. Note que no shell de emergência você terá que remontar o sistema de arquivos raiz de leitura / gravação por si mesmo antes de editar qualquer arquivo:

mount -o remount,rw /

Se nem mesmo o alvo de emergência funcionar, você pode inicializar diretamente em um shell com init=/bin/sh .

    
por 29.12.2014 / 13:24