Eu tenho GNU / Linux (atualmente Fedora 26, mas anteriormente Linux Mint 18.2 Sonya) instalado em um disco rígido externo ao lado de uma partição NTFS que eu uso para armazenamento - e inicializa perfeitamente no computador que eu usei para instalá-lo. No entanto, quando eu tento inicializar em um computador diferente com uma configuração de disco rígido diferente, ele não consegue encontrar as partições do sistema operacional e me envia para o GRUB Rescue com a mensagem de erro error: unknown filesystem
.
Suspeito que isso aconteça porque o GRUB pesquisa as partições usando marcadores como hdX,msdosY
( X
e Y
sendo números inteiros aparentemente correspondentes a sXY
labels como sda1
com X
sendo uma letra e Y
sendo um inteiro), como o menuentry
s no meu grub.cfg
usa-os ao definir a variável root
- assumindo que grub.cfg
é a origem do que é colocado no MBR. Meu /etc/default/grub
não contém GRUB_DISABLE_LINUX_UUID=true
.
A solução para o meu problema poderia estar fazendo o GRUB procurar as partições usando o UUID - e em caso afirmativo: como eu faria para fazer isso?
EDIT: Aqui está o menuentry
completo para inicializar o Fedora do meu grub.cfg
:
menuentry 'Fedora (4.11.8-300.fc26.x86_64) 26 (Twenty Six)' --class fedora --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.11.8-300.fc26.x86_64-advanced-c1bcc95a-66a8-4bd3-ae64-42be8d83137e' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd1,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd3,msdos2 --hint-efi=hd3,msdos2 --hint-baremetal=ahci3,msdos2 --hint='hd1,msdos2' 3483e8e8-38ab-4b47-aec4-1cb475c285d8
else
search --no-floppy --fs-uuid --set=root 3483e8e8-38ab-4b47-aec4-1cb475c285d8
fi
linux16 /vmlinuz-4.11.8-300.fc26.x86_64 root=UUID=c1bcc95a-66a8-4bd3-ae64-42be8d83137e ro rhgb quiet LANG=en_GB.UTF-8
initrd16 /initramfs-4.11.8-300.fc26.x86_64.img
}
Eu também preferiria que qualquer solução que não envolvesse a edição manual de grub.cfg
como qualquer alteração feita fosse sobrescrita ao atualizar o GRUB.
EDIT 2: Depois que eu comecei a trabalhar com o GPT e o Fedora 26, eu decidi voltar para o Linux Mint, já que era a minha distro original de escolha. Isso, no entanto, acabou por não funcionar. Depois de testar com várias distros diferentes (Debian, Ubuntu, CentOS e openSUSE). Todas as distribuições baseadas em RPM funcionavam, enquanto nenhuma das baseadas em Debain funcionava. O openSUSE oferece uma opção para habilitar / desabilitar o suporte ao SecureBoot, e quando ele foi instalado com este desabilitado, obtive os mesmos resultados que fiz com as distribuições baseadas no Debian.
Isso não faz sentido para mim, pois posso verificar que pelo menos dois dos computadores que testei tinham o SecureBoot explicitamente desativado, mas eu não consegui inicializar nem as distribuições baseadas no Debain nem o openSUSE sem o suporte do SecureBoot. / p>
(Para esclarecer: as distribuições de RPM não inicializaram antes de eu mudar meu disco rígido para usar uma GPT.)