Vue normale

Reçu hier — 11 mai 2025GNU/Linux - malekal.com

GRUB : modifier les options de démarrage Linux

11 mai 2025 à 09:14

Le chargeur de démarrage GRUB (GRand Unified Bootloader) joue un rôle central dans le démarrage d’un système Linux. Il permet de choisir quel noyau lancer, de passer des paramètres au système, ou même de démarrer un autre OS en dual-boot.
Dans certaines situations — résolution de problème matériel, test de paramètres, changement du système par défaut — il est utile, voire nécessaire, de modifier les options de démarrage de Linux.

Notamment, deux façons de faire sont possibles :

  • Modifier à la volée les options de démarrage de Linux via l’éditeur de commandes du menu GRUB, par exemple :
    • contourner un problème (affichage, ACPI, Wi-Fi,…),
    • tester une option (comme nomodeset, noapic, etc.),
    • démarrer en mode console, debug, etc.
  • Modifier les options de démarrage de Linux de manière permanente en modifiant le fichier /etc/default/grub

Ce tutoriel vous guide pas à pas pour apprendre à ajuster ces paramètres de démarrage Linux, que ce soit temporairement via l’éditeur GRUB au démarrage, ou de manière permanente en modifiant le fichier /etc/default/grub.

Modifier les options de démarrage Linux dans /etc/default/grub

Pour rendre un changement permanent, il faut éditer le fichier /etc/default/grub puis exécuter sudo update-grub.
Voici les étapes détaillées :

Conseil : avant chaque modification, sauvegardez l’original de /etc/default/grub (par exemple sudo cp /etc/default/grub /etc/default/grub.bak). Une erreur de syntaxe peut rendre le démarrage instable.
  • Ouvrez un terminal puis utilisez la commande suivante :
sudo nano /etc/default/grub
On peut aussi utiliser un éditeur graphique, par exemple sudo gedit /etc/default/grub ou gedit admin:///etc/default/grub.)
  • Dans ce fichier, chaque ligne de la forme VAR=valeur définit une option. On peut activer ou désactiver un paramètre en le commentant ou décommentant avec le caractère dièse #.
  • Par exemple, si la ligne #GRUB_HIDDEN_TIMEOUT=0 est commentée, le menu GRUB s’affichera normalement; sans #, le menu serait masqué au début. Après toute modification, on enregistre et on ferme l’éditeur.
Modifier les options de démarrage Linux dans /etc/default/grub
  • Une fois /etc/default/grub modifié et enregistré, il faut régénérer le fichier de configuration de GRUB pour que les changements prennent effet. Sur Debian/Ubuntu, on exécute :
sudo update-grub
  • Cette commande scanne le système pour détecter les noyaux et autres systèmes d’exploitation, puis reconstruit le menu dans /boot/grub/grub.cfg. Sans cette étape, les modifications resteront sans effet (car GRUB continue d’utiliser l’ancienne configuration).
Prendre en compte les modifications du démarrage Linux avec update-grub

Exemples pratiques

  • Changer l’entrée par défaut : Par défaut, GRUB_DEFAULT=0 démarre la première entrée du menu. Pour choisir un autre système, éditez /etc/default/grub et modifiez cette valeur. Par exemple, pour démarrer la deuxième ligne du menu par défaut, changez :
GRUB_DEFAULT=0
  • en
GRUB_DEFAULT=1
  • Raccourcir le délai du menu : Le délai par défaut (GRUB_TIMEOUT) est souvent 10 secondes sur Ubuntu (5 sur d’autres distributions). Pour le réduire, éditez /etc/default/grub et modifiez la valeur, par exemple :
GRUB_TIMEOUT=3

Ceci fixera le délai à 3 secondes. On peut également forcer l’affichage du menu en changeant GRUB_TIMEOUT_STYLE=menu (ou au contraire cacher le menu en mode hidden). Après modification, n’oubliez pas sudo update-grub. Au démarrage suivant, le menu s’affichera moins longtemps avant de lancer l’option par défaut.

  • Ajouter une option noyau (ex. nomodeset) : Pour passer des paramètres au noyau Linux, on utilise GRUB_CMDLINE_LINUX_DEFAULT. Par défaut, il contient généralement "quiet splash". Pour ajouter, par exemple, nomodeset, modifiez la ligne :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

En :

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"

N’oubliez pas d’utiliser la commande update-grub pour prendre en compte les modifications.

Options courantes de /etc/default/grub

OptionDescriptionValeur par défaut typique
GRUB_DEFAULTNuméro (ou nom) de l’entrée à démarrer par défaut0 (première entrée)
GRUB_TIMEOUTDurée (en secondes) d’attente avant lancement automatique
GRUB_TIMEOUT_STYLEStyle d’affichage du menu (hidden/menu/countdown)hidden
GRUB_CMDLINE_LINUX_DEFAULTOptions passées au noyau Linux en démarrage normal (ex : quiet splash)« quiet splash »
GRUB_CMDLINE_LINUXOptions passées au noyau en mode récupération (recovery)«  » (aucune)
GRUB_DISTRIBUTORPréfixe des noms dans le menu (généralement le nom de la distrib)Ex. Ubuntu (généré)
GRUB_DISABLE_OS_PROBERtrue pour ignorer les autres OS détectés par os-proberfalse (on cherche les autres OS)

