Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/02/2016, à 11:40

ar barzh paour

[Résolu] personnalisation de grub

marre d'un grub à rallonge et pas très parlant quand on a plusieurs OS

le grub qui est généré sur ma machine est d'un longueur pas possible avec des lignes de menus dont je ne sais même pas à quoi elles servent

les lignes présentées au démarrage sont laconiques :
j'ai par exemple Ubuntu 14.04.3 LTS (14.04) (sur /dev/sdax) où x=5 13 15 16 ,
à moi de me rappeler ce que sont les partitions 5 13 15 16

je me suis donc lancé dans la modification de ce fichier
===> pour diminuer la longueur
===> suppression des lignes de menus contenant plusieurs fois /dev/sdx     comme cette entrée suivante :

	menuentry 'Ubuntu, with Linux 3.13.0-44-generic (recovery mode) (sur /dev/sda12) (sur /dev/sdb8) (sur /dev/sdc9)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-3.13.0-44-generic-root=UUID=700731a7-ff6c-4343-9863-5c527faf3984 ro recovery nomodeset-a123a4fe-db9b-4aec-959b-b9c8a0b38f65' {
		insmod part_msdos
		insmod ext2
		set root='hd2,msdos9'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd2,msdos9 --hint-efi=hd2,msdos9 --hint-baremetal=ahci2,msdos9  a123a4fe-db9b-4aec-959b-b9c8a0b38f65
		else
		  search --no-floppy --fs-uuid --set=root a123a4fe-db9b-4aec-959b-b9c8a0b38f65
		fi
		linux /boot/vmlinuz-3.13.0-44-generic root=UUID=700731a7-ff6c-4343-9863-5c527faf3984 ro recovery nomodeset
		initrd /boot/initrd.img-3.13.0-44-generic
	}

===> pour une présentation un peu plus visuelle
===> par transformation du mot Ubuntu par le LABEL de la partition dans les lignes adéquates
===> il faudra donc adapter le label des partitions pour que cela soit utile


Ubuntu                                      : devient "a12-U14-04"
Options avancées pour Ubuntu                :         inchangée
Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda10) : devient "a10-L14.04" 14.04.3 LTS (14.04) (sur /dev/sda10)'
Ubuntu 12.04.5 LTS (12.04) (sur /dev/sda11) : devient "a11-U12.04" 12.04.5 LTS (12.04) (sur /dev/sda11)
Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda13) : devient "a13-U14-04" 14.04.3 LTS (14.04) (sur /dev/sda13)
Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda15) : devient "Studio" 14.04.3 LTS (14.04) (sur /dev/sda15)
Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda16) : devient "a16-14.4.1" 14.04.3 LTS (14.04) (sur /dev/sda16)
Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda5)  : devient "a5-X14.04.3" 14.04.3 LTS (14.04) (sur /dev/sda5)
Ubuntu 12.04.5 LTS (12.04) (sur /dev/sda7)  : devient "a7-U12.04" 12.04.5 LTS (12.04) (sur /dev/sda7)
Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda9)  : devient "a9-K14.04" 14.04.3 LTS (14.04) (sur /dev/sda9)
Windows NT/2000/XP (sur /dev/sdc1)          :          inchangée
Options avancées pour Ubuntu 12.04.5 LTS (12.04) (sur /dev/sda11) : inchangée
Ubuntu, avec Linux 3.13.0-61-generic (sur /dev/sda12) (sur /dev/sda13) : supprimée

le menu grub de vient celui-ci , les redondances ne me gênent pas
je sais que L correspond à Lubuntu , que X = Xubuntu K = Kubuntu

"a12-U14-04"
Options avancées pour Ubuntu
Memory test (memtest86)
"a10-L14.04" 14.04.3 LTS (14.04) (sur /dev/sda10)'
Options avancées pour Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda10)
"a11-U12.04" 12.04.5 LTS (12.04) (sur /dev/sda11)
Options avancées pour Ubuntu 12.04.5 LTS (12.04) (sur /dev/sda11)
"a13-U14-04" 14.04.3 LTS (14.04) (sur /dev/sda13)
Options avancées pour Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda13)
"Studio" 14.04.3 LTS (14.04) (sur /dev/sda15)
Options avancées pour Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda15)
"a16-14.4.1" 14.04.3 LTS (14.04) (sur /dev/sda16)
Options avancées pour Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda16)
"a5-X14.04.3" 14.04.3 LTS (14.04) (sur /dev/sda5)
Options avancées pour Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda5)
"a7-U12.04" 12.04.5 LTS (12.04) (sur /dev/sda7)
Options avancées pour Ubuntu 12.04.5 LTS (12.04) (sur /dev/sda7)
"a9-K14.04" 14.04.3 LTS (14.04) (sur /dev/sda9)
Options avancées pour Ubuntu 14.04.3 LTS (14.04) (sur /dev/sda9)
Windows NT/2000/XP (sur /dev/sdc1)
etc

le code du bash est nettement pas terrible mais il fonctionne très bien sur ma machine ,

mettre le bash dans son répertoire personnel , le rendre exécutable et le lancer
il génère deux fichiers
grub-OK-aaa:mm:jj-hh:mm-ss.txt qui devra être mis à la place du grub original! et un fichier
grub-sup-aaa:mm:jj-hh:mm-ss.txt qui contient les lignes supprimées

il ne reste plus qu'à remplacer grub.cfg par le fichier grub-OK

cependant
condition ultra nécessaire : savoir revenir en arrière si la machine ne boote plus correctement !!

Dernière modification par ar barzh paour (Le 23/07/2016, à 15:42)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#2 Le 14/02/2016, à 11:43

ar barzh paour

Re : [Résolu] personnalisation de grub

à vos risques et périls le code du bash permettant de faire ce qui est décrit dans le post 1

ce bash a été mis à jour , il existe une version 4 ici
https://forum.ubuntu-fr.org/viewtopic.php?id=2004576

#!/bin/bash
# principe : grub contenant des lignes de menus inutiles? je les supprime
# si dans la lignes menuentry il y a ....../dev/sd...../dev/sd...........
# je supprime jusqu'à rencontrer une ligne constituée du seul caractère } 


