ho provato, funziona, solo che quando ci clicco poi apre il grub di fedora, bisogna fare due clic, cioè entra nell’altro grub di fedora mi sembra che sul forum che hai postato qualcuno fa mettere il parametro os_prober=true. ma non cambia nulla, comunque già un traguardo averlo inserito.
Dovresti modificare il file /etc/default/grub
du Fedora, aggiungendo (o modificando nel caso sia già presente) la stringa GRUB_DISABLE_OS_PROBER=true
o poi aggiornare il grub di Fedora grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
ma verranno comunque visualizzate tutte le voci dei kernel di Fedora…
os-prober
è uno strumento che serve a rilevare la presenza di altri sistemi, disabilitandolo non verranno più aggiunti automaticamente sul menu di grub ma le voci di Fedora rimangono.
l’unico modo per far avviare direttamente Fedora sarebbe quello di specificare su /etc/grub.d/40_custom
il percorso ai collegamenti al kernel (vmlinuz) ed initramfs… la parte scomoda di questo metodo è che quando Fedora riceverà un aggiornamento del kernel dovresti modificare lo script di grub su Ubuntu per poterlo avviare… per quel che mi riguarda ritengo sia meno pratico dover modificare ogni volta il collegamento al kernel e ad iniramfs, piuttosto che avere due schermate di grub.
L’ultima volta che ho dovuto gestire grub con Ubuntu, Fedora e Windows insieme neanche avevo un bios UEFI, ma ricordo che non lasciai installare grub sull’mbr a Fedora gestendo tutto tramite Ubuntu.
Ubuntu rilevava correttamente Fedora, ma ogni volta che si aggiornava il kernel su Fedora ero costretto ad aggiornare grub su Ubuntu manualmente.
Non è impossibile gestire grub con Windows, Ubuntu e Fedora insieme, o anche con altre distribuzioni.
E soprattutto non è necessario “switchare” i dischi all’avvio dal Bios/Uefi!
Ogni grub infatti può avviare i grub delle altre distribuzioni (oltre a Windows).
Io faccio così:
-
Disabilito OS_Prober sia su Ubuntu che su Fedora da /etc/default/grub. OS_Prober è una funzione utile, ma spesso funziona male (specie con sistemi su più dischi con EFI), e anche quando funziona vengono avviati i vecchi kernel.
-
Sia in Ubuntu che in Fedora aggiungo in /etc/grub.d/40_custom una voce per Windows e un’altra voce per Fedora/Ubuntu. Si tratta di voci personalizzate che identificano l’UUID della partizione EFI da cui si avvia ognuno dei sistemi operativi (funziona quindi anche se ogni S.O. si avvia da un suo EFI separato, come avviene quando si installa su più dischi ognuno col suo EFI), e che avviano il rispettivo file di avvio dalla partizione EFI corrispondente.
-
Disabilito la funzione del grub nascosto all’avvio che si attiva automaticamente quando OS_Prober è disabilitato.
Così facendo, nel grub di Ubuntu ho una voce per Fedora che mi avvia il grub di Fedora, e nel grub di Fedora ho una voce per Ubuntu che mi avvia il grub di Ubuntu. Entrambi i grub hanno anche una voce per Windows.
Le voci personalizzate del punto 2 sono queste (per il grub di Ubuntu):
menuentry “Fedora” --class fedora {
insmod part_gpt
insmod fat
insmod ext2
Insmod btrfs
search --no-floppy --fs-uuid --set=root YYY
chainloader /EFI/fedora/shimx64.efi
}
menuentry “Windows” --class windows {
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root XXX
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
Dove XXX e YYY sono gli UUID delle rispettive partizioni EFI (che in caso di una sola EFI sono uguali).
Nel caso del grub di Fedora:
menuentry “Ubuntu” --class ubuntu {
insmod part_gpt
insmod fat
insmod ext2
Insmod btrfs
search --no-floppy --fs-uuid --set=root ZZZ
chainloader /EFI/ubuntu/shimx64.efi
}
menuentry “Windows” --class windows {
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root XXX
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
Qui l’UUID della partizione EFI di Ubuntu è indicato con ZZZ.