Grub Fallback

Fermé
strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019 - 18 mars 2019 à 13:55
strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019 - 26 mars 2019 à 14:04
Bonjour,

Je rencontre un soucis avec le module fallback de grub, ou plus précisément je pense que je ne le configure pas correctement.

Le projet est le suivant :

voici mon partitionnement :
lsblk
nvmen1 259:0 0 100G 0 disk
├─nvmen1p1 259:1 0 2G 0 part
├─nvmen1p2 259:2 0 1K 0 part
├─nvmen1p5 259:3 0 4G 0 part
├─nvmen1p6 259:4 0 20G 0 part
├─nvmen1p7 259:5 0 20G 0 part
└─nvmen1p8 259:6 0 20G 0 part


nvmen1p1 est la partition "/boot", c'est ici où se situe la configuration du grub
nvmen1p6 est la partition du système n°1
nvmen1p7 est la partition du système n°2

Mon objectif est mettre en place un système de secure boot, c'est à dire si mon système n°1 ne boot pas correctement, rebooter automatique sur système n°2.

Je pense que le fallback intégré dans grub correspond à mon besoin (lien vers doc officiel : https://www.gnu.org/software/grub/manual/legacy/Booting-fallback-systems.html)

Voici maintenant ma configuration grub.cfg (partie menuentry) :

default=saved
timeout=5
hiddenmenu
fallback 0 1

menuentry 'Ubuntu 18 GNU/Linux' --class gnu-linux --class gnu --class os --id 0 {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 b16042aa-2466-43a7-91d4-5df680d155d2
else
search --no-floppy --fs-uuid --set=root b16042aa-2466-43a7-91d4-5df680d155d2
fi
linux /bot/vmlinuz-4.15.0-20-generic root=UUID=b16042aa-2466-43a7-91d4-5df680d155d2 ro net.ifnames=0 biosdevname=0 nomodeset
initrd /boot/initrd.img-4.15.0-20-generic
savedefault fallback
}

menuentry 'Debian GNU/Linux' --class gnu-linux --class gnu --class os --id 1 {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 b5bda3ce-0de3-46d8-bff4-c31d12207219
else
search --no-floppy --fs-uuid --set=root b5bda3ce-0de3-46d8-bff4-c31d12207219
fi
linux /boot/vmlinuz-4.15.0-43-generic root=UUID=b5bda3ce-0de3-46d8-bff4-c31d12207219 ro net.ifnames=0 biosdevname=0 nomodeset
initrd /boot/initrd.img-4.15.0-43-generic
savedefault fallback
}


Lorsque je génère une erreur dans le système n°1 pour qu'il ne boot pas correctement (erreur de nommage du kernel par exemple), le message erreur suivant s'affiche :

error: file `chemin erroné vers le kernel` not found
error: you need to load the kernel first

Press any key to continue...

Failed to boot both default and fallback entries.

Press any key to continue...


Tout en sachant que le système n°2 boot correctement...

Savez vous pourquoi cela ne fonctionne pas?

Un grand merci d'avance pour vos réponses, j'ai vraiment besoin d'aide

Configuration: Windows / Chrome 73.0.3683.75

4 réponses

strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019 1
19 mars 2019 à 11:45
Up! Personne n'a de solution svp? il s'agit d'un problème très bloquant pour moi
0
strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019 1
20 mars 2019 à 13:26
Up! Toujours personne?
0
strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019 1
25 mars 2019 à 15:49
Up, toujours personne?
0
UnGnU Messages postés 1158 Date d'inscription lundi 2 mai 2016 Statut Contributeur Dernière intervention 22 décembre 2020 157
25 mars 2019 à 16:06
Salut,

Je viens de jeter un œil à ton lien, ainsi qu'à quelques posts sur le net, et perso je ferai ça :

default saved
timeout=5
hiddenmenu
fallback 1

menuentry 'Ubuntu 18 GNU/Linux' --class gnu-linux --class gnu --class os --id 0 {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 b16042aa-2466-43a7-91d4-5df680d155d2
else
search --no-floppy --fs-uuid --set=root b16042aa-2466-43a7-91d4-5df680d155d2
fi
linux /bot/vmlinuz-4.15.0-20-generic root=UUID=b16042aa-2466-43a7-91d4-5df680d155d2 ro net.ifnames=0 biosdevname=0 nomodeset
initrd /boot/initrd.img-4.15.0-20-generic
savedefault fallback
}

menuentry 'Debian GNU/Linux' --class gnu-linux --class gnu --class os --id 1 {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 b5bda3ce-0de3-46d8-bff4-c31d12207219
else
search --no-floppy --fs-uuid --set=root b5bda3ce-0de3-46d8-bff4-c31d12207219
fi
linux /boot/vmlinuz-4.15.0-43-generic root=UUID=b5bda3ce-0de3-46d8-bff4-c31d12207219 ro net.ifnames=0 biosdevname=0 nomodeset
initrd /boot/initrd.img-4.15.0-43-generic
savedefault
}


;-))
0
strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019 1
26 mars 2019 à 11:37
Merci, enfin une réponse! Merci à toi :D

J'ai déjà essayé, mais ça ne change rien malheureusement.

J'ai fait un test plutôt approfondis suite à ça

j'ai configuré /etc/default/grub :
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=5
#GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_DISTRIBUTOR=""
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Fallback configuration
export GRUB_FALLBACK="1"
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

J'ai effectué un "update-grub2" et j'ai ensuite adapté manuellement /boot/grub/grub.cfg pour y intégrer ceci avant les "menuentry":
default saved
timeout 5
hiddenmenu
fallback 1

J'ai aussi commenté tous les menus inutile
Et toujours rien... la même erreur
0
UnGnU Messages postés 1158 Date d'inscription lundi 2 mai 2016 Statut Contributeur Dernière intervention 22 décembre 2020 157 > strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019
26 mars 2019 à 11:41
En relisant ton 1er message et ta config, je vois ça
linux /bot/vmlinuz-4.15.0-20-generic
;-(
Et ça me botte pas des masses ;-)
0
strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019 1
26 mars 2019 à 11:45
c'est normal, il s'agit de l'erreur que je génère pour tenter de faire fonctionner le fallback
0
UnGnU Messages postés 1158 Date d'inscription lundi 2 mai 2016 Statut Contributeur Dernière intervention 22 décembre 2020 157 > strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019
26 mars 2019 à 12:06
Que je comprenne bien…
Mon objectif est mettre en place un système de secure boot, c'est à dire si mon système n°1 ne boot pas correctement, rebooter automatique sur système n°2.
Ton système n°1 c'est Ubuntu et le n°2 c'est Debian, c'est ça ?

Si oui, tu veux que si Ubuntu ne démarre pas, ça enchaîne sur Debian ?

Si toujours oui, alors c'est dans le menu d'Ubuntu qu'il faut générer une erreur, non ? ;-\
0
strangeuser Messages postés 28 Date d'inscription jeudi 18 octobre 2018 Statut Membre Dernière intervention 26 mars 2019 1
26 mars 2019 à 14:04
oui et oui ^^

mon système n°1 est un Ubuntu, et je génère une erreur pour qu'il plante au boot (et dans la ma conf c'est bien l'ubuntu qui à l'erreur)

mon système n°2 est un Debian, et il est censé boot à la place d'Ubuntu

Après pour le système numéro 2 c'est une debian pour bien différencier les 2 OS, sinon dans le projet il peut s’agir d'un autre ubuntu
0