function transforme-ligne { # modifie la première ligne du menu conservé
n=-1
while [[ $n -lt $maxuuid ]]
	do
	((n++))
	res=`grep ${uuid[$n]} <<< $1`
	if [[ -n $res ]] 
		then
		if [[ -n ${label[$n]} ]]
			then
			#menu[0]=`sed "s/Ubuntu/${label[$n]}/" <<< ${menu[0]}`
                         menu[0]=`sed "s/menuentry 'Ubuntu/menuentry '${label[$n]}/" <<< ${menu[0]}`
		fi
		return
	fi 
done 
}


function lire_menuentry { #met en mémoire jusqu'à rencontrer un } seul sur la ligne
i=0
menu[$i]="$ligne"
	while : 
	do
		read ligne
		((i++))
		((nb_lignes_lues++))	
		menu[$i]="$ligne"
		tmp=`sed 's/[[:blank:]]//g' <<<"$ligne"` # supprime les blancs de la ligne
	if [[ "$tmp" = "}" ]]   ###### ne fonctionnera donc correctement que si on a un grub bien formaté ######
		then	
			return
	fi
	done
}

function sort_menu_0 {	# écrit dans le fichier de sauvegarde
	i=0
	transforme-ligne ${menu[0]}
	while :
	do	echo "${menu[$i]}" >> "$fich_sauv"
		((nb_lignes_cons++))
		((nb_lignes_menu_cons++))
		echo -e "c\c"	
		((i++))
		if [[ $i -ge ${#menu[*]} ]] #jusqu'au bout du tableau
			then
				break
		fi
	done

}
	
function sort_menu_1 {	# écrit dans le fichier de supression
	i=0
	while :
	do	#echo "i=$i"	
		echo "${menu[$i]}" >> "$fich_sup"
		((nb_lignes_sup++))
		echo -e "x\c"
		((i++))
		if [[ $i -ge ${#menu[*]} ]] #jusqu'au bout du tableau
			then
				break
		fi
	done

}

function trt_menu {
# critère de suppression : si la 1ère ligne du menu contient plus d'une fois .../dev/sd... renvoie 1 sinon 0 
tmp=${menu[0]}
tmp1=`sed 's/\/dev\/sd//' <<<"$tmp"`
tmp2=`sed 's/\/dev\/sd//' <<<"$tmp1"`
if [[ "$tmp1" = "$tmp2" ]]
	then
		return 0
	else
		return 1
fi
}

# début du programme ######################################""

# mettre les UUID et LABEL dans un tableau
sudo blkid > blkid-res.txt
maxuuid=-1
while read ligne
	do
	((maxuuid++))
	tableau=($ligne) # découper la ligne en champ 
	for champ in ${tableau[@]}
		do
			deb=` echo $champ |cut -c1-4`
			case $deb in
				LABE)	label[maxuuid]=${champ##*=}
					;;
				UUID)	uuid[maxuuid]=`sed 's/"//g' <<< ${champ##*=}`
					;;
			esac
	done
done <blkid-res.txt
##################################################

# Quel fichier grub traiter ? ####################
titre="$0 Sélectionnez le fichier GRUB à traiter"
fich_source=`zenity --file-selection --filename="$rep_rech" --title="$titre"`
#fich_source="g2.txt"

#traitement de cette sélection ###########################
case $? in	#$? est le code de retour de zenity
        1)	echo "Aucun fichier sélectionné."	
		read g
		exit 1
		;;
       -1)	echo "Une erreur inattendue est survenue."
		read g
		exit 1
		;;	
        0)
		;;
	*)	echo "erreur non reconnue"
		read g
		exit 1
		;;	
esac

#########################################################
num=`date +%Y:%m:%d`-`date +%H:%M:%S`
fich_sauv=grub-OK-$num.txt
fich_sup=grub-sup-$num.txt
##### pour les stat #####################################
nb_menu_cons=0
nb_menu_sup=0
nb_lignes_sup=0
nb_lignes_cons=0
nb_lignes_lues=0
nb_lignes_hors_menu=0
nb_lignes_menus_cons=0

#### lexture et traitement du fichier GRUB ################################################
IFS="~"
while read ligne
do 
res=`echo $ligne| grep "menuentry "`
((nb_lignes_lues++))
if  [[ -z $res ]]
	then # si la ligne ne contient pas menuentry on écrit dans le fichier de sauvegarde
		echo "$ligne" >> $fich_sauv
		((nb_lignes_cons++))
		((nb_lignes_hors_menu++))
		echo -e ".\c"
	else 
		lire_menuentry	#on lit ce qu'il y a dans le menu
		if trt_menu	# et si ça convient on l'écrit dans le fichier de sauvegarde 
			then
				sort_menu_0
				((nb_menu_cons++))
			else
				sort_menu_1
				((nb_menu_sup++))
		fi	
		unset menu
fi
done < "$fich_source"

echo
echo "le fichier $fich_source a été traité"
echo "le résultat se trouve dans    : $fich_sauv"
echo
echo "nombre de menus conservés     : $nb_menu_cons"
echo "nombre de menus supprimés     : $nb_menu_sup"
echo "fichier des lignes supprimées : $fich_sup"
echo
echo "nombre de lignes lues         : $nb_lignes_lues"
echo "lignes conservées             : $nb_lignes_cons"
echo "lignes supprimées             : $nb_lignes_sup"
echo
echo "nombre de lignes menu cons.   : $nb_lignes_menu_cons"
echo "lignes conservées (hors menu) : $nb_lignes_hors_menu"

echo "après avoir vérifier manuellement ce fichier vous pouvez remplacer GRUB par celui-ci"
read g

exit 0

Dernière modification par ar barzh paour (Le 10/02/2017, à 20:58)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#3 Le 14/02/2016, à 12:01

Babdu89

Re : [Résolu] personnalisation de grub

Bonjour.

cependant
condition ultra nécessaire :
savoir revenir en arrière si la machine ne boote plus correctement !!

Cette partie là du sujet m'intéresse.
Abonnement.

@+.  Babdu89  .


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#4 Le 14/02/2016, à 17:10

Babdu89

Re : [Résolu] personnalisation de grub

Le script du post#2.
Je ne sais pas si il va marcher de la même manière avec les versions de Grub v1.98/99 et v2.0 ...

Avec un multi boot, on peut avoir comme Os par défaut au démarrage (l'Os que l'on choisi pour démarrer la machine)  différentes versions ( 10.04, 12.04, 14.04)  Dont le démarrage  est géré par différentes versions de Grub. ( grub v1.98/99 et v2.0 ... Sans parlé de certains Os Linux qui utilisent encore la version de Grub_ Legacy; v0.97 .)

Le fichier de configuration de Grub, dont dépend le contenu du menu Grub affiché...  /boot/grub/grub.cfg est généré, soit par la maj de Grub ou la réinstallation de Grub.
Certains des scripts de configurations de Grub, on pour mission, de rechercher les autres Os dans une configuration multi boot. (voir plus bas).
Pour chaque Os.
Concernant l'entrée  du mode "normal"  (pas le mode recovery, on verra plus tard) .
Le contenu du fichier "grub.cfg"  pour chaque entrée suivant la version de Grub, utilisée par l'Os par défaut, pour démarrer la machine, n'est pas fait de la même façon.

On ne va parler pour le moment que des entrées pour les autres Os qui sont dans la config, autres que l'Os par défaut au démarrage.
Puisque c'est la modification de ce contenu que vise à faire le ,script du post#2. Si j'ai bien compris. Ce que l'on retrouve dans les sections;

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

Les scripts de configuration de Grub qui recherchent les autres Os installé dans la config.
30_os-prober  ou     30_uefi-firmware


Exemple; avec un Os dont le Grub est la version v1.98/99 (Hybryde fusion 12.04 est basée sur Ubuntu12.04. On retrouve la même organisation du contenu avec Ubuntu12.04.).

La première ligne du menu Grub dans "30_Os-prober" correspond à ce contenu, dans le fichier  "grub.cfg" .

menuentry "HYBRYDE FUSION 12.04_PART11, avec Linux 3.13.0-77-generic (on /dev/sda11)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos11)'
	search --no-floppy --fs-uuid --set=root aec00812-bb57-4bbe-a5ed-90228e770e48
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=aec00812-bb57-4bbe-a5ed-90228e770e48 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-77-generic
}

