O gerenciador de inicialização carregará o kernel, o kernel tentará executar o init, não o encontrará e entrará em pânico.
A saída é reiniciar, editar os parâmetros de inicialização, adicionar init=/bin/bash
e inicializar dessa maneira. O kernel usará o bash como init. Isso lhe dará a chance de executar comandos e corrigir o sistema.
Correção
Aparentemente, o kernel (arquivo init / main.c ) faz:
if (!try_to_run_init_process("/sbin/init") ||
!try_to_run_init_process("/etc/init") ||
!try_to_run_init_process("/bin/init") ||
!try_to_run_init_process("/bin/sh"))
return 0;
panic("No working init found. Try passing init= option to kernel. "
"See Linux Documentation/init.txt for guidance.");
Portanto, ele encontraria / bin / sh (que é um link para o dash) e isso lhe dará um shell e uma chance de corrigi-lo sem usar o init=/bin/bash
parâmetro de inicialização.
-L
- não vai funcionar.cp /proc/fd/1/exe /sbin/init && chmod 755 /sbin/init
funciona embora. Usar o APT para reinstalar o upstart não é tão óbvio quantodpkg
, pois ele não saberá que foi por padrão. "O pacote inicial já está na versão atual." Você poderiadpkg --force-depends --force-remove-essential -r upstart
primeiro.