Exemples courants d’options du noyau Linux pour GRUB

Option du noyau LinuxEffet / Utilité
nomodesetDésactive l’accélération graphique (utile si écran noir au boot).
quietRéduit les messages affichés pendant le démarrage.
splashAffiche une image ou animation de démarrage (avec quiet).
acpi=offDésactive ACPI (résout parfois des problèmes d’alimentation / boot).
noapicDésactive le contrôleur APIC (utile en cas de freezes ou erreurs IRQ).
nolapicDésactive le LAPIC (similaire à noapic, cas rares).
pci=noacpiÉvite l’utilisation d’ACPI pour le bus PCI.
ipv6.disable=1Désactive le support d’IPv6.
systemd.unit=multi-user.targetDémarre en mode console (équivalent runlevel 3).
systemd.unit=rescue.targetDémarre en mode récupération (rescue mode, root sans GUI).
loglevel=3Limite le niveau de verbosité du noyau.
usbcore.autosuspend=-1Désactive la mise en veille automatique des ports USB.
audit=0Désactive le système d’audit (légère amélioration des perfs sur desktop).
mitigations=offDésactive les protections contre les failles CPU (Spectre, Meltdown, etc.).
reboot=efiForce un redémarrage EFI propre (utile si reboot normal plante).
ro 3Démarrer en mode texte (runlevel 3, sans interface graphique)
security=apparmorForce le noyau à utiliser AppArmor comme module LSM (Linux Security Module).
security=selinuxActive SELinux si disponible et configuré (plutôt sur Fedora/RHEL).
apparmor=1Active AppArmor (utile si désactivé par défaut).
apparmor=0Désactive AppArmor (attention, pas recommandé sur une distro qui l’utilise).
selinux=1Active SELinux (nécessite que la distribution le prenne en charge).
selinux=0Désactive SELinux.
lsm=landlock,yama,apparmor,bpfDéfinit l’ordre des LSM utilisés au démarrage (Linux >= 5.13).

Modifier le démarrage Linux avec /etc/default/grub.d/

Depuis les versions récentes de GRUB, la configuration du fichier /etc/default/grub peut être étendue ou complétée par des fichiers placés dans le dossier /etc/default/grub.d/.

Chaque fichier de ce dossier, généralement nommé *.cfg, peut contenir des options de démarrage supplémentaires au format VAR=valeur (comme dans le fichier principal). Cela permet, par exemple :

  • aux paquets système ou pilotes d’ajouter leurs propres paramètres sans modifier le fichier principal ;
  • à un administrateur système de scinder la configuration (ex. un fichier pour les options de noyau, un autre pour les délais).

Les fichiers de /etc/default/grub.d/ sont lus après /etc/default/grub, et peuvent surcharger ses valeurs.

Si vous désirez ajouter une option personnalisée sans toucher à /etc/default/grub, crée un fichier comme /etc/default/grub.d/10-custom.cfg et écrivez-y par exemple :

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"

Modifier les options de démarrage de Linux avec l’éditeur de commandes GRUB

Modifier les options de démarrage de Linux directement depuis l’éditeur de GRUB (au moment du démarrage) est utile pour tester temporairement un paramètre du noyau (comme nomodeset, acpi=off, etc.), sans modifier les fichiers système.

  • Démarrez votre PC et patientez que le menu GRUB s’affiche (souvent automatiquement, si vous avez un dual-boot, sinon appuie sur Echap ou MAJ juste après l’allumage)
  • Dans le menu GRUB, sélectionnez la ligne Linux (souvent “Ubuntu”, “Debian”, etc.) sans appuyer sur Entrée
  • Appuyez sur la touche e pour éditer les options de démarrage
Accéder à l'éditeur de commandes GRUB
  • Repérez la ligne relative aux options du noyau Linux :
linux   /boot/vmlinuz-...
  • Elle contient les options du noyau, comme :
linux   /boot/vmlinuz-... root=UUID=xxxx ro quiet splash
  • Ajoutez vos paramètres à la fin de cette ligne, avec les exemples donnés précédemment. Par exemple, pour désactiver l’accélération graphique :
... ro quiet splash nomodeset
Modifier les options de démarrage de Linux avec l'éditeur de  commandes GRUB
  • ou pour démarrer sur la console :
... ro 3
  • Une fois la modification faite, appuie sur F10 (ou CTRL+X) pour démarrer avec ces paramètres.

Liens

L’article GRUB : modifier les options de démarrage Linux est apparu en premier sur malekal.com.

❌