Pour la première ligne pour les Os en 14.04, dont le Grub est la version v2.0. Dans le fichier grub.cfg, çà correspond à ce contenu.
2exemples.

menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos10)'
	search --no-floppy --fs-uuid --set=root 7e6348e9-857c-428c-96a9-dd95061bff00
	linux /boot/vmlinuz-3.16.0-60-generic root=UUID=7e6348e9-857c-428c-96a9-dd95061bff00 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.16.0-60-generic
}
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, avec Linux 3.16.0-60-generic' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-60-generic-advanced-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos10)'
	search --no-floppy --fs-uuid --set=root 7e6348e9-857c-428c-96a9-dd95061bff00
	linux /boot/vmlinuz-3.16.0-60-generic root=UUID=7e6348e9-857c-428c-96a9-dd95061bff00 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.16.0-60-generic
}
menuentry "Xubuntu-14.04_PART7 GNU/Linux' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set=root 6fd75613-d34d-42f4-ab75-63a5af45d0d3
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=6fd75613-d34d-42f4-ab75-63a5af45d0d3 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "Xubuntu-14.04_PART7 GNU/Linux, avec Linux 3.13.0-77-generic' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-advanced-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set=root 6fd75613-d34d-42f4-ab75-63a5af45d0d3
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=6fd75613-d34d-42f4-ab75-63a5af45d0d3 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-77-generic
}

Pour les entrées du mode "recovery" , on a pour les Os en 10.04,12.04,14.04 ceci.

menuentry "HYBRYDE FUSION 12.04_PART11, with Linux 3.13.0-77-generic (recovery mode) (on /dev/sda11)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos11)'
	search --no-floppy --fs-uuid --set=root aec00812-bb57-4bbe-a5ed-90228e770e48
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=aec00812-bb57-4bbe-a5ed-90228e770e48 ro recovery nomodeset
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, with Linux 3.16.0-60-generic (recovery mode)' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-60-generic-recovery-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos10)'
	search --no-floppy --fs-uuid --set=root 7e6348e9-857c-428c-96a9-dd95061bff00
	linux /boot/vmlinuz-3.16.0-60-generic root=UUID=7e6348e9-857c-428c-96a9-dd95061bff00 ro recovery nomodeset
	initrd /boot/initrd.img-3.16.0-60-generic
}
menuentry "Xubuntu-14.04_PART7 GNU/Linux, with Linux 3.13.0-77-generic (recovery mode)' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-recovery-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set=root 6fd75613-d34d-42f4-ab75-63a5af45d0d3
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=6fd75613-d34d-42f4-ab75-63a5af45d0d3 ro recovery nomodeset
	initrd /boot/initrd.img-3.13.0-77-generic
}

Dans ces conditions.
Je me pose la question de savoir si le script du post#2 est utilisable avec un Os en 10.04, 12.04 et 14.04 ??.
Puisque l'on voit que le contenu des fichiers grub.cfg est constitué différemment avec les différentes versions de grub.

Le script prend il en compte ce que je fais remarqué?.

@+.  Babdu89  .


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#5 Le 14/02/2016, à 18:08

ar barzh paour

Re : [Résolu] personnalisation de grub

le script que j'ai écrit est fait pour ma machine , j'ai étudié le grub et j'ai regardé comment le simplifier
son principe est le suivant :
1-
toute ligne ne contenant pas par menuentry est conservée
2-
si une ligne contient menuentry , je mets en mémoire toutes les lignes suivantes jusqu'à rencontrer un } seul sur la ligne : il y a deux cas
3- analyse de la ligne contenant menuentry :
mon critère est le suivant : s'il y a deux fois /dev/sd dans cette ligne , ces lignes ne seront pas conservées sinon elles sont conservées
4- en plus j'essaie de modifier le mot Ubuntu par le LABEL tiré de blkid

dans les exemples que tu me cites aucun menu ne sera supprimé et je vais voir ce que deviennent les termes
menuentry "Xubuntu
menuentry "UBUNTU-MATE
menuentry "Xubuntu-14.04

je confirme : aucune des lignes que tu cites ne seront modifiées
il faudrait quand même que j'affine le critère de remplacement que j'utilise
(remplacer Ubuntu par label) fonctionne chez moi mais il y a peut-être dans certains cas risque de remplacement de la chaîne Ubuntu au mauvais endroit de la ligne
la ligne du code à modifier  est celle-ci :

menu[0]=`sed "s/Ubuntu/${label[$n]}/" <<< ${menu[0]}`

Dernière modification par ar barzh paour (Le 14/02/2016, à 18:42)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#6 Le 14/02/2016, à 18:10

Babdu89

Re : [Résolu] personnalisation de grub

Post#1 on lit;

marre d'un grub à rallonge et pas très parlant quand on a plusieurs OS

