====== GRUB ====== ---- Pour faire apparaître le menu grub au démarrage appuyer sur la touche ESC ou bien maintenir la touche Shift ---- ===== Configuration ===== ==== Fichier de paramètres ==== Le paramétrage se fait dans le fichier /etc/default/grub. === Paramètres === ^ Paramètre ^ Usage ^ | GRUB_DEFAULT=0 | Correspond au menu par défaut (0=premier, 1=deuxième). \\ Possibilité de mettre le titre exact entre " " | | GRUB_TIMEOUT=10 | Temporisation avant lancement du système. Si on ne veut pas de temporisation = -1 | | GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" | Démarrage en mode silencieux avec slashscreen. Supprimer quiet splash pour un démarrage verbeux. | | GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1" | Désactivation IPV6 | === Démarrage sur la précédente sélection === Il est possible de démarrer automatiquement sur la même sélection que lors du démarrage précédent en positionnant les paramètres : GRUB_DEFAULT=saved GRUB_SAVEDEFAULT=true ==== Prise en compte des modifications ==== === Ubuntu === sudo update-grub === CentOS/RedHat === grub-mkconfig -o /boot/grub/grub.cfg ==== Fichier de configuration ==== La prise en compte du fichier de paramètres génère le fichier /boot/grub/grub.cfg Pour vérifier les titres des menus : grep menuentry /boot/grub/grub.cfg Il ne faut pas modifier ce fichier directement. Il est regénéré à chaque installation de nouveau kernel. ---- [[all:bibles:linux:grub|Haut de page]] ===== Grub rescue ===== ==== Commandes ==== ^Commande ^Action ^ | help | Aide sur les commandes. Possibilité d’y ajouter un %%|%% more. | | ls | Liste les unités disponibles. Permet de voir le contenu des répertoires /boot et /boot/grub | | initrd | charger initrd | | linux | charger le noyau linux | | loopback | monter un fichier comme dispositif (device). loopback loop (hd0,2)/iso/my.iso | | lsmod | afficher les modules chargés | | reboot | redémarrer la machine. | | rescue | entrer dans le mode rescue. | | set | montrer les variables environnementales en place. Initialise les variables comme set gfxmode=640x480, color_normal=cyan/black. Utiliser cette dernière commande en ligne de commandes pour tester plusieurs couleurs de polices et de menus. | | vbeinfo | afficher les résolutions d'écran disponibles | ==== Dépannage ==== Dans le but de démarrer depuis le prompt "grub>", l'utilisateur doit localiser/vérifier : * Les partitions - la partition / et chaque partition séparée comme la partition de boot. * Les fichiers - la localisation des fichiers Linux et initrd.img (normalement dans /boot) et le fichier grub.cfg dans /boot/grub Les commandes suivantes aideront à déterminer ces informations : | set | quand set est saisi tout seul, la commande affiche les réglages de GRUB2. | | ls | La partition Linux peut être listée, comme n'importe quelle partition spéciale comme /boot ou /home. Par exemple (hd0) (hd0,1) (hd1,5) dans cet exemple sda, sda1 et sdb5 sont reconnues. Pour (hd1,5), la valeur X est 1 et la valeur Y est 5. | | ls (hdX,Y)/ | ce résultat devrait inclure vmlinuz et initrd.img | | ls (hdX,Y)/boot | ce résultat devrait inclure les fichiers noyau spécifique et initrd.img | | ls (hdX,Y)/boot/grub | cette saisie (en remplaçant X et Y) devrait contenir de nombreux fichiers *.mod et le fichier grub.cfg, aussi bien que de nombreux fichiers *.img | ==== Exemple de réparation ==== résultat de ls : (hd0) (hd0,msdos1) résultat de set prefix=(hd0,msdos1)/boot/grub root=(hd0,msdos1) Pour réparer : ls (hd0,msdos1)/boot pour noter les dernières version de vmlinuz et initrd vmlinuz-2.6.28-35-generic et initrd.img-2.6.28-35-generic Ensuite : insmod linux linux /boot/vmlinuz-2.6.28-35-generic root=/dev/sda1 quiet initrd /boot/initrd.img-2.6.28-35-generic boot Et la miracle ubuntu démarre. Pour finir, dans une fenêtre shell sudo update-grub sudo grub-install /dev/sda1 ==== boot-repair ==== Utilisation de l’image ISO ou bien à partir d’un live CD Ubuntu : sudo add-apt-repository ppa:yannubuntu/boot-repair sudo apt-get update sudo apt-get install boot-repair ---- [[all:bibles:linux:grub|Haut de page]] ---- ===== Recovery / Single user ===== Afin de réparer une installation plantée il peut être nécessaire de démarrer le système en mode single user (run level 1). ==== Ubuntu ==== * Redémarrer la machine. * Faire apparaître le menu grub au démarrage à l'aide de la touche ESC ou bien en maintenant la touche Shift * Choisir la version a démarré avec l'option ''Recovery mode'' Le système de fichier est en lecture seule, pour y accéder en écriture il faut le remonter en mode read/write : mount -o rw,remount / ==== Redhat / CentOS ==== === A partir de Redhat/CentOS 7 === * Redémarrer la machine * Faire apparaître le menu grub au démarrage à l'aide de la touche ESC ou bien en maintenant la touche Shift * Choisir la version à démarrer et taper e pour éditer la ligne courante * Descendre sur la ligne ''linux16 /vmlinuz'' * Remplacer la chaine de caractères ''ro'' par ''rw init=/sysroot/bin/sh'' * Taper Ctrlx pour redémarrer en single user Le système de fichier est en lecture seule, pour y accéder en écriture : chroot /sysroot === Autres versions === * Redémarrer la machine * Faire apparaître le menu grub au démarrage à l'aide de la touche ESC ou bien en maintenant la touche Shift * Choisir la version à démarrer et taper e pour éditer la ligne courante * Descendre sur la ligne ''kernel'' et ajouter ''single'' à la fin * Taper b pour booter ==== Raspberry Pi OS ==== * Editer le fichier cmdline.txt * Ajouter à la fin de la ligne : init=/bin/sh dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait init=/bin/sh * Redémarrer le Raspberry Pi Ne fonctionne pas avec Ubuntu sur Rasberry Pi. ---- [[all:bibles:linux:grub|Haut de page]] ===== Reconstruction ===== Après avoir démarré en mode secours. Lister les logical volumes : lvs –o vg_name,lv_name Vérifier que les paramètrs rd.lvm.lv correspondent bien aux logical volume : grep GRUB_CMDLINE_LINUX /etc/default/grub Reconstruire grub : BIOS : grub2-mkconfig -o /etc/grub2.cfg UEFI : grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg ---- ** Sources ** [[https://doc.ubuntu-fr.org/tutoriel/grub2_parametrage_manuel|Doc Ubuntu]] ---- [[all:bibles:linux:grub|Haut de page]]