À partir de RHEL 7, GRUB2 est le chargeur de démarrage par défaut. Les configurations et les paramètres de GRUB2 sont très différents de ceux du GRUB utilisé dans RHEL 6 et les versions antérieures. Le sale l'utilitaire de ligne de commande peut être utilisé pour apporter des modifications persistantes à /boot/grub.cfg dossier. Vous pouvez également modifier le fichier /etc/default/grub et utiliser grub2-mkconfig pour modifier les arguments.
REMARQUE : Modification de /boot/grub.cfg manuellement par vi n'est pas recommandéComment modifier les arguments GRUB2 à l'aide de grubby
1. Utilisez la commande grubby pour lister toutes les entrées du noyau présentes.
# grubby --info=ALL index=0 kernel=/boot/vmlinuz-3.10.0-229.el7.x86_64 args="ro nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap rhgb quiet LANG=en_US.UTF-8" root=/dev/mapper/vg_os-lv_root initrd=/boot/initramfs-3.10.0-229.el7.x86_64.img title=Red Hat Enterprise Linux Server 7.1 (Maipo), with Linux 3.10.0-229.el7.x86_64 index=1 kernel=/boot/vmlinuz-0-rescue-0c4400a0fc934267945bc23cb6c4440d args="ro nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap rhgb quiet" root=/dev/mapper/vg_os-lv_root initrd=/boot/initramfs-0-rescue-0c4400a0fc934267945bc23cb6c4440d.img title=Red Hat Enterprise Linux Server 7.1 (Maipo), with Linux 0-rescue-0c4400a0fc934267945bc23cb6c4440d index=2 non linux entry
Le –update-kernel L'option peut être utilisée pour mettre à jour une entrée de menu lorsqu'elle est utilisée en combinaison avec :
1. –arguments :pour ajouter de nouveaux arguments.
2. –remove-args :pour supprimer les arguments existants.
Comment supprimer un argument
Voyons un exemple pour supprimer un argument d'une entrée de menu. L'exemple suivant montre comment supprimer les arguments "rhgb quiet".
# grubby --remove-args "rhgb quiet" --update-kernel /boot/vmlinuz-3.10.0-229.el7.x86_64
Répertoriez toutes les entrées du noyau et vérifiez les modifications apportées. Vous remarquerez que le paramètre "rhgb tout" pour le noyau /boot/vmlinuz-3.10.0-229.el7.x86_64 est supprimé.
# grubby --info=ALL index=0 kernel=/boot/vmlinuz-3.10.0-229.el7.x86_64 args="ro nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap LANG=en_US.UTF-8" root=/dev/mapper/vg_os-lv_root initrd=/boot/initramfs-3.10.0-229.el7.x86_64.img title=Red Hat Enterprise Linux Server 7.1 (Maipo), with Linux 3.10.0-229.el7.x86_64 index=1 kernel=/boot/vmlinuz-0-rescue-0c4400a0fc934267945bc23cb6c4440d args="ro nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap rhgb quiet" root=/dev/mapper/vg_os-lv_root initrd=/boot/initramfs-0-rescue-0c4400a0fc934267945bc23cb6c4440d.img title=Red Hat Enterprise Linux Server 7.1 (Maipo), with Linux 0-rescue-0c4400a0fc934267945bc23cb6c4440d index=2 non linux entry
Comment ajouter un argument
Voyons un exemple d'ajout d'un argument à l'entrée de menu. Rajoutons à nouveau les arguments supprimés "rhgb quiet". Utilisez l'option "–args" pour ajouter des arguments au GRUB2.
# grubby --args "rhgb quiet" --update-kernel /boot/vmlinuz-3.10.0-229.el7.x86_64
Répertoriez toutes les entrées du noyau et vérifiez les modifications apportées.
# grubby --info=ALL index=0 kernel=/boot/vmlinuz-3.10.0-229.el7.x86_64 args="ro nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap LANG=en_US.UTF-8 rhgb quiet" root=/dev/mapper/vg_os-lv_root initrd=/boot/initramfs-3.10.0-229.el7.x86_64.img title=Red Hat Enterprise Linux Server 7.1 (Maipo), with Linux 3.10.0-229.el7.x86_64 index=1 kernel=/boot/vmlinuz-0-rescue-0c4400a0fc934267945bc23cb6c4440d args="ro nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap rhgb quiet" root=/dev/mapper/vg_os-lv_root initrd=/boot/initramfs-0-rescue-0c4400a0fc934267945bc23cb6c4440d.img title=Red Hat Enterprise Linux Server 7.1 (Maipo), with Linux 0-rescue-0c4400a0fc934267945bc23cb6c4440d index=2 non linux entry
Modification des paramètres définis dans /etc/default/grub
Une autre entrée courante que nous devrons peut-être modifier est le délai d'attente du menu grub, il est défini dans /etc/default/grub. Vous pouvez utiliser la méthode décrite ci-dessous pour modifier tout autre paramètre défini dans le fichier /etc/default/grub .
# cat /etc/default/grub GRUB_TIMEOUT=5 #### we have modified this from 5 seconds to 15 seconds GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap rhgb quiet" GRUB_DISABLE_RECOVERY="true"
Vous pouvez modifier le /etc/default/grub et le modifier en "GRUB_TIMEOUT=15", puis reconstruire le grub.cfg en utilisant le grub2-mkconfig commande.
# grub2-mkconfig -o /boot/grub2/grub.cfg
Conclusion
Les arguments GRUB2 peuvent être modifiés selon 2 méthodes :
1. Utiliser un outil sale.
2. Modification du fichier /etc/default/grub et utilisation de la commande grub2-mkconfig.
Assurez-vous également de ne pas modifier directement le fichier /boot/grub.cfg. Ce fichier est automatiquement mis à jour avec les modifications à l'aide de l'outil grubby.