deletado por engano / boot e reiniciado

15

Por engano, apaguei a pasta / boot do meu sistema de arquivos, reiniciei e tudo que consegui agora é:

error: file '/boot/grub/i368-pc/linux.mod' not found.

grub rescue>
    
por Imad Nouari 01.01.2015 / 18:44

1 resposta

34

Opa!

Veja o que fazer:

  1. Inicialize uma distro ao vivo. Este pode ser o seu disco de instalação do Ubuntu ou outro como Knoppix .

  2. Encontre a unidade / partição onde você instalou seu sistema de arquivos raiz. Para fazer isso, você pode abrir um terminal e executar sudo parted -l ou sudo fdisk -l . Se você não souber, edite sua pergunta e adicione a saída.

  3. Supondo que sua partição raiz que você encontrou na última etapa é /dev/sdxy ( x deve ser outra letra e y deve ser um número), execute os seguintes comandos em um terminal:

    mkdir mnt
    sudo mount /dev/sdxy mnt
    sudo mount --bind /dev /mnt/dev
    sudo mount --bind /proc /mnt/proc
    sudo mount --bind /sys /mnt/sys
    sudo chroot mnt
    
  4. Você estará agora dentro de um ambiente chroot , o que significa que executar comandos aqui é equivalente a executá-los em seu sistema instalado. A primeira coisa que você deseja fazer é reinstalar o GRUB2 no dispositivo para que ele copie os arquivos corretos na pasta /boot . Para fazer isso, execute o seguinte com a unidade na qual sua partição raiz está (ou seja, /dev/sdxy com o número ( y ) removido):

    grub-install /dev/sdx
    
  5. Agora, você deseja descobrir quais pacotes você instalou com arquivos no diretório de inicialização e reinstalá-los. Isto irá substituir as imagens do kernel que foram deletadas entre outras coisas. O comando para encontrar os pacotes é:

    dpkg -S /boot
    

    E para reinstalá-los:

    apt-get --reinstall install ...
    

    Em que ... é substituído pelos nomes dos pacotes do primeiro comando. Não inclua as vírgulas, apenas tenha os nomes dos pacotes com espaços para separar.

    Esta etapa provavelmente exigirá acesso à Internet (a menos que os pacotes já estejam no cache), portanto, verifique se você está conectado se houver algum problema.

  6. Como você terá apagado seus kernels e os reinstalado, isso deve ter ativado uma atualização do GRUB2 automaticamente. Mas caso não tenham, você pode executar:

    update-grub
    
  7. Reinicialize e as coisas devem ser corrigidas agora. Um problema que eu tive da última vez que fiz algo parecido foi que o Windows instala onde não foi encontrado por update-grub quando rodar no chroot devido a um bug no os-prober . Se isso for um problema, basta executar sudo update-grub novamente no sistema reparado.

por 01.01.2015 / 19:32

Tags