Oui, et çà , c'est intervenu avec la version de Grub v2.0 et suivantes...

Et le souci n'est pas très facile à comprendre et a gérer avec les configurations multi boot...

Si on a par exemples 4 Os 14.04 avec un grub en v2.0 installés. Que les Grub de ces Os ont été mis à jour. os-prober fait son travail, il cherche et porte dans les fichiers grub.cfg , les autres Os de la config.
Ce pour chaque version du noyau installé dans chaque Os.

Dans les fichiers  grub.cfg de chaque Os, on va retrouver ceci pour chaque version de noyau installées.

Rappelle une entrée dans le fichier grub.cfg, correspond à une ligne dans le menu Grub.

Pour une version du noyau;
Une entrée pour le mode normale de l'Os (voir ci-dessus pour les 14.04). (même partition même UUID)
Une entrée pour le mode recovery (même partition même UUID)
Pour une autre version du noyau;
Une entrée pour le mode normale de l'Os (voir ci-dessus pour les 14.04). (même partition même UUID)
Une entrée pour le mode recovery (même partition même UUID)
Pour une autre version du noyau;
Une entrée pour le mode normale de l'Os (voir ci-dessus pour les 14.04). (même partition même UUID)
Une entrée pour le mode recovery (même partition même UUID)

&&& autant de foi qu'il y a de noyau dans l'Os.

Alors ceci se fait pour chaque Os en 14.04.
Mais os-prober (c'est lui que je soupçonne) fait tellement bien son travail avec grub v2.0. Qu'il va reporter les même entrées dans tous les fichiers grub.cfg de tous les Os en 14.04. En changeant les UUID des partitions pour ceux des autres Os en 14.04 de la config .
On se retrouve avec des menus Grub à rallonge... Sans parlé des fichiers grub.cfg qui s'allongent, qui s'allongent...

J'avais déjà ouvert un fil à ce sujet ici;

https://forum.ubuntu-fr.org/viewtopic.php?id=1565711



Je règle ce problème d'une certaine manière chez moi.

Je décoche l'option  "Autoriser l'exécution du fichier comme un programme"  dans les permissions des fichiers /etc/grub.d/30_os-prober , de tous les autres Os que l'Os qui fait démarrer par défaut ma machine... . Et je fais une mise à jour immédiatement de leur grub.
Çà empêche os-prober de faire son travail. Il ne reporte plus les autres Os dans les fichiers grub.cfg.
Il ne le fera que dans l'Os qui démarre la machine par défaut. Car la seulement il est autorisé à le faire.
Il n'y a plus de répétitions des entrées à rallonges dans les fichiers grub.cfg des Os.

Voila le contenu du menu grub de l'Os par défaut qui fait démarrer la machine que J'utilise actuellement.

bernard@bernard-System-Product-Name:~$ grep menuentry /media/bernard/copy-fu-12-sys-m/boot/grub/grub.cfg

menuentry 'HYBRYDE FUSION 12.04_COPY_PART12, avec Linux 3.13.0-77-generic' --class hybryde --class gnu-linux --class gnu --class os {
menuentry 'HYBRYDE FUSION 12.04_COPY_PART12, with Linux 3.13.0-77-generic (recovery mode)' --class hybryde --class gnu-linux --class gnu --class os {
menuentry 'HYBRYDE FUSION 12.04_COPY_PART12, avec Linux 3.13.0-76-generic' --class hybryde --class gnu-linux --class gnu --class os {
menuentry 'HYBRYDE FUSION 12.04_COPY_PART12, with Linux 3.13.0-76-generic (recovery mode)' --class hybryde --class gnu-linux --class gnu --class os {
menuentry "Memory test (memtest86+)" {
menuentry "Memory test (memtest86+, serial console 115200)" {
menuentry "Start GRUB4DOS TESTER LINUX (on /dev/sda1)" --class windows --class os {
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, avec Linux 3.16.0-60-generic' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-60-generic-advanced-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, with Linux 3.16.0-60-generic (recovery mode)' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-60-generic-recovery-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, avec Linux 3.16.0-59-generic' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-59-generic-advanced-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, with Linux 3.16.0-59-generic (recovery mode)' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-59-generic-recovery-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 12.04_PART11, avec Linux 3.13.0-77-generic (on /dev/sda11)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 12.04_PART11, with Linux 3.13.0-77-generic (recovery mode) (on /dev/sda11)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 12.04_PART11, avec Linux 3.13.0-76-generic (on /dev/sda11)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 12.04_PART11, with Linux 3.13.0-76-generic (recovery mode) (on /dev/sda11)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux, avec Linux 3.13.0-77-generic' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-advanced-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux, with Linux 3.13.0-77-generic (recovery mode)' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-recovery-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux, avec Linux 3.13.0-76-generic' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-76-generic-advanced-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux, with Linux 3.13.0-76-generic (recovery mode)' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-76-generic-recovery-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
menuentry "Xubuntu-14.04_PART7 GNU/Linux' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
menuentry "Xubuntu-14.04_PART7 GNU/Linux, avec Linux 3.13.0-77-generic' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-advanced-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
menuentry "Xubuntu-14.04_PART7 GNU/Linux, with Linux 3.13.0-77-generic (recovery mode)' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-recovery-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
menuentry "Xubuntu-14.04_PART7 GNU/Linux, avec Linux 3.13.0-76-generic' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-76-generic-advanced-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
menuentry "Xubuntu-14.04_PART7 GNU/Linux, with Linux 3.13.0-76-generic (recovery mode)' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-76-generic-recovery-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
menuentry "Plop Boot Manager" {
menuentry "clé Usb-live ou CD-ROM"  {
#menuentry "Ubuntu-15.04-test Donnees sata1" {
menuentry "Iso Live ubuntu-15.10-desktop-i386.iso test encours-stockage iso dans s3fusion-12-sys" {
menuentry "Iso Live ubuntu-14.04.1-desktop-i386.iso test encours-stockage iso dans s3fusion-12-sys" {
#menuentry "clé Usb-live ou CD-ROM"  {
menuentry "clé Usb-live MULTISYSTEM"  {
menuentry "clés Usb-live cle-tests-windows et copy-cle-test-Win "  {
#menuentry "Hybryde Fusion 14.04. donnees sata1" {
#menuentry "Hybryde Fusion 14.04. donnees sata1 extract test" {
#menuentry "Try Hybryde Fusion Custom V3 without installing-Laërte" {
#menuentry "Hybryde Fusion 14.04." {
menuentry "Slitaz-5.0-rc3" {
#menuentry "Bodhi Linux" {
#menuentry "Hybryde Fusion 14.04." {
#menuentry "ToutouLinux-436_2015-04-30.iso-sur-Maxtor" {

bernard@bernard-System-Product-Name:~$ 

Le contenu du fichier  grub.cfg de ce même Os

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  set have_grubenv=true
  load_env
fi
set default="${saved_entry}"
if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function recordfail {
  set recordfail=1
  if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod part_msdos
insmod ext2
set root='(hd0,msdos12)'
search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  insmod part_msdos
  insmod ext2
  set root='(hd0,msdos12)'
  search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
  set locale_dir=($root)/boot/grub/locale
  set lang=fr_FR
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
  set timeout=30
else
  set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod ext2
set root='(hd0,msdos12)'
search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
insmod png
if background_image /usr/share/images/desktop-base/desktop-grub.png; then
  set color_normal=light-gray/black
  set color_highlight=white/black
else
  set menu_color_normal=white/black
  set menu_color_highlight=black/light-gray
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
	set gfxpayload="${1}"
	if [ "${1}" = "keep" ]; then
		set vt_handoff=vt.handoff=7
	else
		set vt_handoff=
	fi
}
if [ "${recordfail}" != 1 ]; then
  if [ -e ${prefix}/gfxblacklist.txt ]; then
    if hwmatch ${prefix}/gfxblacklist.txt 3; then
      if [ ${match} = 0 ]; then
        set linux_gfx_mode=keep
      else
        set linux_gfx_mode=text
      fi
    else
      set linux_gfx_mode=text
    fi
  else
    set linux_gfx_mode=keep
  fi
else
  set linux_gfx_mode=text
fi
export linux_gfx_mode
if [ "${linux_gfx_mode}" != "text" ]; then load_video; fi
menuentry 'HYBRYDE FUSION 12.04_COPY_PART12, avec Linux 3.13.0-77-generic' --class hybryde --class gnu-linux --class gnu --class os {
	recordfail
	savedefault
	gfxmode $linux_gfx_mode
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos12)'
	search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
	linux	/boot/vmlinuz-3.13.0-77-generic root=UUID=ba16ec2c-603c-48a6-aebf-8f01079bfa7a ro   quiet splash $vt_handoff
	initrd	/boot/initrd.img-3.13.0-77-generic
}
menuentry 'HYBRYDE FUSION 12.04_COPY_PART12, with Linux 3.13.0-77-generic (recovery mode)' --class hybryde --class gnu-linux --class gnu --class os {
	recordfail
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos12)'
	search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
	echo	'Chargement de Linux 3.13.0-77-generic ...'
	linux	/boot/vmlinuz-3.13.0-77-generic root=UUID=ba16ec2c-603c-48a6-aebf-8f01079bfa7a ro recovery nomodeset 
	echo	'Chargement du disque mémoire initial ...'
	initrd	/boot/initrd.img-3.13.0-77-generic
}
submenu "Previous Linux versions" {
menuentry 'HYBRYDE FUSION 12.04_COPY_PART12, avec Linux 3.13.0-76-generic' --class hybryde --class gnu-linux --class gnu --class os {
	recordfail
	savedefault
	gfxmode $linux_gfx_mode
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos12)'
	search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
	linux	/boot/vmlinuz-3.13.0-76-generic root=UUID=ba16ec2c-603c-48a6-aebf-8f01079bfa7a ro   quiet splash $vt_handoff
	initrd	/boot/initrd.img-3.13.0-76-generic
}
menuentry 'HYBRYDE FUSION 12.04_COPY_PART12, with Linux 3.13.0-76-generic (recovery mode)' --class hybryde --class gnu-linux --class gnu --class os {
	recordfail
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos12)'
	search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
	echo	'Chargement de Linux 3.13.0-76-generic ...'
	linux	/boot/vmlinuz-3.13.0-76-generic root=UUID=ba16ec2c-603c-48a6-aebf-8f01079bfa7a ro recovery nomodeset 
	echo	'Chargement du disque mémoire initial ...'
	initrd	/boot/initrd.img-3.13.0-76-generic
}
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos12)'
	search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
	linux16	/boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos12)'
	search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
	linux16	/boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Start GRUB4DOS TESTER LINUX (on /dev/sda1)" --class windows --class os {
	savedefault
	insmod part_msdos
	insmod ntfs
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root E664A19764A16ACF
	drivemap -s (hd0) ${root}
	chainloader +1
}
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos10)'
	search --no-floppy --fs-uuid --set=root 7e6348e9-857c-428c-96a9-dd95061bff00
	linux /boot/vmlinuz-3.16.0-60-generic root=UUID=7e6348e9-857c-428c-96a9-dd95061bff00 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.16.0-60-generic
}
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, avec Linux 3.16.0-60-generic' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-60-generic-advanced-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos10)'
	search --no-floppy --fs-uuid --set=root 7e6348e9-857c-428c-96a9-dd95061bff00
	linux /boot/vmlinuz-3.16.0-60-generic root=UUID=7e6348e9-857c-428c-96a9-dd95061bff00 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.16.0-60-generic
}
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, with Linux 3.16.0-60-generic (recovery mode)' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-60-generic-recovery-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos10)'
	search --no-floppy --fs-uuid --set=root 7e6348e9-857c-428c-96a9-dd95061bff00
	linux /boot/vmlinuz-3.16.0-60-generic root=UUID=7e6348e9-857c-428c-96a9-dd95061bff00 ro recovery nomodeset
	initrd /boot/initrd.img-3.16.0-60-generic
}
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, avec Linux 3.16.0-59-generic' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-59-generic-advanced-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos10)'
	search --no-floppy --fs-uuid --set=root 7e6348e9-857c-428c-96a9-dd95061bff00
	linux /boot/vmlinuz-3.16.0-59-generic root=UUID=7e6348e9-857c-428c-96a9-dd95061bff00 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.16.0-59-generic
}
menuentry "UBUNTU-MATE 14.04_Partition10 GNU/Linux, with Linux 3.16.0-59-generic (recovery mode)' --class ubuntu_mate --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-59-generic-recovery-7e6348e9-857c-428c-96a9-dd95061bff00 (on /dev/sda10)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos10)'
	search --no-floppy --fs-uuid --set=root 7e6348e9-857c-428c-96a9-dd95061bff00
	linux /boot/vmlinuz-3.16.0-59-generic root=UUID=7e6348e9-857c-428c-96a9-dd95061bff00 ro recovery nomodeset
	initrd /boot/initrd.img-3.16.0-59-generic
}
menuentry "HYBRYDE FUSION 12.04_PART11, avec Linux 3.13.0-77-generic (on /dev/sda11)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos11)'
	search --no-floppy --fs-uuid --set=root aec00812-bb57-4bbe-a5ed-90228e770e48
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=aec00812-bb57-4bbe-a5ed-90228e770e48 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "HYBRYDE FUSION 12.04_PART11, with Linux 3.13.0-77-generic (recovery mode) (on /dev/sda11)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos11)'
	search --no-floppy --fs-uuid --set=root aec00812-bb57-4bbe-a5ed-90228e770e48
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=aec00812-bb57-4bbe-a5ed-90228e770e48 ro recovery nomodeset
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "HYBRYDE FUSION 12.04_PART11, avec Linux 3.13.0-76-generic (on /dev/sda11)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos11)'
	search --no-floppy --fs-uuid --set=root aec00812-bb57-4bbe-a5ed-90228e770e48
	linux /boot/vmlinuz-3.13.0-76-generic root=UUID=aec00812-bb57-4bbe-a5ed-90228e770e48 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-76-generic
}
menuentry "HYBRYDE FUSION 12.04_PART11, with Linux 3.13.0-76-generic (recovery mode) (on /dev/sda11)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos11)'
	search --no-floppy --fs-uuid --set=root aec00812-bb57-4bbe-a5ed-90228e770e48
	linux /boot/vmlinuz-3.13.0-76-generic root=UUID=aec00812-bb57-4bbe-a5ed-90228e770e48 ro recovery nomodeset
	initrd /boot/initrd.img-3.13.0-76-generic
}
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos13)'
	search --no-floppy --fs-uuid --set=root 63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux, avec Linux 3.13.0-77-generic' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-advanced-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos13)'
	search --no-floppy --fs-uuid --set=root 63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux, with Linux 3.13.0-77-generic (recovery mode)' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-recovery-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos13)'
	search --no-floppy --fs-uuid --set=root 63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa ro recovery nomodeset
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux, avec Linux 3.13.0-76-generic' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-76-generic-advanced-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos13)'
	search --no-floppy --fs-uuid --set=root 63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa
	linux /boot/vmlinuz-3.13.0-76-generic root=UUID=63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-76-generic
}
menuentry "HYBRYDE FUSION 14.04_PART13 GNU/Linux, with Linux 3.13.0-76-generic (recovery mode)' --class hybryde --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-76-generic-recovery-63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa (on /dev/sda13)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos13)'
	search --no-floppy --fs-uuid --set=root 63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa
	linux /boot/vmlinuz-3.13.0-76-generic root=UUID=63fc1e6f-37b7-4ba4-9d2a-2eb758a30daa ro recovery nomodeset
	initrd /boot/initrd.img-3.13.0-76-generic
}
menuentry "Xubuntu-14.04_PART7 GNU/Linux' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set=root 6fd75613-d34d-42f4-ab75-63a5af45d0d3
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=6fd75613-d34d-42f4-ab75-63a5af45d0d3 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "Xubuntu-14.04_PART7 GNU/Linux, avec Linux 3.13.0-77-generic' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-advanced-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set=root 6fd75613-d34d-42f4-ab75-63a5af45d0d3
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=6fd75613-d34d-42f4-ab75-63a5af45d0d3 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "Xubuntu-14.04_PART7 GNU/Linux, with Linux 3.13.0-77-generic (recovery mode)' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-77-generic-recovery-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set=root 6fd75613-d34d-42f4-ab75-63a5af45d0d3
	linux /boot/vmlinuz-3.13.0-77-generic root=UUID=6fd75613-d34d-42f4-ab75-63a5af45d0d3 ro recovery nomodeset
	initrd /boot/initrd.img-3.13.0-77-generic
}
menuentry "Xubuntu-14.04_PART7 GNU/Linux, avec Linux 3.13.0-76-generic' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-76-generic-advanced-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set=root 6fd75613-d34d-42f4-ab75-63a5af45d0d3
	linux /boot/vmlinuz-3.13.0-76-generic root=UUID=6fd75613-d34d-42f4-ab75-63a5af45d0d3 ro quiet splash $vt_handoff
	initrd /boot/initrd.img-3.13.0-76-generic
}
menuentry "Xubuntu-14.04_PART7 GNU/Linux, with Linux 3.13.0-76-generic (recovery mode)' --class xubuntu_14_04_part7 --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-76-generic-recovery-6fd75613-d34d-42f4-ab75-63a5af45d0d3 (on /dev/sda7)" --class gnu-linux --class gnu --class os {
	savedefault
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set=root 6fd75613-d34d-42f4-ab75-63a5af45d0d3
	linux /boot/vmlinuz-3.13.0-76-generic root=UUID=6fd75613-d34d-42f4-ab75-63a5af45d0d3 ro recovery nomodeset
	initrd /boot/initrd.img-3.13.0-76-generic
}
set timeout_style=menu
if [ "${timeout}" = 0 ]; then
  set timeout=10
