Fonctionnement du boot: multi-OS, MBR, Grub...

Fonctionnement du boot: multi-OS, MBR, Grub... - Logiciels - Windows & Software

Marsh Posté le 18-09-2008 à 11:24:55    

Bonjour,  
 
J'imagine que le sujet a été abordé maintes fois mais je me demandais s'il existait quelque part un tuto qui explique le principe du boot sur un PC, comment ça fonctionne, est-ce que le principe est le même quelque soit l'OS, quels sont les fichiers/principe (MBR, grub, boot.ini) utilisés par les différents systèmes... comment on répare un boot qui ne marche plus alors qu'il y a toujours un OS théoriquement fonctionnel sur l'un des HDD ou partition, y a-t-il un lien avec les types de partition (logique, primaire, active...). Bref, tout ce qu'il faut comprendre pour bien gérer proprement son PC, ses HD, ses partitions et les différents OS qu'on veut monter dessus.  
 
Partiquement, j'arrive à suivre quand il s'agit d'installer 2 windows sur un même PC. Mais j'aimerai bien essayer plusieurs OS différents (Linux, OS X86) en plus de Xp et/ou Vista et ne comprenant pas vraiment s'ils utilisent les mêmes principes/fichiers/secteurs... pour le boot, je ne sais pas très bien par quel "boot" (ah elle est bonne celle-là !!!) prendre le problème et dans quel ordre faire les choses.
 
Exemple: j'avais 2 Xp installés sur 2 partitions différentes (un "propre" pour l'utilisation quotidienne et un "test" quand je veux essayer un freeware ou un soft douteux).  
L'autre jour, je me suis lancé à installer Ubuntu 8.04 pour voir, sur une troisième paritition. Tout a bien marché sauf que le menu de séléction pour accéder à mes 2 Xp était passé en second plan au démarrage du PC: il fallait d'abord passer par le menu de séléction Ubuntu, choisi dedans l'option "Vista...(loader)" et ensuite j'arrivais sur mon second menu pour choisir quel XP démarrer.  
Rien de bien dramatique, mais j'aimerai bien comprendre le principe de fonctionnement du bazar... surtout que quand j'ai voulu retirer Ubuntu (ma femme n'y comprenait plus rien et voulait juste accéder à ses emails sur le "XP propre" facilement...), j'ai eu la bonne idée de sauvagement re-formatter via GParted les 2 partitions où j'avais installé linux (OS et Swap) en espérant retrouver pour menu de séléction Windows au redémarrage... Evidement, pas si simple et je me suis retrouvé avec un beau message d'erreur Grub machin truc.  
Ne sachant pas comment réparer tout ça (alors que mes 2 partitions Xp étaient toujours intactes) j'ai du lancer l'installation d'un 3ème XP, sans le mener jusqu'au bout, pour qu'il me répare le système de boot.  
 
Maintenant, c'est ok mais je voudrais vraiment comprendre ce qui se passe dans les entrailles de la bête pour éviter ce genre de bétise d'ignard... :D
 
Y'aurait pas un Grizzlybear dans la salle pour m'éclairer par exemple ou me recommander un bon site qui explique tout ça ? :hello:


Message édité par Globos le 18-09-2008 à 11:26:00
Reply

Marsh Posté le 18-09-2008 à 11:24:55   

Reply

Marsh Posté le 18-09-2008 à 11:33:49    

Si l'anglais ne t'effraie pas, voilà le site :
http://www.boot-land.net/forums/

Reply

Marsh Posté le 18-09-2008 à 11:47:57    

Super. Je vais potasser ça... Merci !
Maintenant, bien que l'anglais ne m'effraie pas plus que ça, c'est toujours plus agréable dans sa langue maternelle : si d'autres ont des adresses de sites en Français ou l'envie d'écrire un bon tuto, je ne vous retiens pas... ;)


Message édité par Globos le 18-09-2008 à 11:48:27
Reply

Marsh Posté le 18-09-2008 à 21:24:48    

Globos a écrit :

Y'aurait pas un Grizzlybear dans la salle ?


Mort de rire !  Je vais prendre ça comme un compliment !  :lol:  
 
En fait c'est assez simple mais ça se complique dès qu'on ajoute la dimension Linux à l'affaire.  C'est assez long à expliquer, peux pas faire ça depuis le bureau mais en gros, le MBR sert à décider sur quelle partition primaire le BIOS doit chercher le système d'exploitation à charger.  Ensuite, il y a la 2e couche, celle du boot manager qui peut être installé soit sur le MBR, soit sur la partition d'un OS (comme le propose Microsoft, quand il te demande sur quel XP tu souhaites démarrer).  C'est plus simple d'avoir un seul et unique boot manager dans le MBR.  Sauf que s'il arrive un p'tit soucis, il faut faire le ménage dedans depuis la console de récupération de Windows, avec la commande fixmbr.  Ça effacera ton MBR.
 
Une fois le MBR effacé, c'est une question d'activation.  Sur les 4 partitions primaires que l'on peut créer sur un disque, il y en a une seule qui peut être active (tu as sûrement déjà vu ça dans les vieilles commande fdisk de DOS). C'est l'OS de la partition active qui démarrera. Tout simplement.  Donc en fait, ce que fait un boot manager, c'est assez simple : il active la partition de l'OS que tu choisis dans le menu de démarrage puis il ordonne à l'ordi de poursuivre le démarrage.  En réalité c'est beaucoup plus compliqué mais bon, c'est pour vulgariser. :)


Message édité par GrizzzlyBear le 18-09-2008 à 21:25:06
Reply

Marsh Posté le 18-09-2008 à 22:10:41    

Je savais que je pouvais compter sur toi... ;)
 
Donc pour résumer: sur chaque HDD, il y a une zone qui correspond au MBR et qui définit quelle partition de ce disque (ou des autres?) est active ? Via le bios de la carte mère, on définit l'ordre dans lequel on veut "attaquer" chaque HDD et donc quel MBR on veut interroger. Ce MBR, c'est une zone indépendante du système de fichier du DD ou il peut être effacé par un formatage par exemple ?
 
Autre question : le "boot manager", qui peut être comme tu dis sur le MBR ou sur la partition d'un OS, c'est un fichier, un programme ? Le boot.ini, c'est ça ? Spécifique à Windows ? Est-ce que chaque type d'OS a son propre système de "boot manager" ?
 
Désolé de te bombarder avec toutes ces questions (et encore, j'en ai d'autres...), mais s'il y en a bien un qui est capable de m'éclairer, c'est toi  :D


Message édité par Globos le 18-09-2008 à 22:13:48
Reply

Marsh Posté le 18-09-2008 à 22:18:03    

Ouf, c'est long à expliquer tout ça. C'est un véritable cours que tu me demandes d'écrire là. Je vais tenter de te pondre un truc quand je serai rentré chez moi.  ;)
 
En attendant, va lire ça : http://fr.wikipedia.org/wiki/Master_boot_record


Message édité par GrizzzlyBear le 18-09-2008 à 22:20:18
Reply

Marsh Posté le 18-09-2008 à 22:31:23    

GrizzzlyBear a écrit :

Ouf, c'est long à expliquer tout ça. C'est un véritable cours que tu me demandes d'écrire là. Je vais tenter de te pondre un truc quand je serai rentré chez moi.  ;)


Génial, je me régale d'avance... :pt1cable:  
 
En attendant, je vais lire la littérature que tu me conseilles, histoire de pouvoir te poser plus tard des questions moins bêtes  :ange:  
 
Pour te motiver, dis-toi qu'il n'y a pas grand chose de dispo sur le net qui explique ces choses là pour les débutants : tu seras un pionnier, des tas de gens vont découvrir en te lisant des trucs qu'ils n'imaginaient même pas avant, tu va devenir célèbre...  
d'ailleurs, je me demande bien pourquoi ces questions sont si peu souvent traitées  :??:  ça me parait tellement important, surtout aujourd'hui avec le développement des plate-formes multi-OS. Non ?

Reply

Marsh Posté le 18-09-2008 à 22:35:22    

Globos a écrit :

Pour te motiver, dis-toi qu'il n'y a pas grand chose de dispo sur le net qui explique ces choses là pour les débutants. D'ailleurs, je me demande bien pourquoi ces questions sont si peu souvent traitées.

Pourtant si, mais c'est surtout en anglais. Ce genre de question a déjà été traitée des dizaines de fois sur les forums comme celui-ci mais les gens sont paresseux, ils ne savent pas faire des recherches sur les forums.  :sarcastic:  
 

Globos a écrit :

tu seras un pionnier, des tas de gens vont découvrir en te lisant des trucs qu'ils n'imaginaient même pas avant, tu va devenir célèbre...

Arrête tes conneries. :D

Reply

Marsh Posté le 18-09-2008 à 22:49:29    

GrizzzlyBear a écrit :

Pourtant si, mais c'est surtout en anglais. Ce genre de question a déjà été traitée des dizaines de fois sur les forums comme celui-ci mais les gens sont paresseux, ils ne savent pas faire des recherches sur les forums.  :sarcastic:  
 


 
Bah, franchement, j'ai cherché un peu mais n'ai pas trouvé quelque chose qui traite du sujet de façon exhaustive. Très souvent des sujets liés à des situations bien précises, en particulier pour des dépannages, mais je n'ai pas trouvé de tuto vraiment complet sur le sujet. Et puis, je trouve que tu expliques bien... :D

Reply

Marsh Posté le 19-09-2008 à 00:10:19    

Globos a écrit :

j'ai cherché un peu

:p  
 
En gros, pour démarrer, voici comment fonctionne un PC :
 
1) Dans le BIOS, sur quel périph dois-je me brancher en premier ?  La disquette ?  Il n'y en a pas !  Ensuite le lecteur CD ?  Rien dedans !  Ensuite le disque dur numéro 1 ?  Parfait, je passe le relai au MBR du disque 1 !
 
2) Lecture du MBR du disque 1.  Comme tu l'as lu sur Wiki, c'est une petite zone de 512 octets au début du disque, qui indique où sont localisées les tables d'allocation de chaque partition primaire et qui indique laquelle est active.  Et il reste même de la place pour y installer un petit logiciel qu'on appelle le boot manager (comme Grub par exemple), qui permet d'afficher un menu pour choisir sur quelle partition on souhaite démarrer.  Le MBR n'est pas effacé lorsqu'on formate, crée ou supprime des partitions.  Le seul moyen de le ré-initialiser c'est la commande fdisk /mbr sous DOS ou fixmbr sous la console de récupération d'XP, ou encore bootrec /FixMbr dans la console de récupération de Vista.
 
Si tu n'as pas installé de boot manager, le MBR du disque 1 va chercher la partition active.  S'il n'y en a pas, tu auras droit à un superbe message d'erreur disant qu'il n'y a pas d'OS sur le disque dur.
 
Si tu as une partition active, l'ordi va regarder dedans à je ne sais plus quelle adresse les instructions pour charger l'OS.  Si la partition a été fraîchement formatée ou que les fichiers essentiels au chargement de l'OS ont été déplacés, tu auras droit au même message du BIOS, disant qu'aucun OS n'est dispo sur le disque.
 
Si tu as installé un boot manager, il s'occupera d'activer la partition que tu as choisie dans le menu et il passera le relai au BIOS (je crois) pour que ce dernier lise les instructions de chargement de l'OS dans le fichier situé à l'adresse machin truc de la partition.
 
Et voilà, ensuite l'OS se charge.  Autrefois, les autres partitions primaires restaient cachées et inaccessibles.  Mais depuis Windows XP, il est possible de lire dans les partitions primaires non actives.
 
Si en plus tu as utilisé le boot manager intégré à Windows (celui qui est rattaché au fichier boot.ini), ben tu auras droit à un autre menu qui te demandera sur quel Windows tu souhaites démarrer.  C'est un truc inventé par Microsoft pour que les gens puissent installer Windows sur des partitions logiques (des fausses partitions, qui sont en fait des divisions d'une partition étendue).  Et du coup, ils ont ajouté la notion de partition "démarrable".  C'est un truc propre à Windows.
 
En gros, le fonctionnement du boot manager intégré à Windows c'est :
 
1) On démarre toujours sur la même partition active, très souvent la première du disque.
 
2) Au moment de démarrer, Windows se rend compte qu'il y a des trucs dans boot.ini et du coup, il affiche son menu de démarrage. S'il y a, par exemple, 2 entrées pour 2 partitions Windows, il te demande sur laquelle tu souhaites démarrer.
 
3) Si tu choisis le Windows de l'autre partition, il se débrouillera pour lui passer la main pour qu'il démarre.  Il ne touchera pas à l'activation des partitions car s'il active l'autre partition alors que le boot.ini de l'autre Windows n'est pas configuré, ben ce serait pas beau au prochain démarrage !  Windows ne s'imagine pas que tu as un boot manager dans le MBR.
 
Donc voilà pour le principe des boot manager localisés sur le MBR versus ceux qui sont intégrés à un OS.  Maintenant tu es un pro des ordis multi-OS.  :D


Message édité par GrizzzlyBear le 19-09-2008 à 00:10:42
Reply

Marsh Posté le 19-09-2008 à 00:10:19   

Reply

Marsh Posté le 19-09-2008 à 14:29:25    

Merci mon Grizzlybear, t'es un chef !
Je vais potasser tout ça une fois rentré chez moi (suis au bureau là, pas vraiment censé faire ça...) pour voir si j'ai tout compris.
 
Et puis va falloir épingler ce topic dans la liste des incontournables... ;)

Reply

Marsh Posté le 19-09-2008 à 14:32:04    

Ce sujet a été déplacé de la catégorie Hardware vers la categorie Windows & Software par DraCuLaX


---------------
| Un malentendu du cul | boum boum ! | La roulette
Reply

Marsh Posté le 29-08-2011 à 18:58:59    

Merci pour cette vulgarisation, ça peut être utile. J'en veux pour preuve mon passage :o
 
je complète un peu le topic, puisque je suis pas sûr d'avoir toutes les infos nécessaires
 
mon cas :
je souhaitais upgrader une config sous XP en passant d'un DD IDE vers un SATA sur contrôleur PCI.
Surprise : le contrôleur ne boot pas :/
 
ma question, c'est après avoir cloner le DD IDE et modifier le boot.ini (remplacer multi(0)disk(0)partition(1)\WINDOWS par
multi(1)disk(0)partition(1)\WINDOWS je crois, puisque le controleur n'est plus le même), que faut il que je laisse dessus pour pouvoir lancer le boot sur le SATA ?
Le MBR et le boot.ini peuvent suffire ?
 
Sinon, j'avais idée d'installer un bootmanager seul, mais je vois pas lequel ...  [:klemton]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed