[Dualboot] Mon ordi ne boot plus !!!

Résolu
harley31 Messages postés 92 Date d'inscription   Statut Membre Dernière intervention   -  
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour à tous,

Je suis très surpris de voir que mon ordi ne boot plus !


En effet, je viens d'installer "mon premier linux" à coté de Windows 7 (pré-installé). Normalement, c'est linux qui se charge du dual-boot, mais, sans auqune raison particulière, je n'accède plus à la liste. à la place, le message suivant s'affiche : (environ)
unkown file system
grub rescue>_


Etant donné que ce n'est pas la première fois que ça m'arrive, je décide de refaire ce que j'avais déjà fait : réinstaller linux. Mais la, toujours le même cirque, alors j'ai supprimé la partition linux pour que ma carte mère trouve directement Windows, mais là :

error: no such partition.
grub rescue>_


Je ne sait plus quoi faire ...

Merci d'avance.
A voir également:

11 réponses

mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
C'est normal. Un disque dur est scindé en plusieurs zones (les partitions) + une en-tête (le MBR). Grub, le menu qui permet de choisir entre lancer linux ou windows, est installé dans le fameux MBR. Ainsi supprimer les partitions linux ne supprime pas grub.

- 1ère solution (bof bof) : nettoyer le MBR (fixmbr etc...) et oublier linux (snif)
http://doc.ubuntu-fr.org/desinstallation#cas_2_suppression_d_un_multi-amorcage

- 2ème solution (bof) : réinstaller linux en installant correctement grub, et écraser ainsi le grub caduque.

- 3ème solution : régénérer un grub propre sans altérer ni linux ni windows, afin que tout marche correctement, ce qui aurait dû se passer dès le début. Une telle réparation se fait simplement à l'aide d'un CD d'installation ubuntu :
http://doc.ubuntu-fr.org/tutoriel/comment_restaurer_grub

Personnellement je te conseille l'approche par chroot c'est celle que j'utilise.

1) Démarre sur le live CD et choisis "tester ubuntu sans rien modifier" (ou truc dans le genre)
2) Ouvre un terminal : http://doc.ubuntu-fr.org/terminal et passe en root (administrateur) grâce à la commande :

sudo -s


3) Il repérer la partition / associée à linux (en théorie tu as fait 3 partitions, /, /home et la swap). Tape la commande suivante (derrière le "-", c'est la lettre L minuscule) :

fdisk -l


Ça va par exemple ressembler à ceci :

Disk /dev/sda: 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x802b81ca

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        1275    10241406    7  HPFS/NTFS
/dev/sda2            1276        4740    27832612+  83  Linux
/dev/sda3            4741        4865     1004062+  82  Linux swap / Solaris

Disk /dev/sdb: 82.3 GB, 82348277760 bytes
255 heads, 63 sectors/track, 10011 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4707841a

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1       10011    80413326    b  W95 FAT32


Ici il y a deux disques dur (/dev/sda et /dev/sdb) respectivement divisés en 3 partitions (/dev/sda1 à /dev/sda3) et 1 partition. Ici la seule partition Linux est /dev/sda2 donc ce serait celle là. Dans ton cas il y aura peut-être une ambiguïté entre / et /home.

Supposons que la partition /dev/sda1 soit susceptible d'accueillir /. Tape :

mkdir -p /mnt/linux
mount /dev/sda1 /mnt/linux
ls /mnt/linux


Si dans la dernière commande tu vois apparaître boot, bin, etc, c'est gagné et passe à l'étape 4. Sinon démonte cette partition en tapant :

umount /mnt/linux


... et essaye avec une autre partition (par exemple /dev/sda2) :

sudo mount /dev/sda2 /mnt/linux
ls /mnt/linux


4) Ok le plus dur est fait ! Maintenant on monte encore deux trois bricoles et on répare le tout :

mount -o bind /dev /mnt/linux/dev
chroot /mnt/linux
mount /proc
mount /sys
update-grub
umount /sys
umount /proc
exit
umount /mnt/linux/dev
reboot


Normalement ton grub devrait alors fonctionner correctement !

Bonne chance
2
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Salut,

Voir dans la FAQ : SuperGrubDisk
0
harley31 Messages postés 92 Date d'inscription   Statut Membre Dernière intervention   1
 
Merci, je vais essayer tout ça
0
harley31 Messages postés 92 Date d'inscription   Statut Membre Dernière intervention   1
 
Alors mamiemando, je ne comprend pas :
"Supposons que la partition /dev/sda1 soit susceptible d'accueillir"
Accueillir quoi ?

En fait, voici ce que j'obtient :

Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x23125307

