Falha ao executar / init (erro -13), não pode executar '/etc/init.d/rcS': Nenhum arquivo ou diretório

1

Ontem à noite eu quebrei meu Arch. Agora, ao tentar inicializar, diz:

[0.595364] Failed to execute /init (error -13)
: can't log to /dev/tty5
starting pid 131, tty '': '/etc/init.d/rcS'
: can't log to /dev/tty5
can't run '/etc/init.d/rcS': No such file or directory

Please press Enter to activate this console. : can't log to /dev/tty5
: can't log to /dev/tty5
: can't log to /dev/tty5
can't open /dev/tty4: No such file or directory
can't open /dev/tty3: No such file or directory
can't open /dev/tty2: No such file or directory
: can't log to /dev/tty5
process '-/bin/sh' (pid 133) exited. Scheduling for restart.
: can't log to /dev/tty5
process '-/bin/sh' (pid 134) exited. Scheduling for restart.
: can't log to /dev/tty5
process '-/bin/sh' (pid 135) exited. Scheduling for restart.
...

As mensagens depois Por favor, pressione enter para continuar repetindo (mais ou menos) tão rapidamente que não posso lê-las diretamente, tirei uma foto e anotei as mensagens manualmente.

Eu tentei pressionar Enter algumas vezes sem sucesso. Ctrl + Alt + Del ou tentando mudar para tty7, tty6 ou tty1 não mostraram reação.

Eu não sei porque se queixa de tty5 primeiro.

O que eu fiz antes:

Instalei o android-studio do AUR (com git clone e makepkg -si ).

Eu fiz as atualizações pacman -Syu (na verdade, não tenho 100% de certeza quando exatamente atualizei).

O Android Studio tentou instalar o Android SDK e outras coisas. Estava alegando que tinha muito espaço. Não me lembro dos números exatos que ele exibia, mas eu tinha certeza de que o espaço disponível exibido não poderia ser verdadeiro, então limpei aproximadamente 35 GB na minha partição de dados (onde eu explicitamente disse que deveria instalar o SDK) antecipadamente. O processo terminou com várias mensagens de erro que ficaram sem espaço. Parece que ele usou quase nenhum dos 35GB que eu tinha liberado para ele na partição de dados, mas tentou instalar na partição do sistema (que tinha menos de 1 ou 2GB disponíveis).

O estúdio do Android me informou que minha máquina era capaz de acelerar o emulador do Android, mas acho que ele não tentou instalar o KVM.

Então eu tentei liberar algum espaço da partição do sistema removendo alguns pacotes AUR (por volta de 3) que eu tentei instalar uma vez mas nunca usei (porque a instalação falhou ou porque eu não configurei apropriadamente ou porque eles se revelaram algo diferente do que eu precisava.) Para cada um desses eu executei pela primeira vez pacman -Rs (que na maioria dos casos falhou provavelmente porque eu não tinha conseguido instalá-lo em primeiro lugar) seguido por um rm -rf . Um desses pacotes era o cdm (um gerenciador de login), mas quando eu o desinstalei, eu tinha absoluta certeza de que estou usando em seu lugar.

O que eu tentei desde então:

Eu li o que deveria ter lido antes da atualização: link mas não há nada de novo desde a última atualização.

Eu verifiquei que a partição do sistema de arcos não está completamente cheia, ainda restam 664MB.

Eu tenho arch-chroot ed de um live stick no sistema e executei pacman -Syu esperando que ele pudesse me dizer o que está quebrado, mas ele simplesmente instalou dois novos pacotes.

Eu verifiquei que /etc/init.d/rcS não existe (o diretório inteiro /etc/init.d está faltando). /etc/init.d não existe no live stick também. Por isso estou assumindo que nunca existiu em primeiro lugar. Mas por que tentar executar um arquivo não existente de repente? Acho que li em algum lugar que esse arquivo geralmente é chamado de maneira diferente no arco, mas não consigo encontrar essa fonte novamente.

O que deve ser executado em vez de /etc/init.d/rcS e como posso fazer isso? Ou como posso recriá-lo se ele existir?

EDIT: Eu tentei inicializar o sistema com os parâmetros do kernel rescue e emergency , mas eles não fazem diferença.

init=/bin/sh como parâmetro do kernel apresenta a seguinte mensagem de erro:

[   3.058545] Failed to execute /init (error -13)
/bin/sh : can't access tty; job control turned off
    
por jakun 24.10.2018 / 14:09

1 resposta

1

Encontrei a resposta em /var/log/pacman.log . Havia muitas linhas dizendo "Não há espaço deixado no dispositivo" ao tentar atualizar o mkinitcpio.

  1. Então inicializei um live stick e criei o arco-raiz no sistema de arcos no meu ssd local:

    # loadkeys ...  # change keyboard layout if needed
    # mount /dev/sda1 /mnt
    # arch-chroot /mnt
    
  2. Removidos os arquivos criados durante a instalação do android-studio que não são mais necessários (cerca de 5GB).

  3. Reinstalado mkinitcpio :

    # pacman -Sy mkinitcpio
    
  4. exit , poweroff e inicializado no meu sistema de arquivamento

agora está sendo executado novamente.

    
por 25.10.2018 / 16:16