Résolu Recuperer mon grub

bouzh

Habitué
Bonjour,j'avais 2 os sur ma machine xp+ubuntu tous marcher très bien ,après j'ai réinstaller xp sans formate ,alors j'ai perdu mon grub .au démarrage je trouve seulement xp .et je ne sais pas quoi faire aider moi svp
 

zeb

Modérateur
Meilleure réponse
Salut,

Ben réinstalle grub, pardi !

Windows est très mal poli, il ne s'occupe pas de savoir si un autre système existe sur le disque dur. Alors, il se pose là, et dégage tout autour de lui. Un vrai coucou. Comment que je te virerais un tel oiseau de mon disque dur, moi ! Bon, admettons que ce zozio te plaise quand même. :sarcastic:

Première des choses, vérifions que tes partoches Linux existent toujours.
Pour ça, démarre ta machine sous Linux... Ben oui. Même si t'as tout cassé, on va s'en sortir facilement. Utilise un LiveCD. Mon préféré, c'est SystemRescueCD. Mais je pense que tu préfèreras utiliser celui d'Ubuntu, puisque tu l'as sans doute sous la main. Or donc, après avoir démarré Ubuntu en mode "J'essaie avant d'installer", tu vas avoir le plaisir de jouer avec la ligne de commande. Eh, eh [:nyghost]

Ouvre donc un terminal (Konsole, xterm, tty [Ctrl+Alt+F1] au choix).[fixed]user@ubuntu:~$ _[/fixed]Te voilà au prompt.
user, c'est toi, ubuntu, c'est ta machine, ~ c'est le répertoire courant et $ indique que tu n'es qu'un vulgaire utilisateur.
Passons aux choses sérieuses[fixed]user@ubuntu:~$ su -
root@ubuntu:~# _[/fixed]Yeah. Le mot de passe de root n'existe pas a priori sur un système Live. Sinon, on pourra toujours lui forcer la main : [fixed]user@ubuntu:~$ sudo su -
root@ubuntu:~# _[/fixed]
root, c'est toi maintenant, ubuntu, c'est toujours ta machine, ~ c'est encore le répertoire courant et # indique que tu es tout puissant.

Attention, maintenant que tu as tous les droits, beaucoup de responsabilités t'incombent. Il s'agit de ne pas faire n'importe quoi.

Bon alors ces partitions ?
Un petit fdisk devrait nous en dire long :[fixed]# fdisk -l[/fixed](J'ai abrégé le prompt. # suffit à comprendre qui est le maître ! Le reste, c'est ce que tu dois taper)

Alors que dit cette commande sur ta machine ?
Vois-tu la partition Windows ?
Vois-tu les partitions Linux ?

C'est parti. Lance grub qui est la meilleure commande pour réparer grub :)
[fixed]# grub
grub>[/fixed]Te voilà devant un autre prompt.
Alors ces partitions Linux ?
grub n'est pas Linux, ni Windows, et il ne compte pas les disques et leurs partitions comme les autres.
Pour Windows, c'est simple, il ne compte pas les disques, seulement les partitions, indépendamment des disques : A:, B:, C:, D:, E: Il est même possible que C: et E: soit sur le même disque et D: sur un autre :pt1cable:
Pour Linux, c'est bien organisé : /dev/hda1, /dev/hda2, /dev/hdb1, /dev/hdb2, etc.
grub a dû être programmé par de vrais informaticiens ;) Il numérote disques et partoches, à partir de 0. (hd0,0) est la première partition du premier disque.

C'est aussi bien structuré que Linux, mais avec une syntaxe différente, les partitions grub et Linux se correspondent ainsi :
/dev/hda1 --> (hd0,0)
/dev/hdb3 --> (hd1,2)
Facile non ?

Il faut donc préciser quelle la partoche racine :[fixed]grub> root (hd0,X)[/fixed](A toi de voir quelle est la bonne ! A priori, X=1)

Et on réinstalle grub !
Oui, mais où ça ?
■ Dans le MBR, là où il était autrefois. C'est une bonne idée, puisque ça marchait bien comme ça.
[fixed]grub> root (hd0)[/fixed](Quand on ne précise pas un numéro de partition, c'est forcément dans le MBR)
Le problème c'est qu'on peut de nouveau l'écraser ! :/

■ Au début de la partoche Linux. Voilà une encore meilleure idée. Windows n'aura pas idée de venir le déloger de là !
[fixed]grub> setup (hd0,X)
grub> quit[/fixed](X est le même que tout à l'heure)

Maintenant, il faut dire au système de booter sur grub.
C'est le rôle du flag amorce (active in english) d'une des partitions du disque.

Attention, une seule partoche amorçable par disque !
C'est un truc tellement basique que tous les programmes de gestion de disque savent le faire. fdisk sous Linux, bien sûr, mais même la version Dos :D Pour plus de facilité, utilise cfdisk sous Linux
 

bouzh

Habitué
merci pour ton aide mais ,permettez moi de vous annonce que je suis novice dans ce monde
quant je tape :
ubuntu@ubuntu:~$ su - je recois
Mot de passe :
su : Échec d'authentification
 

zeb

Modérateur
salut,

Je ne comprends pas bien.
J'ai donné une alternative si un mot de passe était demandé.
De plus, en lisant ceci :
j'avais 2 os sur ma machine xp+ubuntu
Je pensais ne pas m'adresser à un novice.

D'autre part, ce topic est maintenant [résolu]. Est-ce bien le cas ?
 

shaeffer

Modérateur

Au lieu de taper :
[cpp]su -[/cpp]

Tape :
[cpp]sudo su -[/cpp]

Ca passera mieux. D'ailleurs je crois que ce que t'as donné Zeb est erroné car Ubuntu exploite grub-pc (GRUB2) et pas grub-legacy (l'ancien GRUB) et donc les commande diffèrent.
Je vais t'expliquer comment procéder.
Tout d'abord démarre sur ton LiveCD Ubuntu. Une fois loggé, tu ouvres une console et tu lances
[cpp]sudo su -[/cpp]
Après repère quel est ta partition ubuntu avec la commande fdisk -l cela doit être /dev/sdXY (X est la lettre de ton lecteur, Y ton numéro partition).

Suis ceci :
[cpp]sudo su
mkdir /mnt/root
mount /dev/sdXY /mnt/root
mount -t proc none /mnt/root/proc
mount -o bind /dev /mnt/root/dev
chroot /mnt/root /bin/bash
[/cpp]

Te voilà dans ton système.
Dernière étape :
[cpp]grub-install /dev/sdX
update-grub[/cpp]

Tu redémarres et c'est bon.

Autre chose Zeb, pour réparer Grub voilà l' . Il permet de restaurer Grub-legacy sans prise de tête et une version pour grub-pc est disponible.
 

zeb

Modérateur
shaeffer +1

-----------------

Cependant, il me semble avoir proposé la commande [fixed]sudo su -[/fixed] :o

[mauvaise foi]
Le mossieu ne précise pas quelle version d'ubuntu il exploite, et prétend utiliser grub. Or Jackalope est en Legacy, par exemple. Alors moi, je la lui fait grub, pas grub-pc !
[/mauvaise foi]

Concernant supergrubdisk, c'est une très bonne idée de l'avoir sous la main.

[fixed]grub-install /dev/sdX[/fixed]Ouh que je ne suis pas d'accord avec toi, shaeffer ! Pas de grub dans le MRB. C'est le meilleur moyen de se le faire écraser et de rencontrer le problème qui nous concerne.


______________________________________________


Il faut installer son chargeur (lilo, grub, grub-pc, etc)
au début de sa partoche amorçable Linux.


¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
[:flambyx:2]​

[fixed]grub-install /dev/sdXY
update-grub[/fixed]

-----------------

Rhalala. Pour éviter les problèmes, flanquez Windows à la porte, et utiliser LILO comme chargeur.
[:patch]
 

shaeffer

Modérateur


C'est vrai qu'il n'a pas précisé la version.
L'un des points forts de GRUB2 ce sont les scripts. Et il n'y aura aucun problème puisque le fichier 40_os-prober est là pour repérer les autres systèmes d'exploitation. update-grub se charge d'exécuter ces scripts.
 

shaeffer

Modérateur
Je ne connaît pas bien NTLDR, mais je crois qu'il est possible de lancer GRUB à partir de celui-ci. A voir sur la doc d'Ubuntu.
 

zeb

Modérateur
Je préfère amorcer Grub qui chargera NTloader que le contraire, pour la même raison que toi :
Je ne connaît pas bien NTLDR

Une bonne façon de faire pour bien connaître un truc Windows, c'est de le tester et d'en tirer une loi empirique. Avec la version qui suivra, il suffira de tout recommencer :/ :pfff:

Donc, utilisons ce que nous maîtrisons.

Je trouve que bouzh manque de réactivité. Sauf si son problème est déjà règlé ;)
 

bouzh

Habitué
merci les amis ,mais moi là je suis totalement perdu .j'ai suivi tous ce que vous m'avais dit mais helas ca n'a pas abouti .peut etre je vais suivre le conceil de zeb (utilisons ce que nous maitrisons.).
c'est vrai je manque de reactivite, mon probleme pas encore regle .il attend .pour votre information j'utilise ubuntu 9.04
 

zeb

Modérateur
Ah, revoilà bouzh :)

Dis donc, t'es pas très dégourdi ! Pourquoi as-tu passé ce topic en résolu, si ton problème ne l'est pas ?
Pis qu'est-ce que t'as pas compris à mon explication ? Elle est complète, donc un peu longue, mais comme tu manques un peu de r"activité, j'ai pensé tout te mettre d'un coup.

Or donc, je recommence. Que Shaeffer n'hésite pas à mettre lui aussi son grain de sel.

----------------------

U9.04, c'est Jackalope. Donc foin de grub-II-pécé ou que sais-je encore. C'est du bon vieux grub tout court, renommé grub legacy pour pas confondre.

Tu as essayé de démarrer de ton CD Ubuntu et de faire $ sudo su - ?
Non ! Ben fais-le. :o
Oui ! C'est bien, on continue.

Tape la commande suivante et donne-nous le résultat :[fixed]# fdisk -l[/fixed]
 

bouzh

Habitué
j'ai taper fdisk -l et voila ce que je recois:

Disque /dev/sda: 80.0 Go, 80026361856 octets
255 têtes, 63 secteurs/piste, 9729 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets
Identifiant de disque : 0x00140014

Périphérique Amorce Début Fin Blocs Id Système
/dev/sda1 * 1 3187 25599546 7 HPFS/NTFS
/dev/sda2 3188 9729 52548615 f W95 Etendue (LBA)
/dev/sda5 3188 7011 30716248+ 7 HPFS/NTFS
/dev/sda6 7012 9610 20876436 83 Linux
/dev/sda7 9611 9729 955836 82 Linux swap / Solaris
 

zeb

Modérateur
C'est bien.
Et donc, maintenant, il faut que je te répète ce que je t'ai déjà dit, c'est ça ?
 

bouzh

Habitué
j'ai repeter tous que vous m'avez dit , mais ca n'a pas marcher.peut etre que c'est chez moi
/dev/sda et vous vous m'avez dit / dev/hda ouf j'ai pas compris .
 

bouzh

Habitué
eh un grand merci les gars .ca a marché oui ca marche merci les amis vous etes des grands
meci a zeb et merci shaeffer parceque votre methode qui a marcher.
merci les amis maintenant je sais que je ne suis pas seul.
 

zeb

Modérateur
Nous ne sommes pas aujourd'hui plus grands que tu ne le seras dans quelques temps, si tu t'y mets un peu. Et comme nous acceptons volontiers d'aider les novices, tu peux nous solliciter.

Linux est un monde où tu trouveras facilement de l'aide pourvu que tu montres de l'enthousiasme et de la réflexion, de la recherche personnelle.

------------------------------------------------------------------

A propos de /dev/hda - /dev/sda

Le répertoire /dev contient des fichiers représentants tous les périphériques (device) de ta machine. Y compris les disques durs (hard disk), qui s'appellent donc historiquement /dev/hd...

Il y a très longtemps, [:glublutz:11], alors que n'existaient que les disques IDE, un nouveau type de périphériques de stockage de masse est apparu : le SCSI (prononcer [skeu-zi]). Une même machine pouvait contenir les deux types. On a donc créer des pilotes différents et des appellations différentes pour ce nouveau type. Les fichiers de périphériques se sont appelés /dev/sd....

Comme les pilotes SCSI étaient bien écrits, qu'ils savaient gérer les disques durs, les lecteurs optiques (apparus d'abord en SCSI), les graveurs (eux aussi), il a été plus facile d'émuler le mode SCSI pour certains périphériques IDE que de réécrire leurs pilotes.

Puis est venu le SATA. C'est à partir des pilotes SCSI qu'on est parti pour écrire les pilotes SATA. Et comme SCSI et SATA ont la même initiale, on les a confondu. Puis ces pilotes sont devenus tellement génériques qu'ils gèrent maintenant l'IDE.

Donc foin de /dev/hd... dans nos machines, les pilotes SATA gèrent tout !

Cependant, et pour la rétro-compatibilité, certaines distros placent des liens symboliques /dev/hd... -> /dev/sd...
 

bouzh

Habitué
merci zeb je repete et je le repete vous ete un grand , genereux ,et quelqu'un d'aimable je vous l'assure .il existe un proverbe trés ancien qui dit "l'art d'etre heureux ,c'est de s'enrichir chaque jour par un bien fait"
vous m'avez rendu un trés grand service vous et shaeffer parceque j'été sur le point de formaté mon ordi.
et merci pour le conceil .
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 098
Messages
6 717 065
Membres
1 586 286
Dernier membre
petitangebleu1977
Partager cette page
Haut