Fedora-Fr - Communauté francophone Fedora - Linux

Communauté francophone des utilisateurs de la distribution Linux Fedora.

  

Dernière news : Représenter Fedora au Capitole du Libre 2019

#1 21/06/2019 15:57:50

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 21 869

Comment fonctionne bls ?

Salut

Sur une machine en F29 updatée depuis un F28, j'ai voulu passer au démarrage avec bls.

J'ai donc exécuté le script /sbin/grub2-switch-to-blscfg

Il a bien installé dans /boot/loader/entries les différents noyaux disponibles
Il a bien rajouté dans /etc/default/grub la ligne GRUB_ENABLE_BLS=true

Il a bien régénéré le fichier /boot/grub2/grub.cfg, dans lequel il n'y a plus les différentes entrées à présenter dans le menu,

Mais au démarrage, aucun noyau n'est présenté et je me retrouve avec le prompt GRUB>

Comme j'avais fait une copie du fichier config en grub.cfg.bon, j'ai pu démarrer grub au moyen de la directive "configfile boot/grub2/grub.cfg.bon"

Et comme je n'ai jamais réussi à faire fonctionner bls, je suis revenu à l'état antérieur.

Ma question est donc : où est-il possible de trouver une documentation précise sur comment fonctionne bls ?

Faut-il refaire un grub-install ? Le fait que ce grub ne se trouve pas sur sda est-il rédhibitoire ?

Voilà je suis perplexe.


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#2 21/06/2019 16:11:45

winmandrake
Membre
Inscription : 08/07/2008
Messages : 1 144

Re : Comment fonctionne bls ?

juste par curiosité : qu'est-ce que bls ?


Mon pc : AMD R5-2400G sur Asus Prime B450M-A, 16 Go ram, Nvidia 1050Ti (4Go), SSD Samsung 850 EVO (250 Go) + black caviar de 1To.

Hors ligne

#3 21/06/2019 17:11:16

Nicosss
Membre
Lieu : Isère
Inscription : 05/03/2007
Messages : 5 025
Site Web

Re : Comment fonctionne bls ?

Il y a eu combien d'updates avant F28 ?

Il est possible que tu rencontres ce bug pour commencer https://fedoraproject.org/wiki/Common_F … an_upgrade après le forçage de l'utilisation de BLS.

Ensuite il y a eu un cas un peu similaire ne permettant pas d'utiliser BLS (d'ailleurs tu as dû voir le post), qui a conduit à ce rapport https://bugzilla.redhat.com/show_bug.cgi?id=1720829.

Concernant BLS https://systemd.io/BOOT_LOADER_SPECIFICATION il est possible d'avoir des informations complémentaires à https://fedoraproject.org/wiki/Changes/ … cByDefault.


F30_64 Gnome-Shell - GA-990FXA-UD3 - Phenom II X6 1100T - NH-D14 - Ati HD 5750 Fanless - 16Go RAM /&/ F30_64 Gnome-Shell - Toshiba Satellite C660D-19X - 8Go RAM
F30_64 - ASRock 960GC-GS FX - AMD FX(tm)-8300 - 16Go RAM

Hors ligne

#4 21/06/2019 20:01:42

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 21 869

Re : Comment fonctionne bls ?

Oui en effet ils disent de refaire un grub2-install, ce que je n'ai pas fait, mais il semble d'après cette page que ça ne résolve pas le problème.

Bon c'était surtout par curiosité, rien ne presse.

@winmandrake: bls= boot_loader_specs


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#5 23/06/2019 10:22:15

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 21 869

Re : Comment fonctionne bls ?

Bon j'ai trouvé la cause du souci.

Le script /sbin/grub2-switch-to-blscfg fait partie du paquet grub2 mis à jour. Dans ce paquet, le script grub2-install a aussi été modifié et il faut croire que le chargeur indique que les entrées sont à récupérer dans /boot/loader/entries.

En clair si on veut passer à l'utilisation de bls lors d'une mise à jour, il faut alors également modifier le chargeur en exécutant grub2-install /dev/xxxx

Là ça fonctionne nickel. Il va juste falloir apprendre comment rédiger les "entries".


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#6 23/06/2019 11:01:47

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 7 373
Site Web

Re : Comment fonctionne bls ?

Elles se rédigent toutes seules à l'installation des paquets kernel-core, qui dans leur script de post-install appelent le script kernel-install (un bon shell).

Question, ton menu grub au boot il liste bien les versions des kernels ? Chez moi il ne propose que le titre, donc j'ai 3 entrées "Fedora 30 (Workstation Edition)" ce qui n'est pas top. Pas encore trouvé comment configurer ce module blscfg de grub. Doit bien y avoir moyen de lui dire d'afficher la version en plus du title.

J'ai voulu tenter un grub2-install, ça ne fait pas de mal, mais j'obtiens:

[root@taran entries]# grub2-install 
grub2-install : erreur : /usr/lib/grub/x86_64-efi/modinfo.sh n'existe pas. Veuillez utiliser --target ou --directory.

A priori normal vu que je suis en EFI.

Bref le passage vers BLS ne se fait pas en douceur...

Hors ligne

#7 23/06/2019 11:23:28

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 21 869

Re : Comment fonctionne bls ?

Alors lors d'une installation fraîche, le passage à bls est invisible.

En revanche lorsqu'on fait un upgrade, le grub2-install n'est pas exécuté, et spécialement dans la mesure où le passage à bls n'est pas obligatoire ni même proposé. Si on découvre cette possibilité et qu'on le fait, il faut exécuter grub2-install (celui qui a été installé par l'upgrade, mais pas exécuté).

Celà dit ce n'est pas un bon choix et je viens de tout virer. En effet, osprober met le bazar, on ne sait pas comment rédiger un chainloader ni même si c'est possible. Donc marche arrière toute. Jusqu'à plus ample informé ce système n'est pas du tout destiné à un multiboot.


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#8 23/06/2019 11:24:56

Nicosss
Membre
Lieu : Isère
Inscription : 05/03/2007
Messages : 5 025
Site Web

Re : Comment fonctionne bls ?

@nouvo09, à voir s'il y a un rapport de bug en ce sens du coup.

@madko, tu n'as pas précisé la destination.
Sinon j'ai les entrées de kernel détaillées sur la page du GRUB.

Si tu fais la commande suivante tu auras le kernel utilisé

# grubby --default-kernel

Puis à voir si tu as la section title renseignée avec la commande

# grubby --info <résultat_commande_précédente>

Dernière modification par Nicosss (23/06/2019 11:25:24)


F30_64 Gnome-Shell - GA-990FXA-UD3 - Phenom II X6 1100T - NH-D14 - Ati HD 5750 Fanless - 16Go RAM /&/ F30_64 Gnome-Shell - Toshiba Satellite C660D-19X - 8Go RAM
F30_64 - ASRock 960GC-GS FX - AMD FX(tm)-8300 - 16Go RAM

Hors ligne

#9 23/06/2019 11:31:25

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 21 869

Re : Comment fonctionne bls ?

@ madko:
lors de l exécution du script /sbin/grub2-switch-to-blscfg, le grub2-mkconfig modifié, inscrit dans /etc/default/grub qu'il doit utiliser blscfg. Et de ce pas, il va régénérer un grub.cfg, qui va chercher dans /boot les noyaux disponibles et créer pour chacun un fichier dans /boot/loader/entries.  Et c'est là que le nouveau grub modifié par grub-install viendra les lire pour les afficher au boot.

Vérifie aussi ta version de grub2-tools. Moi j'ai grub2-tools-2.02-62.fc29.x86_64


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#10 23/06/2019 11:32:43

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 21 869

Re : Comment fonctionne bls ?

Nicoss a écrit :

à voir s'il y a un rapport de bug en ce sens du coup.

Je ne pense pas que ce soit un bug, mais un feature.


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#11 23/06/2019 13:00:10

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 7 373
Site Web

Re : Comment fonctionne bls ?

Erreur de copier/coller j'avais bien mis la destination pour le grub2-install, qui après avoir installé un paquet manquant (grub2-efi-tools ou qqchose dans le style), me dit que je ne dois pas faire de grub2-install car je suis en EFI. Désolé de ne pas avoir été assez clair.

Pour résumé, le nouveau grub qui n'en est pas un, a juste en module en plus, qui est le blscfg.mod. Le nouveau grub.cfg charge juste ce module. Ce module a pour unique tache d'aller à la recherche des fichiers dans /boot/loader/entries. Ainsi tout est dynamique, le fichier grub.cfg n'a plus à être mis à jour à chaque kernel. Et du coup, grubby partira à la retraite.

Dans mes fichiers entries j'ai bien le titre qui ne contient que "Fedora 30 (Workstation Edition)" pour chaque kernel. J'ai ensuite un champ version qui contient bien la version du kernel. J'aimerais donc trouver comment faire comprendre à grub ou au module blscfg d'afficher "$title-$version" au lieu de juste "$title". A suivre.

Hors ligne

#12 23/06/2019 15:26:11

Nicosss
Membre
Lieu : Isère
Inscription : 05/03/2007
Messages : 5 025
Site Web

Re : Comment fonctionne bls ?

Le résultat de la commande avec aurait été plus clair...

Pour info j'ai

grubby --info /boot/vmlinuz-5.1.12-300.fc30.x86_64
index=0
kernel="/boot/vmlinuz-5.1.12-300.fc30.x86_64"
args="ro rd.lvm.lv=Fedora_LVM/System elevator=noop"
root="/dev/mapper/Fedora_LVM-System"
initrd="/boot/initramfs-5.1.12-300.fc30.x86_64.img"
title="Fedora (5.1.12-300.fc30.x86_64) 30 (Thirty)"
id="c1d8c70102204fc49425c30228b0a846-5.1.12-300.fc30.x86_64"

Alors est-ce que tu auras une entrée complète lors du prochain kernel ?


F30_64 Gnome-Shell - GA-990FXA-UD3 - Phenom II X6 1100T - NH-D14 - Ati HD 5750 Fanless - 16Go RAM /&/ F30_64 Gnome-Shell - Toshiba Satellite C660D-19X - 8Go RAM
F30_64 - ASRock 960GC-GS FX - AMD FX(tm)-8300 - 16Go RAM

Hors ligne

#13 23/06/2019 16:03:12

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 7 373
Site Web

Re : Comment fonctionne bls ?

Pour continuer dans la curiosité:

[root@taran entries]# ls /boot/
5a68123777134e458e146023b9704f82  efi  elf-memtest86+-5.01  extlinux  grub2  initramfs-0-rescue-5a68123777134e458e146023b9704f82.img  loader  lost+found  memtest86+-5.01  vmlinuz-0-rescue-5a68123777134e458e146023b9704f82
[root@taran entries]# rpm -ql kernel-core|grep boot
/boot/.vmlinuz-5.1.7-300.fc30.x86_64.hmac
/boot/System.map-5.1.7-300.fc30.x86_64
/boot/config-5.1.7-300.fc30.x86_64
/boot/initramfs-5.1.7-300.fc30.x86_64.img
/boot/vmlinuz-5.1.7-300.fc30.x86_64
/boot/.vmlinuz-5.1.8-300.fc30.x86_64.hmac
/boot/System.map-5.1.8-300.fc30.x86_64
/boot/config-5.1.8-300.fc30.x86_64
/boot/initramfs-5.1.8-300.fc30.x86_64.img
/boot/vmlinuz-5.1.8-300.fc30.x86_64
/boot/.vmlinuz-5.1.11-300.fc30.x86_64.hmac
/boot/System.map-5.1.11-300.fc30.x86_64
/boot/config-5.1.11-300.fc30.x86_64
/boot/initramfs-5.1.11-300.fc30.x86_64.img
/boot/vmlinuz-5.1.11-300.fc30.x86_64
/boot/.vmlinuz-5.1.12-300.fc30.x86_64.hmac
/boot/System.map-5.1.12-300.fc30.x86_64
/boot/config-5.1.12-300.fc30.x86_64
/boot/initramfs-5.1.12-300.fc30.x86_64.img
/boot/vmlinuz-5.1.12-300.fc30.x86_64

Pourtant rpm -qV kernel-core ne dit rien.

Sinon je ne pense pas que les entrées seront plus complètes au prochain boot, je n'ai rien fait.

ps: grubby comme dit sera vite déprécié avec bls:

[root@taran entries]# grubby --info /boot/vmlinuz-5.1.12-300.fc30.x86_64
The param /boot/vmlinuz-5.1.12-300.fc30.x86_64 is incorrect
[root@taran entries]# uname -a
Linux taran.in.noisy.linuxed.net 5.1.12-300.fc30.x86_64 #1 SMP Wed Jun 19 15:19:49 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
[root@taran entries]# 

Hors ligne

#14 23/06/2019 16:15:26

Nicosss
Membre
Lieu : Isère
Inscription : 05/03/2007
Messages : 5 025
Site Web

Re : Comment fonctionne bls ?

Et dans

# cat /boot/loader/entries/*-5.1.12-300.fc30.x86_64.conf
title Fedora (5.1.12-300.fc30.x86_64) 30 (Thirty)
version 5.1.12-300.fc30.x86_64
linux /vmlinuz-5.1.12-300.fc30.x86_64
initrd /initramfs-5.1.12-300.fc30.x86_64.img
options $kernelopts
grub_users $grub_users
grub_arg --unrestricted
grub_class kernel

F30_64 Gnome-Shell - GA-990FXA-UD3 - Phenom II X6 1100T - NH-D14 - Ati HD 5750 Fanless - 16Go RAM /&/ F30_64 Gnome-Shell - Toshiba Satellite C660D-19X - 8Go RAM
F30_64 - ASRock 960GC-GS FX - AMD FX(tm)-8300 - 16Go RAM

Hors ligne

#15 23/06/2019 16:24:08

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 7 373
Site Web

Re : Comment fonctionne bls ?

Là c'est le bordel:

[root@taran entries]# cat 5a68123777134e458e146023b9704f82-5.1.12-300.fc30.x86_64.conf 
title      Fedora 30 (Workstation Edition)
version    5.1.12-300.fc30.x86_64
machine-id 5a68123777134e458e146023b9704f82
options    BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.1.11-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.1.8-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.1.7-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.1.6-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.1.5-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.1.4-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.0.17-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.0.16-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.0.14-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.0.13-300.fc30.x86_64/linux BOOT_IMAGE=(hd0,gpt5)/5a68123777134e458e146023b9704f82/5.0.11-300.fc30.x86_64/linux BOOT_IMAGE=/vmlinuz-5.0.10-300.fc30.x86_64 root=/dev/mapper/taran-root ro resume=/dev/mapper/taran-swap rd.lvm.lv=taran/root rd.lvm.lv=taran/swap rhgb quiet reboot=efi i915.fastboot=1
linux      /5a68123777134e458e146023b9704f82/5.1.12-300.fc30.x86_64/linux
initrd     /5a68123777134e458e146023b9704f82/5.1.12-300.fc30.x86_64/initrd

Mais c'est intéressant de voir que toi ton title est bon.

J'ai aussi les options qui sont bizarres

Hors ligne

#16 23/06/2019 16:24:22

nouvo09
Accro à Fedo !
Lieu : Paris
Inscription : 22/09/2005
Messages : 21 869

Re : Comment fonctionne bls ?

On est bien d'accord.
Et lorsqu'on fait un grub2-mkconfig, grub ne sait pas quoi faire avec le résultat de os-prober qu'il stocke dans la rubrique 30 et qui provoque un plantage au démarrage.

Donc on cherche encore l'intérêt de ce "truc" hormis le fait qu'il sait booter tous les unixlike.


C'est pas parce que c'est difficile qu'on n'ose pas,
c'est parce qu'on ose pas que c'est difficile !

Hors ligne

#17 23/06/2019 16:57:07

Nicosss
Membre
Lieu : Isère
Inscription : 05/03/2007
Messages : 5 025
Site Web

Re : Comment fonctionne bls ?

Que ce soit sur une machine installée toute propre de F30 ou une migration F29->F30 j'ai les mêmes résultats dans le fichier entries.

Par contre elles sont toutes issues d'une installation de version Fedora Server avec une utilisation Bureau ou Serveur selon les machines. Mais je ne pense pas que la version Workstation entraîne des différences de ce genre.


F30_64 Gnome-Shell - GA-990FXA-UD3 - Phenom II X6 1100T - NH-D14 - Ati HD 5750 Fanless - 16Go RAM /&/ F30_64 Gnome-Shell - Toshiba Satellite C660D-19X - 8Go RAM
F30_64 - ASRock 960GC-GS FX - AMD FX(tm)-8300 - 16Go RAM

Hors ligne

#18 23/06/2019 17:58:50

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 7 373
Site Web

Re : Comment fonctionne bls ?

Je pense que ce qui a foutu le bordel dans mes entries c'est le fait d'être passé par la rawhide avant la sortie de la 30.

Dans ton grubenv tu retrouves bien le kernelopts ?

Hors ligne

#19 23/06/2019 18:49:26

Nicosss
Membre
Lieu : Isère
Inscription : 05/03/2007
Messages : 5 025
Site Web

Re : Comment fonctionne bls ?

Tout à fait

# cat /boot/grub2/grubenv 
# GRUB Environment Block
saved_entry=c1d8c70102204fc49425c30228b0a846-5.1.12-300.fc30.x86_64
kernelopts=root=/dev/mapper/Fedora_LVM-System ro rd.lvm.lv=Fedora_LVM/System
boot_success=1
boot_indeterminate=0
###################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################

F30_64 Gnome-Shell - GA-990FXA-UD3 - Phenom II X6 1100T - NH-D14 - Ati HD 5750 Fanless - 16Go RAM /&/ F30_64 Gnome-Shell - Toshiba Satellite C660D-19X - 8Go RAM
F30_64 - ASRock 960GC-GS FX - AMD FX(tm)-8300 - 16Go RAM

Hors ligne

Pied de page des forums