fi
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
menuentry "Plop Boot Manager" {
set root='(hd0,12)'
linux16 /plpbt.bin
}
menuentry "clé Usb-live ou CD-ROM"  {
	insmod part_msdos
	insmod vfat
	search --no-floppy --fs-uuid --set=root xxxx-xxxx
	chainloader +1
}
#menuentry "Ubuntu-15.04-test Donnees sata1" {
#insmod part_msdos
#insmod ntfs
#search --no-floppy --fs-uuid --set=root 07BCAE8F3189725B
#set isofile="/ISO_LINUX/Ubuntu_15.04/ubuntu-15.04-desktop-i386.iso"
#loopback loop $isofile
#echo	'Chargement du noyau Linux ...'
#linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile locale=fr_FR bootkbd=fr console-setup/layoutcode=fr noprompt noeject quiet splash #--
#echo	'Chargement du disque mémoire initial ...'
#initrd (loop)/casper/initrd.lz
#}
menuentry "Iso Live ubuntu-15.10-desktop-i386.iso test encours-stockage iso dans s3fusion-12-sys" {
	insmod part_msdos
	insmod iso9660
        #recherche de la partition dans laquelle se trouve le fichier ISO et montage de celle ci dans "/"
        search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
	set isofile="/ubuntu-15.10-desktop-i386.iso"
	loopback loop $isofile
	echo	'Chargement du noyau Linux ...'
	linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile locale=fr_FR bootkbd=fr console-setup/layoutcode=fr noprompt noeject quiet splash --
	echo	'Chargement du disque mémoire initial ...'
	initrd (loop)/casper/initrd.lz
}
menuentry "Iso Live ubuntu-14.04.1-desktop-i386.iso test encours-stockage iso dans s3fusion-12-sys" {
	insmod part_msdos
	insmod iso9660
        #recherche de la partition dans laquelle se trouve le fichier ISO et montage de celle ci dans "/"
        search --no-floppy --fs-uuid --set=root ba16ec2c-603c-48a6-aebf-8f01079bfa7a
	set isofile="/ubuntu-14.04.1-desktop-i386.iso"
	loopback loop $isofile
	echo	'Chargement du noyau Linux ...'
	linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile locale=fr_FR bootkbd=fr console-setup/layoutcode=fr noprompt noeject quiet splash --
	echo	'Chargement du disque mémoire initial ...'
	initrd (loop)/casper/initrd.lz
}
#ou bien:
#menuentry "clé Usb-live ou CD-ROM"  {
#	insmod part_msdos
#	insmod vfat
#	search --no-floppy --fs-uuid --set=root xxxx-xxxx
# ou : search --no-floppy --set=root -l <étiquette de la clé ou du CD>
#	chainloader +1
# ou, peut-être, de manière plus générale, mais là c'est à tester au cas par cas, chainloader +n
# cet ordre veut dire de chainer sur l'amorce contenue dans le 1er ou les n premiers secteurs de la partition cible ($root)
#}
menuentry "clé Usb-live MULTISYSTEM"  {
	insmod part_msdos
	insmod vfat
        search --no-floppy --set=root -l multisystem
        search --no-floppy --set=root -l MULTISYSTEM
        chainloader +1
}
menuentry "clés Usb-live cle-tests-windows et copy-cle-test-Win "  {
	insmod part_msdos
	insmod ntfs
        search --no-floppy --set=root -l copy-cle-test-Win
        search --no-floppy --set=root -l cle-tests-windows
	drivemap -s (hd0) ${root}
	chainloader +1
}
#menuentry "Hybryde Fusion 14.04. donnees sata1" {
#insmod part_msdos
#insmod ntfs
#search --no-floppy --fs-uuid --set=root 07BCAE8F3189725B
#set isofile="/ISO_LINUX/remastersys-iso/Hybryde_Fusion_14.04_custom_V3-kernel-3.13.0-48-backup.iso"
#loopback loop $isofile
#echo	'Chargement du noyau Linux ...'
#linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile locale=fr_FR bootkbd=fr console-setup/layoutcode=fr noprompt noeject quiet splash --
#echo	'Chargement du disque mémoire initial ...'
#initrd (loop)/casper/initrd.gz .lz .img
#}
#menuentry "Hybryde Fusion 14.04. donnees sata1 extract test" {
#insmod part_msdos
#insmod ntfs
#search --no-floppy --fs-uuid --set=root 07BCAE8F3189725B
#set isofile="/Hybryde_Fusion_14.04_custom_V3-kernel-3.13.0-54-backup.iso"
#linux  /ISO_LINUX/remastersys-iso/extract/casper/vmlinuz locale=fr_FR bootkbd=fr console-setup/layoutcode=fr console-setup/variantcode=oss file=/cdrom/#preseed/custom.seed boot=casper iso-scan/filename=/Hybryde_Fusion_14.04_custom_V3-kernel-3.13.0-54-backup.iso toram=filesystem.squashfs quiet splash #-- 
#initrd  /ISO_LINUX/remastersys-iso/extract/casper/initrd.gz
#} 
#menuentry "Try Hybryde Fusion Custom V3 without installing-Laërte" {
#        insmod part_msdos
#        insmod ntfs
#       search --no-floppy --fs-uuid --set=root 07BCAE8F3189725B
#	linux	/ISO_LINUX/remastersys-iso/extract/casper/vmlinuz  file=/cdrom/preseed/custom.seed live-media-path=/casper boot=casper iso-scan/#filename=${iso_path} showmounts ignore_uuid noprompt quiet splash -- 
#	initrd	/ISO_LINUX/remastersys-iso/extract/casper/initrd.gz
#}
#menuentry "Hybryde Fusion 14.04." {
#search --no-floppy --fs-uuid --set 411c516f-cdac-4a0a-b2d7-d05c9d9a38f8
#set isofile="/Hybryde_Fusion_14.04_custom_V3-kernel-3.13.0-45backup.iso"
#loopback loop $isofile
#linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile locale=fr_FR bootkbd=fr console-setup/layoutcode=fr noprompt noeject quiet splash --
#initrd (loop)/casper/initrd.gz
#}
menuentry "Slitaz-5.0-rc3" {
insmod loopback
insmod iso9660
set isofile="/slitaz-5.0-rc3.iso"
search --set -f $isofile
loopback loop $isofile
linux (loop)/boot/vmlinuz-3.2.53-slitaz kmap=fr-latin1
initrd (loop)/boot/rootfs.gz
}
#menuentry "Bodhi Linux" {
#insmod part_msdos
#insmod ntfs
#search --no-floppy --fs-uuid --set=root B664A19764A16ABF
#set isofile="/bodhi-2.4.0-nonpae-32.iso"
#linux  /bodhi/casper/vmlinuz locale=fr_FR bootkbd=fr console-setup/layoutcode=fr console-setup/variantcode=oss file=/cdrom/preseed/bodhi.seed #boot=casper iso-scan/filename=/bodhi-2.4.0-nonpae-32.iso toram=filesystem.squashfs quiet splash -- 
#initrd  /bodhi/casper/initrd.gz
#} 
#menuentry "Hybryde Fusion 14.04." {
#search --no-floppy --fs-uuid --set 411c516f-cdac-4a0a-b2d7-d05c9d9a38f8
#set isofile="/Hybryde_Fusion_14.04_custom_V3-kernel-3.13.0-45backup.iso"
#loopback loop $isofile
#linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile locale=fr_FR bootkbd=fr console-setup/layoutcode=fr noprompt noeject quiet splash --
#initrd (loop)/casper/initrd.gz
#}
#menuentry "ToutouLinux-436_2015-04-30.iso-sur-Maxtor" {
#insmod part_msdos
#insmod ntfs
#search --no-floppy --fs-uuid --set=root B664A19764A16ABF
#set isofile="/ToutouLinux-436_2015-04-30.iso"
#linux /toutou/vmlinuz psubdir=toutou pmedia=atahd
#initrd /toutou/initrd.gz
#}
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