Device Boot Start End Blocks Id System
/dev/sdb1 1 52 409600 27 Unknown
Partition 1 does not end on cylinder boundary.
/dev/sdb2 * 52 5151 40964783+ 7 HPFS/NTFS
/dev/sdb3 5152 15465 82839858 5 Extended
/dev/sdb4 29794 30402 4882432 83 Linux
/dev/sdb5 5152 10250 40957686 7 HPFS/NTFS
/dev/sdb6 10251 15221 39929526 7 HPFS/NTFS
/dev/sdb7 15222 15465 1951744 82 Linux swap / Solaris

Disk /dev/sdc: 2093 MB, 2093481984 bytes
32 heads, 63 sectors/track, 2028 cylinders
Units = cylinders of 2016 * 512 = 1032192 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x6e826346

Device Boot Start End Blocks Id System
/dev/sdc1 * 1 1874 1888960+ c W95 FAT32 (LBA)
root@ubuntu:~#

J'ai une partition de recup, le windows, deux partitions de documents, swap, libre et linux (partition primaire).
Bien evidament, je ne souhaite pas perdre Windows.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
"Supposons que la partition /dev/sda1 soit susceptible d'accueillir"

Accueillir la partition "/". Le système Linux quoi :-)
A priori c'est/dev/sdb4 chez toi.
Truc étrange, tu n'as pas de disque /dev/sda...

Donc bref, tu fais ce que je t'ai indiqué en changeant simplement /dev/sda1 par /dev/sdb4.

Bonne chance
0
harley31 Messages postés 92 Date d'inscription   Statut Membre Dernière intervention   1
 
ça me donne ça:

root@ubuntu:~# mount -o bind /dev /mnt/linux/dev
root@ubuntu:~# chroot /mnt/linux
root@ubuntu:/# mount /proc
root@ubuntu:/# mount /sys
root@ubuntu:/# update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.35-22-generic
Found initrd image: /boot/initrd.img-2.6.35-22-generic
Found memtest86+ image: /boot/memtest86+.bin
ls: ne peut accéder /casper-rw-backing: Aucun fichier ou dossier de ce type
ls: ne peut accéder /casper-rw-backing: Aucun fichier ou dossier de ce type
ls: ne peut accéder /casper-rw-backing: Aucun fichier ou dossier de ce type
ls: ne peut accéder /casper-rw-backing: Aucun fichier ou dossier de ce type
ls: ne peut accéder /casper-rw-backing: Aucun fichier ou dossier de ce type
ls: ne peut accéder /casper-rw-backing: Aucun fichier ou dossier de ce type
ls: ne peut accéder /casper-rw-backing: Aucun fichier ou dossier de ce type
done
root@ubuntu:/# umount /sys
root@ubuntu:/# umount /proc
root@ubuntu:/# exit
exit
root@ubuntu:~# umount /mnt/linux/dev


ça ne marche qu'a moitié

En faisant avec sdb1, j'ai ça :
root@ubuntu:~# mkdir -p /mnt/linux
root@ubuntu:~# mount /dev/sdb1 /mnt/linux
root@ubuntu:~# ls /mnt/linux
Boot bootmgr BOOTSECT.BAK Recovery System Volume Information



Lequel prendre en sachant que je n'ai pas essayé la manoeuvre sur sdb1 mais étant donné qu' il s'agit de la partition d'origine (recup je crois) je ne préfère pas y toucher (pc portable et Windows pré-installé).
0
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
Je ne sais pas ce que c'est que ce casper-rw-backing. Reprends la même procédure en lançant la commande suivante après avoir fait un chroot :

mount /casper-rw-backing


... et en ajoutant avant le exit :

umount /casper-rw-backing


Sinon inspire-toi de ce qui est dit ici :
http://ubuntuforums.org/showthread.php?t=1490379

... ou prend l'approche officielle :
http://doc.ubuntu-fr.org/tutoriel/comment_restaurer_grub#procedure_standard

Bonne chance
0
harley31 Messages postés 92 Date d'inscription   Statut Membre Dernière intervention   1
 
au fait, lorsque j'installe ubuntu, dans la rubrique : "chargeur d'amorçage" je sélectionne la racine du hdd (soit /dev/sdb +ref...) ou alors je sélectionne /dev/sdb4 ?
0
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
Ton boot loader doit être placé sur /dev/sdb (le MBR du disque). /dev/sdb4 c'est ta partition système (/).
0
harley31 Messages postés 92 Date d'inscription   Statut Membre Dernière intervention   1
 
Finalement, après avoir réinstallé linux sur sdb4 et le chargeur d'amorçage sur /sdb ; tut s'est résorbé, en fait, lorsque j'ai essayé de réinstaller linux, j'ai placé le chargeur d'amorçage sur la même partition que linux.

tout est fini et encore merci mamiemando
0
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
Pas de soucis, bonne continuation sous Linux !
0