GNU/Linux >> Tutoriels Linux >  >> Cent OS

CentOS / RHEL 7 :fichier de configuration GRUB2 /boot/grub2/grub.cfg expliqué

Le fichier de configuration GRUB2 /boot/grub2/grub.cfg

– Le démarrage de RHEL 7 GRUB 2 est le chargeur de démarrage. Le fichier de configuration GRUB 2 est /boot/grub2/grub.cfg .
– Ne modifiez pas ce fichier directement. Utilisez le grub2-mkconfig commande pour générer grub.cfg. Cette commande utilise les scripts de modèle dans /etc/grub.d et les paramètres de configuration de menu tirés de /etc/default/grub lors de la génération de grub.cfg.
– Le fichier /etc/grub2.cfg est un lien symbolique vers /boot/grub2/grub.cfg.

Vous trouverez ci-dessous un exemple de fichier de configuration GRUB2.

..... (skiped for breivity)
### BEGIN /etc/grub.d/10_linux ###
menuentry 'CentOS Linux (3.10.0-514.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-514.el7.x86_64-advanced-10bac86a-a9be-478c-b63f-46d3ca061e03' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod xfs
	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 --hint='hd0,msdos1'  a52207e4-01fd-4f12-98b7-681d56f21dc5
	else
	  search --no-floppy --fs-uuid --set=root a52207e4-01fd-4f12-98b7-681d56f21dc5
	fi
	linux16 /vmlinuz-3.10.0-514.el7.x86_64 root=/dev/mapper/cl-root ro crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet LANG=en_US.UTF-8
	initrd16 /initramfs-3.10.0-514.el7.x86_64.img
}
menuentry 'CentOS Linux (0-rescue-9cdb9ab3246a4b3f9c0849ecd597f25e) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-9cdb9ab3246a4b3f9c0849ecd597f25e-advanced-10bac86a-a9be-478c-b63f-46d3ca061e03' {
	load_video
	insmod gzio
	insmod part_msdos
	insmod xfs
	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 --hint='hd0,msdos1'  a52207e4-01fd-4f12-98b7-681d56f21dc5
	else
	  search --no-floppy --fs-uuid --set=root a52207e4-01fd-4f12-98b7-681d56f21dc5
	fi
	linux16 /vmlinuz-0-rescue-9cdb9ab3246a4b3f9c0849ecd597f25e root=/dev/mapper/cl-root ro crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet
	initrd16 /initramfs-0-rescue-9cdb9ab3246a4b3f9c0849ecd597f25e.img
}
.......

Le fichier /etc/default/grub

Les paramètres de configuration du menu GRUB 2 sont extraits de /etc/default/grub lors de la génération de grub.cfg. Voici la liste du contenu du fichier /etc/default/grub :

# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

Si des modifications sont apportées à l'un de ces paramètres, vous devez exécuter grub2-mkconfig pour regénérer le fichier /boot/grub2/grub.cfg. Par exemple :

# grub2-mkconfig –o /boot/grub2/grub.cfg

Les valeurs sont décrites comme suit :
GRUB_TIMEOUT :Le temps en secondes après l'affichage du menu pour démarrer l'entrée par défaut, sauf si une touche est enfoncée. La valeur par défaut est 5. Réglez sur 0 pour démarrer immédiatement sans afficher le menu, ou sur -1 pour attendre indéfiniment.
GRUB_DISTRIBUTOR : Défini par les distributeurs de GRUB et utilisé pour générer des titres d'entrée de menu plus informatifs. L'exemple est évalué sur CentOS Linux Server.
GRUB_DEFAULT L'entrée de menu par défaut pour démarrer. Une valeur de 0 démarre la première entrée de menu. Une valeur de 1 démarre la deuxième entrée de menu. La valeur saved indique à GRUB 2 de charger le dernier système d'exploitation chargé avec succès.

Une valeur GRUB_DEFAULT de saved vous permet également d'utiliser le grub2-set-default et grub2-reboot commandes pour spécifier l'entrée par défaut. Ces deux commandes sont décrites comme suit :
grub2-set-default  :Définit l'entrée par défaut pour tous les redémarrages suivants
grub2-reboot  :Définit l'entrée par défaut pour le prochain redémarrage uniquement

Par exemple, avec GRUB_DEFAULT=enregistré , la commande suivante définit l'entrée par défaut pour tous les redémarrages suivants sur la deuxième entrée de menu :

# grub2-set-default 1

GRUB_DISABLE_SUBMENU :Par défaut, la commande grub2-mkconfig génère une entrée de menu de niveau supérieur pour le noyau avec le numéro de version le plus élevé et place tous les autres noyaux trouvés ou entrées de menu alternatives pour le mode de récupération dans un sous-menu. Le réglage GRUB_DISABLE_SUBMENU=true le désactive.
GRUB_TERMINAL_OUTPUT :Le périphérique de sortie du terminal. Lorsque vous spécifiez plusieurs périphériques, séparez les noms de sortie de terminal valides par des espaces.
GRUB_CMDLINE_LINUX :paramètres de démarrage du noyau. Plus d'informations sur les paramètres de démarrage du noyau sont fournies dans la diapositive suivante.
GRUB_DISABLE_RECOVERY :Par défaut, deux entrées de menu sont générées pour chaque noyau Linux :une entrée par défaut et une entrée pour le mode de récupération. Paramètre GRUB_DISABLE_RECOVERY=“true” désactive cela.

Expliquer l'entrée de menu

Le fichier de configuration GRUB 2, /boot/grub2/grub.cfg, contient des strophes d'entrée de menu, qui représentent un noyau Linux installé. Chaque strophe commence par le mot-clé menuentry avec options. Chaque entrée de menu est également une seule entrée de menu de démarrage dans le menu GRUB 2. Le bloc de code associé est entouré d'accolades, { }.

La strophe inclut une directive linux16 suivie du chemin d'accès au noyau et une directive initrd16 suivie du chemin d'accès à l'image initramfs. La directive linux16 spécifie le numéro de version du noyau à démarrer ainsi que les paramètres de démarrage du noyau. Une partition /boot séparée a été créée; par conséquent, le chemin vers le noyau (ainsi que vers l'image initramfs) est relatif à /boot.

La directive initrd16 doit pointer vers l'emplacement du fichier initramfs correspondant à la même version du noyau. En d'autres termes, le noyau indiqué sur la ligne linux16 /vmlinuz-[kernel_version] doit correspondre au numéro de version de l'image initramfs indiqué sur la ligne initrd16 /initramfs-[kernel_version].img de chaque strophe.


Cent OS
  1. Comment Linux gère-t-il plusieurs séparateurs de chemins consécutifs (/home////nom d'utilisateur///fichier) ?

  2. "erreur :impossible de trouver la commande 'ffffffffff….." Erreur GRUB2 CentOS/RHEL 7

  3. CentOS / RHEL 5 :fichier dm-multipath /etc/sysconfig/mkinitrd/multipath expliqué

  4. Démarrez GRUB2 sur GRUB ou GRUB2 sur un autre disque

  5. GRUB2 :/boot en tant que sous-volume BTRFS

Comment configurer les paramètres du chargeur de démarrage GRUB2 dans Ubuntu

CentOS / RHEL 7 :Comment protéger par mot de passe les entrées du menu GRUB2

CentOS / RHEL 7 :Comment démarrer en mode urgence ou multi-utilisateur depuis GRUB2

CentOS / RHEL 7 :Comment réinstaller GRUB2 depuis le mode de secours

Comment récupérer GRUB (partition de démarrage corrompue) dans CentOS/RHEL 5,6

Comment récupérer à partir d'un fichier /etc/mtab corrompu ou vide dans CentOS/RHEL 7