Le multiboot avec Vista - Etude préliminaire
Le
William Marie
Déjà qu'est-ce que le multiboot ? La réponse triviale et évidente est de
dire que c'est une technique pour lancer plusieurs systèmes installés sur un
même ordi. Mais ce n'est pas suffisant si l'on considère que les systèmes en
question doivent être sécurisés, c'est à dire que si l'un tombe pour une
raison quelconque, les autres ne doivent pas en pâtir et rester impassibles
et accessibles.
Or j'ai lu quelques sottises à ce sujet et je ne ferais pas la vacherie de
mettre ici l'adesse du site (et d'autres) de certains qui affirment (et
critiquent) le principe même du multiboot comme mettant "tous les oeufs dans
le même panier" (c'est l'expression qui a été employée) car tout dépend du
système installé sur la première partition.
Cela va complètement à l'encontre du principe de sécurité et d'isolement des
systèmes, car ce ne sont pas eux qui gèrent le multiboot, il ne doit y avoir
_aucun_ système sur la première partition (la seule qui soit principale et
activée sur un ordi), juste le système d'aiguillage qui branche sur les
systèmes, eux même logés dans des unités logiques. Même la destruction de la
partition principale ne sera qu'un incident mineur car il est aisé de la
reconstituer et, dans tous les cas, sans même attendre cette réparation il
sera possible d'atteindre les systèmes par des disquettes de démarrages
(voire des CD car dans certains cas, notamment Vista, ça sera un peu trop
juste sur une disquette).
Rappelons pour la bleusaille qu'un PC à l'allumage, après avoir vérifié en
lançant la routine POST (Power On Self Test) que tout ses périfs internes
sont bien là et qu'on ne lui a rien piqué pendant qu'il avait le DOS tourné,
va chercher sur les disques autorisés pour le boot s'il n'y a pas un Master
Boot Record (MBR) qui lui convient. Rien à voir avec un diplome d'IUT de
cordonnerie (en ai-je été perplexe à mes débuts quand on me parlait de
"bootstrap") mais cette appellation désigne un tout petit programme de 512
octets, situé à une adresse bien précise du début de la partition principale
et qui est destiné à lancer d'autres petits programmes lesquels vont à leur
tout lancer le système d'exploitation proprement dit.
Il est donc évident qu'il y a autant de MBR que de types de système. Citons
les plus courants :
1. l'ancètre du MS-DOS (et des Windows 3.1, 95 et 98) qui branche sur les
fichiers io.sys et msdos.sys
2. celui des Windows évolués (NT4, 2000, XP) qui branche sur ntldr
3. celui des Linux qui branche sur LILO (LInux LOader)
4. et enfin, le petit dernier, celui de Vista qui branche sur bootmgr
Bien sûr ces MBR sont incompatibles entre eux. Les conversions/adaptations
sont l'oeuvre d'utilitaires dédiés situés sur les systèmes en cours
d'installation. Ainsi le MBR MS-DOS de Win 98 est-il changé automatiquement
lors de l'installation d'un Windows NT4, 2000 ou XP, lequel en profite pour
mettre l'ancien MBR en un petit fichier de 512 Ko qui servira, comme
paramètre dans boot.ini à atteindre un Win 98 comme si il était parti de son
proper MBR. Ce système d'OS loader des NT et successeurs était bien pratique
car très simple et peu encombrant (tenant sur une disquette) et permettant
de lancer aussi des Linux à condition d'avoir laissé leur LILO dans /boot et
d'avoir confectionné un fichier d'amorçage comme celui de MS-DOS. Il existe
aussi d'autres utilitaires d'aiguillage de système mais pourquoi aller
chercher ailleurs ce qu'on a sous la main et qui fonctionne très bien (et
que Windows vous remettra d'office, de toute façon, en cas de réparation)
Mais ce brave Steve Balmer a dû trouver que ça marchait trop bien et que
c'était trop simple et il a tout changé dans Windows Vista. Ce qui fait que
votre modeste serviteur s'est retrouvé penaud car il était impossible
d'installer Vista sur un PC déjà configuré en multiboot même en réservant
une place douillette à ce nouveau bouffeur de ressource. Après un
décompactage de fichiers, Vista faisait une grosse colère et supprimait ce
qu'il avait commencé.
Après m'être demandé si ce Vista avait entendu parlé du multiboot et ayant
vu dans quelques sites la description de quelques (mauvaises) installations
en ce sens j'ai compris qu'il était, plus simplement, allergique au
formatage FAT (FAT16 dans mon cas, mais il est dit qu'il n'apprécie pas plus
le FAT32).
Donc pour confirmer tout ça, rien ne vaut une petite manip expérimentale (à
rajouter à l'examen MCP Vista) :
1. Dégottez un disque dur amovible pour la circonstance (pas d'autres
disques en service sur le PC). 30 Go PATAniques suffiront.
2. Avec Partition Magic (8.05 recommandé) faites une partition principale de
100 Mo en NTFS de 100 Mo, activée. Appelez la BOOT. Complétez avec une unité
logique de 5 Go, NTFS aussi, appelée NT-XP. Profitez-en pour tirer la
partition étendue au reste du disque. Terminé avec PM 8. Reboutez.
3. Installez un Win XP Pro dans l'unité logique NT-XP. Mettez l'explorateur
en visibilité des fichiers cachés et système et regardez ce qu'il y a dans
BOOT (C:) comme fichiers :
a. des fichiers bidons (ou placeholders) autoexec.bat, config.sys, io.sys
et msdos.sys
b. les fichiers de l'OS loader : ntldr, ntdetect.com, boot.ini (fichier
texte des OS à lancer), bootfon.bin (accessoire de police)
Formatez une disquette sous XP (et pas sous un MS-DOS ou un Win 98) et
mettez y ces fichiers. Vous avez une disquette de démarrage de Win NT
4. Installez Vista en lui demandant de se tailler une place de 15 Go dans
l'espace libre.
5. Vous aurez, ô joie, un multiboot installé présenté à peu près à la façon
NT mais qui sera bien plus difficile à éditer car l'essentiel se trouve dans
un fichier BCD, en pur binaire, et qui ne se manipule qu'avec bcdedit et qui
fait passer les pires utilitaires Unix en ligne de commande pour des
amusements d'ados prépubères.
On peut s'étonner toutefois que Vista a perturbé le lettrage d'origine : la
partition Vista est C:, celle du Boot D: et celle de NT-XP E:. Et si on
interroge Steve Balmer pour lui demander s'il va nous enquiquiner longtemps
avec ces fichues lettres qui remontent au MS-DOS v2, ses yeux s'illuminent
d'un éclat blanc, il tripote nerveusement un étrange bracelet et déclare
d'une voix rauque que si on n'est pas content des lettres il mettra des
symboles goa'ulds dans Longhorn. Donc évitez de critiquer un Grand Maître.
Revenons un peu sur la structure de boot spécial Vista. Sans rien retirer
des fichiers de l'OS loader NT il a rajouté les fichiers
- bootmgr (429 ko) le pendant de ntldr
- bootsect.bak (8 Ko) ?
- satE99.tmp (0 Ko) ?
et un dossier Boot (ça doit être lui qui est incompatible avec le format
FAT) comprenant les fichiers
- bcd (24 Ko) (qui remplace boot.ini)
- bcd.log (avec log1 et log2) ça doit être des archives
- bootstatt.dat ?
- memtest.exe (un testeur de mémoire)
et une série de sous-dossiers de fichiers linguistiques
Conclusion : Oui ! le mutiboot est possible avec Vista. Mais il faudra
renoncer définitivement au MS-DOS. Il doit être peut-être possible de lancer
un Linux à condition d'apprivoiser la syntaxe du BCD.
Ceux qui ont suivi les conseils de tonton William sur son site concernant
l'organisation du multiboot devraient s'en tirer aux moindres frais. Il
suffit de reformater la partition BOOT de 100 Mo en FAT 16 en NTFS et d'y
remettre les fichiers de l'OS loader NT avant d'empoigner le DVD Vista.
En hopant que tout ceci vous helpe.
--
William Marie
Attention antiSpam remplacer trapellun.invalid
par free.fr
Web : http://wmarie.free.fr
http://www.pandemonium.dnsalias.org (site expérimental)
dire que c'est une technique pour lancer plusieurs systèmes installés sur un
même ordi. Mais ce n'est pas suffisant si l'on considère que les systèmes en
question doivent être sécurisés, c'est à dire que si l'un tombe pour une
raison quelconque, les autres ne doivent pas en pâtir et rester impassibles
et accessibles.
Or j'ai lu quelques sottises à ce sujet et je ne ferais pas la vacherie de
mettre ici l'adesse du site (et d'autres) de certains qui affirment (et
critiquent) le principe même du multiboot comme mettant "tous les oeufs dans
le même panier" (c'est l'expression qui a été employée) car tout dépend du
système installé sur la première partition.
Cela va complètement à l'encontre du principe de sécurité et d'isolement des
systèmes, car ce ne sont pas eux qui gèrent le multiboot, il ne doit y avoir
_aucun_ système sur la première partition (la seule qui soit principale et
activée sur un ordi), juste le système d'aiguillage qui branche sur les
systèmes, eux même logés dans des unités logiques. Même la destruction de la
partition principale ne sera qu'un incident mineur car il est aisé de la
reconstituer et, dans tous les cas, sans même attendre cette réparation il
sera possible d'atteindre les systèmes par des disquettes de démarrages
(voire des CD car dans certains cas, notamment Vista, ça sera un peu trop
juste sur une disquette).
Rappelons pour la bleusaille qu'un PC à l'allumage, après avoir vérifié en
lançant la routine POST (Power On Self Test) que tout ses périfs internes
sont bien là et qu'on ne lui a rien piqué pendant qu'il avait le DOS tourné,
va chercher sur les disques autorisés pour le boot s'il n'y a pas un Master
Boot Record (MBR) qui lui convient. Rien à voir avec un diplome d'IUT de
cordonnerie (en ai-je été perplexe à mes débuts quand on me parlait de
"bootstrap") mais cette appellation désigne un tout petit programme de 512
octets, situé à une adresse bien précise du début de la partition principale
et qui est destiné à lancer d'autres petits programmes lesquels vont à leur
tout lancer le système d'exploitation proprement dit.
Il est donc évident qu'il y a autant de MBR que de types de système. Citons
les plus courants :
1. l'ancètre du MS-DOS (et des Windows 3.1, 95 et 98) qui branche sur les
fichiers io.sys et msdos.sys
2. celui des Windows évolués (NT4, 2000, XP) qui branche sur ntldr
3. celui des Linux qui branche sur LILO (LInux LOader)
4. et enfin, le petit dernier, celui de Vista qui branche sur bootmgr
Bien sûr ces MBR sont incompatibles entre eux. Les conversions/adaptations
sont l'oeuvre d'utilitaires dédiés situés sur les systèmes en cours
d'installation. Ainsi le MBR MS-DOS de Win 98 est-il changé automatiquement
lors de l'installation d'un Windows NT4, 2000 ou XP, lequel en profite pour
mettre l'ancien MBR en un petit fichier de 512 Ko qui servira, comme
paramètre dans boot.ini à atteindre un Win 98 comme si il était parti de son
proper MBR. Ce système d'OS loader des NT et successeurs était bien pratique
car très simple et peu encombrant (tenant sur une disquette) et permettant
de lancer aussi des Linux à condition d'avoir laissé leur LILO dans /boot et
d'avoir confectionné un fichier d'amorçage comme celui de MS-DOS. Il existe
aussi d'autres utilitaires d'aiguillage de système mais pourquoi aller
chercher ailleurs ce qu'on a sous la main et qui fonctionne très bien (et
que Windows vous remettra d'office, de toute façon, en cas de réparation)
Mais ce brave Steve Balmer a dû trouver que ça marchait trop bien et que
c'était trop simple et il a tout changé dans Windows Vista. Ce qui fait que
votre modeste serviteur s'est retrouvé penaud car il était impossible
d'installer Vista sur un PC déjà configuré en multiboot même en réservant
une place douillette à ce nouveau bouffeur de ressource. Après un
décompactage de fichiers, Vista faisait une grosse colère et supprimait ce
qu'il avait commencé.
Après m'être demandé si ce Vista avait entendu parlé du multiboot et ayant
vu dans quelques sites la description de quelques (mauvaises) installations
en ce sens j'ai compris qu'il était, plus simplement, allergique au
formatage FAT (FAT16 dans mon cas, mais il est dit qu'il n'apprécie pas plus
le FAT32).
Donc pour confirmer tout ça, rien ne vaut une petite manip expérimentale (à
rajouter à l'examen MCP Vista) :
1. Dégottez un disque dur amovible pour la circonstance (pas d'autres
disques en service sur le PC). 30 Go PATAniques suffiront.
2. Avec Partition Magic (8.05 recommandé) faites une partition principale de
100 Mo en NTFS de 100 Mo, activée. Appelez la BOOT. Complétez avec une unité
logique de 5 Go, NTFS aussi, appelée NT-XP. Profitez-en pour tirer la
partition étendue au reste du disque. Terminé avec PM 8. Reboutez.
3. Installez un Win XP Pro dans l'unité logique NT-XP. Mettez l'explorateur
en visibilité des fichiers cachés et système et regardez ce qu'il y a dans
BOOT (C:) comme fichiers :
a. des fichiers bidons (ou placeholders) autoexec.bat, config.sys, io.sys
et msdos.sys
b. les fichiers de l'OS loader : ntldr, ntdetect.com, boot.ini (fichier
texte des OS à lancer), bootfon.bin (accessoire de police)
Formatez une disquette sous XP (et pas sous un MS-DOS ou un Win 98) et
mettez y ces fichiers. Vous avez une disquette de démarrage de Win NT
4. Installez Vista en lui demandant de se tailler une place de 15 Go dans
l'espace libre.
5. Vous aurez, ô joie, un multiboot installé présenté à peu près à la façon
NT mais qui sera bien plus difficile à éditer car l'essentiel se trouve dans
un fichier BCD, en pur binaire, et qui ne se manipule qu'avec bcdedit et qui
fait passer les pires utilitaires Unix en ligne de commande pour des
amusements d'ados prépubères.
On peut s'étonner toutefois que Vista a perturbé le lettrage d'origine : la
partition Vista est C:, celle du Boot D: et celle de NT-XP E:. Et si on
interroge Steve Balmer pour lui demander s'il va nous enquiquiner longtemps
avec ces fichues lettres qui remontent au MS-DOS v2, ses yeux s'illuminent
d'un éclat blanc, il tripote nerveusement un étrange bracelet et déclare
d'une voix rauque que si on n'est pas content des lettres il mettra des
symboles goa'ulds dans Longhorn. Donc évitez de critiquer un Grand Maître.
Revenons un peu sur la structure de boot spécial Vista. Sans rien retirer
des fichiers de l'OS loader NT il a rajouté les fichiers
- bootmgr (429 ko) le pendant de ntldr
- bootsect.bak (8 Ko) ?
- satE99.tmp (0 Ko) ?
et un dossier Boot (ça doit être lui qui est incompatible avec le format
FAT) comprenant les fichiers
- bcd (24 Ko) (qui remplace boot.ini)
- bcd.log (avec log1 et log2) ça doit être des archives
- bootstatt.dat ?
- memtest.exe (un testeur de mémoire)
et une série de sous-dossiers de fichiers linguistiques
Conclusion : Oui ! le mutiboot est possible avec Vista. Mais il faudra
renoncer définitivement au MS-DOS. Il doit être peut-être possible de lancer
un Linux à condition d'apprivoiser la syntaxe du BCD.
Ceux qui ont suivi les conseils de tonton William sur son site concernant
l'organisation du multiboot devraient s'en tirer aux moindres frais. Il
suffit de reformater la partition BOOT de 100 Mo en FAT 16 en NTFS et d'y
remettre les fichiers de l'OS loader NT avant d'empoigner le DVD Vista.
En hopant que tout ceci vous helpe.
--
William Marie
Attention antiSpam remplacer trapellun.invalid
par free.fr
Web : http://wmarie.free.fr
http://www.pandemonium.dnsalias.org (site expérimental)