Et si...

cependant
condition ultra nécessaire :
savoir revenir en arrière si la machine ne boote plus correctement !!

Au cas ou j'ai un souci avec le grub d'un Os ...
En session live.
Utilisation de Boot-Repair pour réinstaller grub dans cet Os, après avoir modifier à nouveau  l'option  "Autoriser l'exécution du fichier comme un programme" en autorisant cette foi-ci (coher), du fichier  /etc/grub.d/30_os-prober pour que os-prober puisse faire son travail à nouveau.

@+.  Babdu89  .


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#7 Le 14/02/2016, à 18:33

Babdu89

Re : [Résolu] personnalisation de grub

ar barzh paour a écrit :

le script que j'ai écrit est fait pour ma machine , j'ai étudié le grub et j'ai regardé comment le simplifier
son principe est le suivant :
1-
toute ligne ne contenant pas par menuentry est conservée
2-
si une ligne contient menuentry , je mets en mémoire toutes les lignes suivantes jusqu'à rencontrer un } seul sur la ligne : il y a deux cas
3- analyse de la ligne contenant menuentry :
mon critère est le suivant : s'il y a deux fois /dev/sd dans cette ligne , ces lignes ne seront pas conservées sinon elles sont conservées
4- en plus j'essaie de modifier le mot Ubuntu par le LABEL tiré de blkid

