/sbin/init não existe

/sbin/init não existe

/sbin/init não existe

Depois de instalar o Arch Linux, reiniciei, mas agora não consigo concluir o processo de inicialização. Acabo na tela acima com esta mensagem

ERROR: Boot device mounted successfully, but /sbin/init does not exist. Bailing out, you are on your own. Good luck.

sh: can't access tty; job control turned off.

e um [rootfs ]# aviso.

Eu verifiquei e confirmei através de um disco ativo quesbinexiste como umsimbólico linkpara/usr/bin. Entretanto não tenhoiniciararquivo/pasta no meu/usr/bindiretório. Onde devo conseguiriniciarpasta de arquivo? Perdi alguma etapa durante a instalação? Há algo que eu possa fazer para corrigir isso? Obrigado.

Responder1

Seguindo meu comentário, o que eu recomendo que você faça para corrigi-lo é reinicializar seu sistema com o livecd (ou qualquer método usado para inicializar no ambiente de instalação) e refazer estas etapas do processo de instalação:

Se ainda não funcionar depois disso, sugiro verificar qual sistema de arquivos está realmente sendo montado pelo gerenciador de inicialização. Talvez dando uma lista de quais arquivossãopresente no /usr/bindiretório nos permitiria ajudá-lo ainda mais.

Responder2

Passei meio dia com esse problema e finalmente percebi que a causa no meu caso foi que eu havia configurado/usr em uma partição separada, e apenas a partição raiz foi montada no ponto onde a inicialização do grub tenta acessar/usr /bin/init.

Resolvi o problema movendo a hierarquia de arquivos /usr para a partição raiz.

Ricardo

Responder3

Com uma /usrpartição separada você deve usar um initramfs/mkinitcpio e deve adicionar o usr-hook. Há um comentário /etc/mkinitcpio.confque explica exatamente isso. Ganchos adicionais também podem ser necessários, descritos nos comentários do arquivo. Gere novamente o initramfs posteriormente, por exemplo mkinitcpio -P.

Antecedentes: Atualmente todas as principais distribuições estão mais ou menos quebradas com uma /usrpartição separada devido ao armazenamento inconsistente de binários e bibliotecas. De acordo com o Linux Standard Base eles devem usar /bin, /sbin e/ ou /lib. Em vez disso, a maioria cria seus próprios e preenche /usr/bin, para fazer truques com /usr/sbin e mistura isso com diferentes caminhos de biblioteca. Isso ocorre em parte para evitar que os usuários quebrem coisas e para torná-lo conveniente e em parte porque não existe uma placa acima de todos os padrões.

Pelo menos o Arch Linux e o Gentoo Linux oferecem guias recentes em seus Wikis para configurações sofisticadas. Eu recomendo ler o GentooMontagem antecipada no espaço do usuáriopara ter uma ideia do que é necessário para criar um initramfs personalizado. Arch Linux é um pouco mais de alto nível nisso.

Eu absolutamente recomendo ficar no lado seguro para sistemas de desktop comuns e executar com muito pouco particionamento. Fazendo login diariamente, você reconhecerá rapidamente que o sistema de arquivos está cheio. É seguro dividir /homeem uma partição (e disco) separada e manter todos os outros diretórios em uma única partição/unidade do sistema operacional.

Não-desktops/servidores devem definitivamente dividir as partições para evitar o preenchimento de partições bloqueando todo o sistema. Eles funcionam sem supervisão por meses ou anos. Eles escrevem logs, dados e talvez atualizam pacotes automaticamente. Você não pode mais fazer login em uma máquina que não tenha mais espaço /tmpou /run( /vardependendo da distribuição) por causa de logs coletados ou arquivos de pacotes baixados. Também é muito provável que haja dispositivos RAID e/ou sistemas de arquivos sofisticados para algumas partições. O que requer ainda mais ganchos e configuração manual do gerenciador de inicialização e tudo abaixo /sbin/init.

informação relacionada