Poser une question


Ah ben, tu oublies Grub, 'achement plus mieux que Lilo !
http://fr.wikipedia.org/wiki/GRand_...Bootloader
Pas encore lu le reste ;) mais ça a l'air intéressant (pour celui qui se
retrouve avec un Vista à dompter)
--
Christophe
N'y aurait-il pas là une confusion entre mbr (secteur de 512 octets en
début de disque) et contenant:
le programme d'amorçage (442 octets)
la signature du disque (4 octets)
les 4 entrées de la table des partitions (4*16 octets)
le code de validation du partitionnement permettant l'amorçage (2 octets)
et le programme d'amorçage proprement dit?
Effectivement le programme d'amorçage peut varier selon les systèmes
mais la structure du mbr reste la même quoiqu'il arrive.
Le MBR n'est pas situé en tête de partition principale. Le MBR est situé
en tête de chaque disque (premier secteur du disque) hors de toute partition
et contient un mini programme de redirection vers la partition active, ainsi
que la table des quatre partitions principales. Son importance réside non
dans le mini programme (qui peut être reconstitué par fdisk/mbr sous dos,
fixmbr sous xp,...) mais dans le découpage en partitions. Le MBR passe
ensuite la main au boot record de la partition définie comme active (ou
afficher un message d'erreur s'il n'y a pas de partition active); enfin
le boot record de la partition active chargera et exécutera le chargeur
d'os proprement dit (ntldr,...).
Merci pour cette précision ! J'ai amalgamé MBR et boot record (c'est ce
dernier dont on fait un fichier utilisable dans boot.ini).
--
=================================== William Marie
Attention antiSpam remplacer trapellun.invalid
par free.fr
Web : http://wmarie.free.fr
http://www.pandemonium.dnsalias.org (site expérimental)
====================================
Mouais ceci est pour le standard (on va dire MS), car si tu as installé
GRUB au niveau du MBR, celui-ci va charger directement la suite du
loader situé dans la partition sans utiliser le bootsecteur de la partition.
Tout cela pour dire que l'organisation prônée par tonton william n'est
pas idéale, puisque si la partition principale est HS, on ne peux plus
rien démarrer et donc rien ne vaut un gestionnaire de boot qui ne
dépendent pas d'une partition.