dans les exemples que tu me cites aucun menu ne sera supprimé et je vais voir ce que deviennent les termes
menuentry "Xubuntu
menuentry "UBUNTU-MATE
menuentry "Xubuntu-14.04

Oui, mais le problème, c'est que les maj de Grub (faites avec certaines maj du système) ou réinstallation de nouvelle version majeur de Grub. Les modifs faites par le script ne vont pas tenir le coup. Non?

Dans le cadre d'une Maj et réinstallation de Grub. Le système ne reconnaît que les fichiers de configurations de Grub.
Ton script sera reconnu comme tel?. Je ne pense pas.

Maj et réinstallation de Grub. Le système voit des modifs de fichiers de configurations de grub, autre que le fichier auto-généré  "grub.cfg"  (c'est ce que le script modifie , c'est comme si tu le faisais à la main.)
Il te demande si tu les conserves, ou si tu installes la nouvelle version du fichier...

Que va faire le système avec les modifs que génèrent ton script dans  grub.cfg,  dans ce cas. ?

C'est la raison pour laquelle je modifie les fichiers de configuration de grub, pour en modifier la nature.
Ce qui permet après maj de Grub de prendre en compte les modifications, ce pour l'avenir aussi...

Il n'y a qu'un seul cas ou les modifs seront perdues définitivement sans préavis, c'est lors d'une réinstallation de Grub avec purge de celui-ci. Là il installe Grub avec la configuration par défaut.

@+. Babdu89.


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#8 Le 14/02/2016, à 18:59

ar barzh paour

Re : [Résolu] personnalisation de grub

ton menu présenté est parfait donc il n'y a rien à tirer de mon bash

la modification que je fais est manuelle : si un grub est généré par mise à jour , il faut que je relance manuellement la modification

pour un retour arrière : avant de modifier quoique ce soit je sauvegarde le grub.cfg généré par le système et si problème je le restaure .


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#9 Le 14/02/2016, à 23:22

Babdu89

Re : [Résolu] personnalisation de grub

pour un retour arrière : avant de modifier quoique ce soit je sauvegarde le grub.cfg généré par le système et si problème je le restaure .

Tu as raison.
Oui, j'oubliais de le signaler, dans mes manips. Avant de désactiver 30_os-prober, je fais une maj de grub de chaque Os, et je fais aussi une copie de "grub.cfg" complet dans le répertoire /boot/grub . Après je refais une maj de Grub des Os avec 30_os-prober "désactivé".

Autre chose au sujet des versions de Grub.

Dans mon menu Grub. On peut voir que le premier Os (Os par défaut au démarrage de la machine") Hybryde 12.04 .
Donc j'utilise une version de Grub pour les 12.04 . grub v1.98/99 ...
L'explication se trouve dans le fait que cette version de Grub affiche les modifications du nom de tous les Os que je fais dans leur fichier  /etc/default/grub ...

exemple, je remplace

#GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

par;

GRUB_DISTRIBUTOR=`echo -n HYBRYDE FUSION 12.04_COPY_PART12`

Une maj de grub pour la prise en compte de la modif.

Pourquoi je ne le fait pas avec un Os en 14.04 version de grub v2.0 , pour démarrer la machine par défaut ???

Tout simplement par-ce-que le nom de l'Os ne s'affiche que sur la première ligne du menu Grub.
On ne voit les autres modifications du nom des Os que dans les lignes "Options avancées" pour chacun.

On aurait par exemple

Hybryde fusion 14.04  sur partition xxxx
Options avancées pour Ubuntu 14.04 sur partition xxxx.
Ubuntu 12.04.3 sur partition xxxx
Options avancées pour Ubuntu 12.04.3 sur partition xxx
Ubuntu 14.04 sur partition xxx
Options avancées pour ubuntu 14.04 sur partition xxx.
&&&

Donc çà ne s'affiche pas directement, il faut éditer ces lignes pour savoir à quoi on a affaire.
Pas pratique, donc je choisi de faire démarrer mes machines (et mes hdd usb) sur un Os en 12.04 pour avoir un grub  v1.98/99 et le menu Grub comme le montre grep menuentry  ...

@+.  Babdu89  .

Dernière modification par Babdu89 (Le 14/02/2016, à 23:53)


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#10 Le 15/02/2016, à 12:36

ar barzh paour

Re : [Résolu] personnalisation de grub

j'ai modifié la transformation de la première ligne du menuentry

			#menu[0]=`sed "s/Ubuntu/${label[$n]}/" <<< ${menu[0]}`
			menu[0]=`sed "s/menuentry 'Ubuntu/menuentry '${label[$n]}/" <<< ${menu[0]}`

PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne