« Réinstaller Grub2 » : différence entre les versions
mAucun résumé des modifications |
m (ajout TOC) |
||
(11 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
__TOC__ | |||
GRUB 2: Guide de survie en cas de problèmes de démarrage... | GRUB 2: Guide de survie en cas de problèmes de démarrage... | ||
Grub2 est en constante évolution depuis sa sortie, si vous êtes sous Lenny, Squeeze ou Sid il peut y avoir de légères différences... | Grub2 est en constante évolution depuis sa sortie, si vous êtes sous Lenny, Squeeze ou Sid il peut y avoir de légères différences... | ||
Je | Je pars du principe que vous avez déjà installé Grub2 dans le MBR de votre disque. Sachez qu'il est possible de l'installer dans le PBR des partitions. Dans ce cas particulier, il faudra un programme d'amorçage (ce peut être depuis Windows, ou un Gestionnaire libre - [http://gag.sourceforge.net/ GAG], [http://sourceforge.net/projects/btmgr/ SBM], [http://air-boot.netlabs.org/en/site/index.xml AirBoot]...) | ||
Si Grub2 est en panne pour une raison X ou Y, voici un guide de survie... | Si Grub2 est en panne pour une raison X ou Y, voici un guide de survie... | ||
Ligne 8 : | Ligne 10 : | ||
== Avec un DVD d'install de debian == | == Avec un DVD d'install de debian == | ||
Si vous avez un DVD d'install de debian (en 64b si votre debian est en 64b), vous pouvez réinstaller GRUB2 en quelques | Si vous avez un DVD d'install de debian (en 64b si votre debian est en 64b), vous pouvez réinstaller GRUB2 en quelques clics, laissez vous guider par les menus | ||
== Le mode Rescue == | == Le mode Rescue == | ||
Ligne 27 : | Ligne 28 : | ||
grub rescue> set prefix=(hd0,1)/boot/grub | grub rescue> set prefix=(hd0,1)/boot/grub | ||
"Fixons" la partition | "Fixons" la partition où se trouve notre système : | ||
grub rescue> set root=(hd0,1) | grub rescue> set root=(hd0,1) | ||
En cas de partition /boot séparée... Dans l'exemple qui suit, /boot se trouve sur (hd0,1) et la racine de votre système sur (hd0,2) | |||
grub rescue> set prefix=(hd0,1)/grub | |||
grub rescue> set root=(hd0,2) | |||
Chargeons les modules : | Chargeons les modules : | ||
Ligne 38 : | Ligne 43 : | ||
grub rescue> normal | grub rescue> normal | ||
À ce niveau, vous retrouvez votre menu "habituel" où vous pouvez faire les modifications plus aisément. | |||
Si vous ne parvenez pas à démarrer votre machine avec les manipulations ci-dessus, lisez la suite... | Si vous ne parvenez pas à démarrer votre machine avec les manipulations ci-dessus, lisez la suite... | ||
Ligne 44 : | Ligne 49 : | ||
== La solution la plus simple == | == La solution la plus simple == | ||
:1. Procurez-vous Super | :1. Procurez-vous Super Grub Disk [http://www.supergrubdisk.org/index.php?pid=5 sur le site officiel] ou [http://download.linux-live-cd.org/Super_Grub_Disk/download/binaries/sgd/cdrom/ sur linux-live-cd.org] | ||
::Petite explication sur Super | ::Petite explication sur Super Grub Disk : | ||
::La principale utilité de Super Grub Disk est de démarrer un système dont le Grub est en panne. | ::La principale utilité de Super Grub Disk est de démarrer un système dont le Grub est en panne. Il peut aussi réparer Grub et le réinstaller sur le MBR ou sur une autre partition - PBR -(utilisateurs avancés). | ||
::Il peut également restaurer le MBR d'origine en désinstallant Grub sans risquer de rendre votre ordinateur inutilisable après formatage de la partition Linux. | ::Il peut également restaurer le MBR d'origine en désinstallant Grub sans risquer de rendre votre ordinateur inutilisable après formatage de la partition Linux. | ||
::Lorsque vous démarrez | ::Lorsque vous démarrez votre ordinateur avec Super Grub Ddisk, vous tombez sur un menu plus ou moins clair. Laissez-vous guider, vous devriez parvenir à trouver la bonne option pour démarrer sur votre Debian (Un tuto de Super Grub Disk viendra...) | ||
:2. Démarrer votre système en panne avec ce disque. | :2. Démarrer votre système en panne avec ce disque. | ||
Ligne 58 : | Ligne 63 : | ||
== Solution avec un chroot == | == Solution avec un chroot == | ||
* Trouvez un | * Trouvez un Live CD et démarrez votre machine avec. N'importe quel Live CD à base de Debian fera l'affaire (Knoppix, Ubuntu, Sidux...) | ||
'''Attention, si votre système est en 64bits, il faudra démarrer avec un LiveCD en 64bits''' | '''Attention, si votre système est en 64bits, il faudra démarrer avec un LiveCD en 64bits''' | ||
Ligne 80 : | Ligne 85 : | ||
# mkdir /mnt/chroot | # mkdir /mnt/chroot | ||
# mount /dev/hda1 /mnt/chroot | # mount /dev/hda1 /mnt/chroot | ||
Il est d'ailleurs probable que dans ce cas, /dev/hda1 soit votre partition /boot et /dev/hda2 la racine de votre système, soyez attentif à ce que vous faites. | Il est d'ailleurs probable que dans ce cas, /dev/hda1 soit votre partition /boot et /dev/hda2 la racine de votre système, soyez attentif à ce que vous faites. | ||
* Une fois que la partition système est | * Une fois que la partition système est montée, il faut monter les périphériques que le Live CD a trouvé, | ||
# mount --bind /dev/ /mnt/chroot/dev | # mount --bind /dev/ /mnt/chroot/dev | ||
# mount -t proc /proc /mnt/chroot/proc | # mount -t proc /proc /mnt/chroot/proc | ||
# mount -t sysfs /sys /mnt/chroot/sys | |||
* Le système est prêt à être "chrooté" : | * Le système est prêt à être "chrooté" : | ||
Ligne 96 : | Ligne 98 : | ||
# chroot /mnt/chroot | # chroot /mnt/chroot | ||
Il peut parfois être nécessaire, en fonction de votre système ou du LiveCD à partir | Il peut parfois être nécessaire, en fonction de votre système ou du LiveCD à partir duquel vous avez démarré d'ajouter /bin/bash à la commande | ||
# chroot /mnt/chroot /bin/bash | # chroot /mnt/chroot /bin/bash | ||
* Si vous aviez créé une partition séparée pour /boot, il faut la monter ('''Nous montons cette partitions dans le chroot''', sinon grub-mkconfig ne détecte pas que /boot est sur une partition séparée) | |||
# mount /dev/hdxy /boot | |||
* Vous êtes maintenant en tant que root sur votre système installé en dur. | * Vous êtes maintenant en tant que root sur votre système installé en dur. | ||
Ligne 104 : | Ligne 111 : | ||
=== Troisième étape: Réinstaller GRUB 2 === | === Troisième étape: Réinstaller GRUB 2 === | ||
Le | Le paquet 'grub2' n'est pas indispensable, c'est ce que l'on appelle un "méta-paquet" il ne sert qu'a installer grub-pc et grub-common. | ||
* Editez le fichier /etc/default/grub (uniquement si vous savez ce que vous faites!) selon vos | * Editez le fichier /etc/default/grub (uniquement si vous savez ce que vous faites!) selon vos besoins, et lancez ensuite la commande : | ||
# update-grub | # update-grub | ||
Ligne 114 : | Ligne 121 : | ||
# grub-install /dev/hda | # grub-install /dev/hda | ||
Je | Je suppose ici que vous voulez installer GRUB sur le MBR du disque dur. Si vous savez ce que vous faites et que vous voulez l'installer sur le PBR d'une partition, tapez grub-install --force /dev/hda1 | ||
* Si l'étape se passe mal, essayez avec la commande | * Si l'étape se passe mal, essayez avec la commande | ||
Ligne 163 : | Ligne 170 : | ||
$ sudo umount /mnt/chroot/dev | $ sudo umount /mnt/chroot/dev | ||
$ sudo umount /mnt/chroot/proc | $ sudo umount /mnt/chroot/proc | ||
$ sudo umount /mnt/chroot/sys | |||
$ sudo umount /mnt/chroot | $ sudo umount /mnt/chroot | ||
Ligne 175 : | Ligne 183 : | ||
# $ sudo mount --bind /dev /mnt/chroot/dev | # $ sudo mount --bind /dev /mnt/chroot/dev | ||
# $ sudo mount -t proc /proc /mnt/chroot/proc | # $ sudo mount -t proc /proc /mnt/chroot/proc | ||
# $ sudo mount -t sysfs /sys /mnt/chroot/sys | |||
# $ sudo chroot /mnt/chroot | # $ sudo chroot /mnt/chroot | ||
# # update-grub | # # update-grub | ||
Ligne 180 : | Ligne 189 : | ||
# # exit | # # exit | ||
# $ sudo umount /mnt/chroot/dev | # $ sudo umount /mnt/chroot/dev | ||
# $ sudo umount /mnt/chroot/proc | |||
# $ sudo umount /mnt/chroot/sys | |||
# $ sudo umount /mnt/chroot | # $ sudo umount /mnt/chroot | ||
Dernière version du 7 mars 2017 à 13:10
GRUB 2: Guide de survie en cas de problèmes de démarrage...
Grub2 est en constante évolution depuis sa sortie, si vous êtes sous Lenny, Squeeze ou Sid il peut y avoir de légères différences... Je pars du principe que vous avez déjà installé Grub2 dans le MBR de votre disque. Sachez qu'il est possible de l'installer dans le PBR des partitions. Dans ce cas particulier, il faudra un programme d'amorçage (ce peut être depuis Windows, ou un Gestionnaire libre - GAG, SBM, AirBoot...)
Si Grub2 est en panne pour une raison X ou Y, voici un guide de survie...
Avec un DVD d'install de debian
Si vous avez un DVD d'install de debian (en 64b si votre debian est en 64b), vous pouvez réinstaller GRUB2 en quelques clics, laissez vous guider par les menus
Le mode Rescue
Grub2 ne démarre pas le système, et vous donne seulement accès au "mode rescue"
Entering rescue mode... grub rescue>
Pour obtenir la liste des commandes qu'il est alors possible de passer à Grub2, tapez help.
Commençons pas faire l'inventaire des disques et partitions :
grub rescue> ls (hd0) (hd0,1) (hd0,2) (hd0,3) (hd1) (hd1,1)
Spécifions le raccourci vers nos fichiers :
grub rescue> set prefix=(hd0,1)/boot/grub
"Fixons" la partition où se trouve notre système :
grub rescue> set root=(hd0,1)
En cas de partition /boot séparée... Dans l'exemple qui suit, /boot se trouve sur (hd0,1) et la racine de votre système sur (hd0,2)
grub rescue> set prefix=(hd0,1)/grub grub rescue> set root=(hd0,2)
Chargeons les modules :
grub rescue> insmod linux grub rescue> insmod boot grub rescue> insmod normal
Et enfin, activons le mode normal (ouf !)
grub rescue> normal
À ce niveau, vous retrouvez votre menu "habituel" où vous pouvez faire les modifications plus aisément.
Si vous ne parvenez pas à démarrer votre machine avec les manipulations ci-dessus, lisez la suite...
La solution la plus simple
- 1. Procurez-vous Super Grub Disk sur le site officiel ou sur linux-live-cd.org
- Petite explication sur Super Grub Disk :
- La principale utilité de Super Grub Disk est de démarrer un système dont le Grub est en panne. Il peut aussi réparer Grub et le réinstaller sur le MBR ou sur une autre partition - PBR -(utilisateurs avancés).
- Il peut également restaurer le MBR d'origine en désinstallant Grub sans risquer de rendre votre ordinateur inutilisable après formatage de la partition Linux.
- Lorsque vous démarrez votre ordinateur avec Super Grub Ddisk, vous tombez sur un menu plus ou moins clair. Laissez-vous guider, vous devriez parvenir à trouver la bonne option pour démarrer sur votre Debian (Un tuto de Super Grub Disk viendra...)
- 2. Démarrer votre système en panne avec ce disque.
- 3. Réinstaller ou réparez Grub2
Solution avec un chroot
- Trouvez un Live CD et démarrez votre machine avec. N'importe quel Live CD à base de Debian fera l'affaire (Knoppix, Ubuntu, Sidux...)
Attention, si votre système est en 64bits, il faudra démarrer avec un LiveCD en 64bits
Deuxième étape: montage, et chrootage
- Ouvrez un terminal et tapez sudo fdisk -l (Permet de vérifier quelle partition est à "chrooter"...)
- Il faut trouver laquelle des partitions listée est votre installation GNU/Linux. Sur une installation "simple" ça ressemblera à ceci :
Device Boot Start End Blocks Id System /dev/hda1 * 1 5624 45174748+ 83 Linux /dev/hda2 5625 6110 3903795 82 Linux swap / Solaris /dev/hda3 6111 14946 70975170 5 Extended /dev/hda5 6111 14946 70975138+ 8e Linux LVM
La partition qui vous intéresse est /dev/hda1
- Il faut créer un répertoire ou vous allez monter cette partition, et monter votre partition système :
# mkdir /mnt/chroot # mount /dev/hda1 /mnt/chroot
Il est d'ailleurs probable que dans ce cas, /dev/hda1 soit votre partition /boot et /dev/hda2 la racine de votre système, soyez attentif à ce que vous faites.
- Une fois que la partition système est montée, il faut monter les périphériques que le Live CD a trouvé,
# mount --bind /dev/ /mnt/chroot/dev # mount -t proc /proc /mnt/chroot/proc # mount -t sysfs /sys /mnt/chroot/sys
- Le système est prêt à être "chrooté" :
# chroot /mnt/chroot
Il peut parfois être nécessaire, en fonction de votre système ou du LiveCD à partir duquel vous avez démarré d'ajouter /bin/bash à la commande
# chroot /mnt/chroot /bin/bash
- Si vous aviez créé une partition séparée pour /boot, il faut la monter (Nous montons cette partitions dans le chroot, sinon grub-mkconfig ne détecte pas que /boot est sur une partition séparée)
# mount /dev/hdxy /boot
- Vous êtes maintenant en tant que root sur votre système installé en dur.
Troisième étape: Réinstaller GRUB 2
Le paquet 'grub2' n'est pas indispensable, c'est ce que l'on appelle un "méta-paquet" il ne sert qu'a installer grub-pc et grub-common.
- Editez le fichier /etc/default/grub (uniquement si vous savez ce que vous faites!) selon vos besoins, et lancez ensuite la commande :
# update-grub
- Une fois le fichier /etc/grub/grub.cfg "réparé", tapez :
# grub-install /dev/hda
Je suppose ici que vous voulez installer GRUB sur le MBR du disque dur. Si vous savez ce que vous faites et que vous voulez l'installer sur le PBR d'une partition, tapez grub-install --force /dev/hda1
- Si l'étape se passe mal, essayez avec la commande
# grub-install --root-directory=/mnt/chroot/ --recheck /dev/hda
Pour des problèmes plus sérieux, et si les commandes ci-dessus ne donnent pas de résultat
Sortons l'artillerie lourde !
- D'abord installons, si ce n'est pas déjà fait os-prober
# aptitude install os-prober
- Effacer votre grub.cfg pour repartir de zéro :
Avant de lancer la commande ci-dessous, faire une sauvegarde (cp /boot/grub/grub.cfg /boot/grub/grub.bak)
# rm /boot/grub/grub.cfg
- Vérifiez que tous vos systèmes sont bien présents :
# os-prober
- Reconstruction du fichier /boot/grub/grub.cfg
# grub-mkconfig -o /boot/grub/grub.cfg
- Réinstallation de Grub2 dans le MBR avec les options de vérification
# grub-install --root-directory=/mnt/chroot/ --recheck /dev/hda
- Vérifiez que Grub2 est bien installé dans votre MBR :
# dd if=/dev/sda bs=512 count=1 | strings 1+0 enregistrements lus 1+0 enregistrements écrits 512 octets (512 B) copiés, 1,788e-05 s, 28,6 MB/s ZRr= `|f \|f1 GRUB Geom Hard Disk Read Error
C'est bon, il est présent ! > reboot (reboute) pour vérifier ! (n'oubliez pas de croiser les doigts...)
Démontage (c'est plus propre)
- Sortir du chroot :
$ exit
- Une fois que vous revenu à la console de base, démontez tous vos montages antérieurs
Si vous aviez un /
$ sudo umount /mnt/chroot/boot $ sudo umount /mnt/chroot/dev $ sudo umount /mnt/chroot/proc $ sudo umount /mnt/chroot/sys $ sudo umount /mnt/chroot
- Vous pouvez maintenant redémarrer votre machine, avec GRUB 2 correctement installé qui chargera votre système.
Rappel des commandes
Voici la liste de commandes que vous aurez à taper :
- $ sudo fdisk -l
- $ sudo mount /dev/hda1 /mnt/chroot
- $ sudo mount --bind /dev /mnt/chroot/dev
- $ sudo mount -t proc /proc /mnt/chroot/proc
- $ sudo mount -t sysfs /sys /mnt/chroot/sys
- $ sudo chroot /mnt/chroot
- # update-grub
- # grub-install /dev/hda (essayez grub-install --recheck /dev/hda si cela rate)
- # exit
- $ sudo umount /mnt/chroot/dev
- $ sudo umount /mnt/chroot/proc
- $ sudo umount /mnt/chroot/sys
- $ sudo umount /mnt/chroot
Lol 4 février 2010 à 16:43 (UTC)