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 02/08/2012, à 00:38

Maisondouf

grub 2.0

Pour des besoin de test de 'NumLock'  (voir http://forum.ubuntu-fr.org/viewtopic.php?id=668271), j'ai compilé la future version de Grub2.

La 2.0rc1 alors que Precise installe la 1.99...

Sur un vieux PC de test où il n'y a qu'un Lucid d'époque aussi, la compil et l'installation ont pris moins d'un quart d'heure et le résultat est bluffant.
Le menu n'a que deux lignes car Lucid est seul sur le disque et L'intérieur du menu est très différent de la version 1.99.

GNU Linux
Options avancées pour GNU Linux

912fefb31ce6cbadf5de7bf1df389t.jpg 261367dbe06ac9d0ce017628251dat.jpg

Le contenu du répertoire /boot/grub aussi :

drwxr-xr-x 4 root root    4096 2012-08-02 00:00 .
drwxr-xr-x 3 root root    4096 2012-08-01 23:45 ..
-rw------- 1 root root    6769 2012-08-01 23:40 grub.cfg
-rw-r--r-- 1 root root    1024 2012-08-01 22:57 grubenv
drwxr-xr-x 2 root root   12288 2012-08-01 23:39 i386-pc
drwxr-xr-x 2 root root    4096 2012-08-01 23:39 locale
-rw-r--r-- 1 root root 2968057 2012-07-14 16:09 unicode.pf2

Il y a 2 sous répertoires en fonction de l'architecture et de la langue...

Le grub.cfg n'est lisible que par 'root' et contient plein de trucs nouveaux :

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

### BEGIN /usr/local/etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

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 load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  6093793f-1d42-49ef-9fa3-7118f9854be2
else
  search --no-floppy --fs-uuid --set=root 6093793f-1d42-49ef-9fa3-7118f9854be2
fi
    font="/boot/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=fr_FR
  insmod gettext
fi
terminal_output gfxterm
set timeout=5
### END /usr/local/etc/grub.d/00_header ###

### BEGIN /usr/local/etc/grub.d/10_linux ###
menuentry 'GNU/Linux' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-6093793f-1d42-49ef-9fa3-7118f9854be2' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  6093793f-1d42-49ef-9fa3-7118f9854be2
	else
	  search --no-floppy --fs-uuid --set=root 6093793f-1d42-49ef-9fa3-7118f9854be2
	fi
	echo	'Chargement de Linux 2.6.32-41-generic…'
	linux	/boot/vmlinuz-2.6.32-41-generic root=UUID=6093793f-1d42-49ef-9fa3-7118f9854be2 ro  
	echo	'Chargement du disque mémoire initial…'
	initrd	/boot/initrd.img-2.6.32-41-generic
}
submenu 'Options avancées pour GNU/Linux' $menuentry_id_option 'gnulinux-advanced-6093793f-1d42-49ef-9fa3-7118f9854be2' {
	menuentry 'GNU/Linux, avec Linux 2.6.32-41-generic' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-2.6.32-41-generic-advanced-6093793f-1d42-49ef-9fa3-7118f9854be2' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_msdos
		insmod ext2
		set root='hd0,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  6093793f-1d42-49ef-9fa3-7118f9854be2
		else
		  search --no-floppy --fs-uuid --set=root 6093793f-1d42-49ef-9fa3-7118f9854be2
		fi
		echo	'Chargement de Linux 2.6.32-41-generic…'
		linux	/boot/vmlinuz-2.6.32-41-generic root=UUID=6093793f-1d42-49ef-9fa3-7118f9854be2 ro  
		echo	'Chargement du disque mémoire initial…'
		initrd	/boot/initrd.img-2.6.32-41-generic
	}
	menuentry 'GNU/Linux, avec Linux 2.6.32-41-generic (mode de dépannage)' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-2.6.32-41-generic-recovery-6093793f-1d42-49ef-9fa3-7118f9854be2' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_msdos
		insmod ext2
		set root='hd0,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  6093793f-1d42-49ef-9fa3-7118f9854be2
		else
		  search --no-floppy --fs-uuid --set=root 6093793f-1d42-49ef-9fa3-7118f9854be2
		fi
		echo	'Chargement de Linux 2.6.32-41-generic…'
		linux	/boot/vmlinuz-2.6.32-41-generic root=UUID=6093793f-1d42-49ef-9fa3-7118f9854be2 ro single 
		echo	'Chargement du disque mémoire initial…'
		initrd	/boot/initrd.img-2.6.32-41-generic
	}
	menuentry 'GNU/Linux, avec Linux 2.6.32-21-generic' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-2.6.32-21-generic-advanced-6093793f-1d42-49ef-9fa3-7118f9854be2' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_msdos
		insmod ext2
		set root='hd0,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  6093793f-1d42-49ef-9fa3-7118f9854be2
		else
		  search --no-floppy --fs-uuid --set=root 6093793f-1d42-49ef-9fa3-7118f9854be2
		fi
		echo	'Chargement de Linux 2.6.32-21-generic…'
		linux	/boot/vmlinuz-2.6.32-21-generic root=UUID=6093793f-1d42-49ef-9fa3-7118f9854be2 ro  
		echo	'Chargement du disque mémoire initial…'
		initrd	/boot/initrd.img-2.6.32-21-generic
	}
	menuentry 'GNU/Linux, avec Linux 2.6.32-21-generic (mode de dépannage)' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-2.6.32-21-generic-recovery-6093793f-1d42-49ef-9fa3-7118f9854be2' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_msdos
		insmod ext2
		set root='hd0,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  6093793f-1d42-49ef-9fa3-7118f9854be2
		else
		  search --no-floppy --fs-uuid --set=root 6093793f-1d42-49ef-9fa3-7118f9854be2
		fi
		echo	'Chargement de Linux 2.6.32-21-generic…'
		linux	/boot/vmlinuz-2.6.32-21-generic root=UUID=6093793f-1d42-49ef-9fa3-7118f9854be2 ro single 
		echo	'Chargement du disque mémoire initial…'
		initrd	/boot/initrd.img-2.6.32-21-generic
	}
}

### END /usr/local/etc/grub.d/10_linux ###

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

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

### BEGIN /usr/local/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.
### END /usr/local/etc/grub.d/40_custom ###

### BEGIN /usr/local/etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /usr/local/etc/grub.d/41_custom ###

On voit apparaitre la notion de sous-menu avec les tests mémoire et les anciennes versions de noyau.


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#2 Le 02/08/2012, à 11:10

c-cube

Re : grub 2.0

Excellent ! smile

Du coup, si c'est aussi rapide, je suis tenté d'en faire autant sur une vieillerie de PC qui me sert encore. Mais j'ai quelques questions.

Comment se passe la cohabitation avec le grub précédemment installé ? Est-il écrasé avec tous ses fichiers de conf ?

D'après ce que je peux voir du fichier grub.cfg que tu a collé juste au-dessus, les fichiers de conf du nouveau grub se trouveraient donc dans /usr/local/etc/grub.d et /usr/local/etc/default/grub donc j'en déduis que ceux de l'ancien sont toujours à leur place. As-tu tenté des modifs cosmétiques ou autres puis lancé un sudo update-grub pour voir si tout se passe bien ?

Je viens de télécharger cette version 2.00~rc1 par la méthode indiquée sur le site officiel (via Bazaar donc).

En dehors des paquets nécessaires à l'installation et qui sont indiqués dans le fichier INSTALL, est-ce que cette compilation comporte des subtilités à connaître avant de se lancer ou bien ça se résume effectivement au bête trio habituel ./configure puis make et make install comme ils le disent ?

Dernière modification par c-cube (Le 02/08/2012, à 11:16)


Il y a quelque chose d'ubuntu dans Trisquel.
Bons vendeurs d'ordinateurs
La musique libre ? J'aime !

Hors ligne

#3 Le 03/08/2012, à 02:16

Maisondouf

Re : grub 2.0

Non, pas de trucs spéciaux : ./configure, make et make install

Pendant le démarrage, il n'y a pas de splash et tout le toutim (mode quiet), on a pour le moment droit au défilé de ligne d'un démarrage mais ça viendra avec la mise au 'norme' Ubuntu.

Pour ce qui est des anciens fichiers de grub 1.99, déjà il a viré tout le contenu de /boot/grub au départ pour créer son arborescence à lui.
Pour /etc/default/grub et les autres dans /etc/grub.d, ils sont toujours là mais ils ne servent à rien.
Pour le moment, grub2.0 s'installe dans /usr/....
/usr/sbin pour les exécutables
/usr/local/lib/grub pour les lib
/usr/local/etc/grub.d pour les scriptes de grub-update


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#4 Le 03/08/2012, à 08:12

c-cube

Re : grub 2.0

Ok. Merci à toi pour toutes ces précisions. J'ai déja compilé pas mal de trucs mais j'ai encore jamais osé (ni surtout pris le temps de) m'attaquer au Grub.

Je vais donc essayer ça tout à l'heure et je te dis quoi. smile

Edit : Bon et bien quoi ! J'ai réussi mais mon pavé numérique boude encore lui.

Dernière modification par c-cube (Le 03/08/2012, à 18:19)


Il y a quelque chose d'ubuntu dans Trisquel.
Bons vendeurs d'ordinateurs
La musique libre ? J'aime !

Hors ligne

#5 Le 03/08/2012, à 19:46

Maisondouf

Re : grub 2.0

Est ce que ton numlock est activé dans le setup du PC ???


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#6 Le 03/08/2012, à 21:27

c-cube

Re : grub 2.0

Je n'ai pas trouvé d'option pour ça dans le BIOS de ce PC mais ce doit être la cas puisqu'il s'allume avant que Grub l'éteigne..


Il y a quelque chose d'ubuntu dans Trisquel.
Bons vendeurs d'ordinateurs
La musique libre ? J'aime !

Hors ligne