Recentemente fiz uma restauração no meu arch com o timeshift, após isso, ele dava uma mensagem de “emergency mode”.
Usei uma LiveCD para utilizar o comando fsck para ver se resolvia, mas não resolveu.
Eu deixei pra lá e fui pro Windows pelo dualboot. Porém no dia seguinte eu me deparo com nenhum dos sistemas iniciando, dando aquela tela de minimal bash grub.
Com a LiveCD, fui ver o que estava acontecendo, e vi que por algum motivo, todos os arquivos da pasta /boot/efi sumiram. Será que tem algum jeito de resolver?
é possivel reinstalar o grub pelo LiveBoot:
sudo grub-install /dev/sdX
NÃO SE ESQUEÇA!!!
Escolha sua partição grub, não seu sistema Linux!!
O LiveCD montou /boot/efi
?
Quando executei um LiveCD, a montagem era /overlay/mnt
.
Usei um comando:
$ sudo mount /dev/sda1 /mnt
Acredito que, se já estivesse montado em /boot/efi
, eu não conseguiria montar em /mnt
.
É possível montar em vários locais.
Dando uma rápida pesquisada, descobri que não é possivel (o que é possível é criar um ln
para a pasta montada). O grub do LiveCD é diferente to grub no HD. Perceba que num HD instalado somente Windows o grub abrirá se inserido um LiveCD. Então, my bad…
O que você montou foi o grub do HD e o atual /boot/efi
deve ser o grub do LiveCD.
Exatamente. – Eu queria montar a partição EFI (do SSD) na sessão LiveCD, para verificar o conteúdo.
Compreendo. Em qualquer caso, se ele não está conseguindo inicializar o sistema. é necessário uma reinstalação do grub para não perder os dados.
Gostaria que o @yHeitorX esclarecesse minha dúvida – para que eu possa ajudar de algum modo.
Tente os passos abaixo.
-
Inicialize com a Arch ISO
-
Monte seu esquemas de partições de acordo como no momento da instalação.
-
Entre no seu sistema já instalado, utilizando o
arch-chroot
, no ponto de montagem/
à qual utilizou no passo acima. ex.:arch-chroot /mnt
-
Instale o Grub para EFI.
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --recheck
- Regenere as configurações do Grub.
grub-mkconfig -o /boot/grub/grub.cfg
Acredito que o comando grub-install
já gera as configurações necessárias. Pois quando eu atualizo-o as configurações são re-geradas. Em todo caso, é uma boa ideia fazer isso em caso de problemas.
O que eu fiz foi basicamente o seguinte.
Eu abri o meu / pelo thunar na liveCD, e fui no /boot/efi
Eu estava pensando em fazer isso, mas o medo é maior
Bom, eu fiz os passos de restaurar o grub, o sistema iniciou, até ai tudo bem.
Mas eu acabei de dar reboot e deu novamente o erro do minimal bash grub.
É como se a cada reboot fosse excluido os arquivos efi.
Tente novamente, só que dessa vez aponte o diretório EFI de acordo com o que está no seu /etc/fstab
, alterando o 4º passo, na instalação do GRUB.
Exemplo:
grub-install --target=x86_64-efi --efi-directory=<EFI-DIR> --bootloader-id=GRUB --recheck
Onde <EFI-DIR> deverá ser trocado para o caminho, encontrado no /etc/fstab
, à qual pode ser /boot/EFI
…
Numa sessão Live, não deveria aparecer a subpasta /boot/efi
:
Você encontrou a subpasta vazia… ou não encontrou a subpasta?
O fato de não encontrar a subpasta /boot/efi
na sessão LiveCD, não significa que ela não exista, ou que esteja vazia. – Pode ser que esteja tudo lá, só que você não vê.
(Se for este o caso, o problema pode ser outro).
No caso de realmente ter apagado alguma coisa dentro da partição EFI, recomendo seguir as instruções do @null – lembrando de substituir <EFI-DIR>
pelo caminho encontrado no /etc/fstab
da instalação (não do LiveCD., claro).
- Não sei se você instalou o Arch “na unha” ou pelo instalador
- Não sei qual distro você está usando como LiveCD
Se você usar o CD / DVD do próprio Arch… Os passos necessários são estes:
# mount /dev/sdaX /mnt
# mount /dev/sdaY /mnt/boot/efi
# arch-chroot /mnt
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
# grub-mkconfig -o /boot/grub/grub.cfg
Onde:
-
sdaX = troque pela partição-raiz do seu Arch
-
sdaY = troque pela partição EFI do seu computador
-
chroot = Vai considerar que está usando o Arch instalado – e não o LiveCD
-
É o comando recomendado pelo @null – mas lembre de adaptar ao seu caso. – Vai instalar na partição EFI
-
A último comando apenas atualiza o Grub do Arch (detectar o Arch e o Windows)
Enfim… Se alguma dessas coisas falhar, diga exatamente qual.
EDIT - Eu já estava esquecendo… Sair do chroot
:
# exit
Eu instalei o arch na unha, mas no momento to com a live do archcraft
Eu to no chroot, mas quando eu uso o comando pra instalar o grub, aparece um erro de input/output.
Mostra esse erro para nós… senão, a gente fica perdidos.
Certifique-se de montar todas as partições como no momento da instalação, este erro pode ser que o arch-chroot
não esteja encontrando o /bin/bash
como interpretador…
Qual o conteúdo do /etc/fstab
do Arch? Outra nota é monte todas as partições antes de entrar no chroot
…