1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
|
<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$FreeBSD$
Original revision: n.nn
-->
<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
<!ENTITY rel.current CDATA "3.2">
]>
<article lang="fr">
<artheader>
<title>Installer et utiliser FreeBSD en même temps que d'autres systèmes d'exploitation</title>
<authorgroup>
<author>
<firstname>Jay</firstname>
<surname>Richmond</surname>
</author>
</authorgroup>
&artheader.copyright;
<abstract>
<para><email>jayrich@sysc.com</email></para>
<para>6 Aout 1996</para>
<para>Ce document explique comment faire cohabiter proprement FreeBSD et
d'autres systèmes d'exploitation courants tels que Linux, MS-DOS, OS/2
et Windows 95. Remerciements particuliers à Annelise Anderson
<email>andrsn@stanford.edu</email>, Randall Hopper
<email>rhh@ct.picker.com</email> et Jordan K. Hubbard
<email>jkh@time.cdrom.com</email>.</para>
&abstract.license;
&abstract.disclaimer;
&trans.a.haby;
</abstract>
</artheader>
<sect1>
<title>Résumé</title>
<para>La plupart des gens n'arrivent pas à faire cohabiter leurs divers
systèmes d'exploitation sans des disques de grande capacité,
des informations sur les gros disques EIDE sont donc incluses. Comme il
y a de nombreuses combinaisons possibles de systèmes d'exploitation et
de configurations de disques durs, la section
<link linkend="examples">Exemples</link> sera peut-être celle
qui vous sera la plus utile. Elle décrit plusieurs configurations
d'ordinateurs utilisant plusieurs systèmes d'exploitation.</para>
<para>Ce document suppose que vous avez déjà préparé de la place sur votre
disque dur pour un système d'exploitation supplémentaire. Chaque fois que
vous repartitionnez votre disque dur, vous prenez le risque de détruire
les données qui se trouvent sur les partitions existantes. Toutefois, si
votre disque est entièrement occupé par DOS, vous trouverez peut-être le
programme FIPS (qui se trouve sur le CD-ROM FreeBSD dans le répertoire
<filename>\TOOLS</filename> ou que vous pouvez télécharger par
<ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>) utile.
Il vous permet de repartitionner votre disque sans détruire les données
qui s'y trouvent. Il existe aussi une programme commercial appelé
Partition Magic, qui vous permet de dimensionner et de supprimer des
partitions sans dégât.</para>
</sect1>
<sect1 id="boot-managers">
<title>Revue des gestionnaires de démarrage</title>
<para>Ce ne sont que de brèves descriptions des différents gestionnaires
de démarrage que vous rencontrerez. Selon la configuration de votre
ordinateur, vous pourrez trouver utile d'en employer plus d'un sur le
même système.</para>
<variablelist>
<varlistentry>
<term>Boot Easy</term>
<listitem>
<para>C'est le gestionnaire de démarrage par défaut de FreeBSD. Il
peut démarrer à peu près n'importe quoi, y compris BSD, OS/2
(HPFS), Windows 95 (FAT et FAT32) et Linux. Les partitions sont
sélectionnées à l'aide des touches fonction.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><foreignphrase>OS/2 Boot Manager</foreignphrase></term>
<listitem>
<para>Il démarrera depuis la FAT, HPFS, FFS (FreeBSD) et EXT2
(Linux). Il peut aussi démarrer depuis des partitions FAT32.
Les partitions sont sélectionnées avec les touches Flèches.
Le gestionnaire de démarrage
<foreignphrase>OS/2 Boot Manager</foreignphrase> est le
seul à utiliser sa propre partition distincte, à l'inverse des
autres qui utilisent l'enregistrement principal de démarrage
(<foreignphrase>Master Boot
Record</foreignphrase> - MBR). Il doit donc être
installé dans les 1024 premiers cylindres pour éviter des
problèmes de démarrage. Il peut charger Linux en utilisant LILO
lorsque ce dernier se trouve sur le secteur de démarrage et non sur
le MBR. Allez sur les
<ulink url="http://www.freenix.fr/linux/HOWTO">HOWTO Linux</ulink>
sur le World Wide Web pour plus d'informations sur le démarrage
de Linux avec le gestionnaire de démarrage d'OS/2.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>OS-BS</term>
<listitem>
<para>C'est une alternative à Boot Easy. Il vous donne plus de
contrôle sur le processus de démarrage, avec la possibilité de
sélectionner la partition à démarrer par défaut et le délai de
démarrage. La version béta de ce programme vous permet de
sélectionner le système d'exploitation à démarrer avec les
touches Flèches. Il est inclus sur le CD-ROM FreeBSD dans le
répertoire <filename>\TOOLS</filename> et vous pouvez le
télécharger par
<ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LILO, ou LInux LOader (“chargeur Linux”)</term>
<listitem>
<para>C'est un gestionnaire de démarrage limité. Il peut démarrer
FreeBSD, mais il faut acommoder son fichier de configuration.</para>
</listitem>
</varlistentry>
</variablelist>
<informaltable>
<tgroup cols="1">
<tbody>
<row>
<entry><emphasis>A propos de la FAT32:</emphasis> La FAT32
remplace le système de fichiers FAT depuis la version Microsoft
OEM SR2 Béta, qui sera utilisée sur les ordinateurs avec Windows
95 pré-installé vers la fin de 1996. Elle convertit le système
de fichiers FAT habituel et permet d'utiliser des tailles
d'agrégat - “<foreignphrase>cluster</foreignphrase>” - plus
petites sur de plus gros disques. La FAT32 modifie aussi le
secteur de démarrage et la table d'allocation habituels de la FAT,
ce qui la rend incompatible avec certains gestionnaires de
démarrage.</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect1>
<sect1 id="typical">
<title>Une configuration typique</title>
<para>Supposons que nous ayons deux gros disques EIDE, et que nous
voulions y installer FreeBSD, Linux et Windows 95.</para>
<para>Voici comment je procéderais avec ces disques durs:</para>
<itemizedlist>
<listitem>
<para><filename>/dev/wd0</filename> (premier disque dur
physique),</para>
</listitem>
<listitem>
<para><filename>/dev/wd1</filename> (second disque dur).</para>
</listitem>
</itemizedlist>
<para>Ils ont tous deux 1416 cylindres.</para>
<orderedlist>
<listitem>
<para>Je démarre avec une disquette de démarrage MS-DOS ou
Windows qui contient l'utilitaire <filename>FDISK.EXE</filename>
et crée une petite partition primaire de 50 Mo (35-40 pour Windows
95 et un peu d'espace libre) sur le premier disque. Je crée aussi
une partition plus importante sur le second disque pour mes
applications et mes données Windows.</para>
</listitem>
<listitem>
<para>Je redémarre et installe Windows 95 (plus facile à dire qu'à
faire) sur la partition <filename>C:</filename>.</para>
</listitem>
<listitem>
<para>J'installe ensuite Linux. Je ne suis pas certain pour qui
concerne toutes les distributions de Linux, mais la Slackware
comprend LILO (voyez la section
<link linkend="boot-managers">Revue des gestionnaires de
démarrage</link>). Au moment de partitionner mon disque dur
avec l'utilitaire <filename>fdisk</filename> de Linux,
je mets tout Linux sur le premier disque (peut-être 300 Mo
pour une partition racine confortable et de l'espace de
pagination).</para>
</listitem>
<listitem>
<para>Après avoir installé Linux, et quand on me demande si je veux
installer LILO, je fais <emphasis>attention</emphasis> à l'installer
sur le secteur de démarrage de ma partition racine Linux, et non
sur le MBR (<foreignphrase>Master Boot
Record</foreignphrase> - enregistrement principal de
démarrage).</para>
</listitem>
<listitem>
<para>L'espace restant disponible sur le disque peut servir à
FreeBSD. Je vérifie aussi que la
tranche - “<foreignphrase>slice</foreignphrase>” - racine
de FreeBSD ne déborde pas de la limite des 1024 cylindres (1024
cylindres correspond à 528 Mo à partir du début du disque sur nos
hypothétiques disques de 720 Mo). J'utiliserai éventuellement le
reste du disque dur (environ 270 Mo) pour les tranches
<filename>/usr</filename> et <filename>/var</filename>. Le
reste du second
disque (l'espace disponible dépend de la taille de ma partition
d'applications/données Windows que j'ai créée à l'étape 1) peut être
utilisé pour la tranche <filename>/usr/src</filename> et l'espace
de pagination.</para>
</listitem>
<listitem>
<para>Vus de l'utilitaire <filename>fdisk</filename> de Windows 95, mes
disques ressembleraient à ceci:</para>
<programlisting>
---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 1
Partition Status Type Volume_Label Mbytes System Usage
C: 1 A PRI DOS 50 FAT** 7%
2 A Non-DOS (Linux) 300 43%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 2
Partition Status Type Volume_Label Mbytes System Usage
D: 1 A PRI DOS 420 FAT** 60%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------
</programlisting>
<para>Disons FAT16, ou FAT32 si vous utilisez la mise à jour
OEM SR2 (voyez la section
<link linkend="boot-managers">Revue des gestionnaires de
démarrage</link>).</para>
</listitem>
<listitem>
<para>J'installe FreeBSD. Je veille à démarrer avec le premier
disque dur défini comme “NORMAL” dans le paramétrage
du BIOS. Sans cela, je devrais indiquer la géométrie réelle de mon
disque au démarrage (pour la connaître, démarrez Windows 95 et
consultez les diagnostics Microsoft (<filename>MSD.EXE</filename>)
ou allez voir dans le BIOS) avec le paramètre
<literal>hd0=1416,16,63</literal> où <replaceable>1416</replaceable>
est le nombre de cylindres de mon disque dur,
<replaceable>16</replaceable> est le nombre de têtes par piste et
<replaceable>63</replaceable> est le nombre de secteurs par
tête.</para>
</listitem>
<listitem>
<para>Au moment de partitionner le disque dur, je fais attention à
bien installer Boot Easy sur le premier disque. Je ne m'occupe pas
du second disque, à partir duquel rien n'est démarré.</para>
</listitem>
<listitem>
<para>Au redémarrage, Boot Easy devrait reconnaître mes trois
partitions démarrables comme DOS (Windows 95), Linux et BSD
(FreeBSD)</para>
</listitem>
</orderedlist>
</sect1>
<sect1 id="special">
<title>Considérations particulières</title>
<para>La plupart des systèmes d'exploitation sont très chatouilleux sur la
façon et l'endroit où ils sont installés sur le disque dur. Windows 95 et
DOS doivent être sur la première partition primaire du premier disque dur.
OS/2 fait exception. Il peut être sur le premier ou le second disque et
sur une partition primaire ou étendue. Si vous n'êtes pas sûr de vous,
gardez le début des partitions démarrables avant le 1024ème
cylindre.</para>
<para>Si vous installez Windows 95 sur un système BSD existant, cela va
“écraser” le MBR, et vous devrez réinstaller votre précédent
gestionnaire de démarrage. Boot Easy peut être réinstallé avec
l'utilitaire <filename>BOOTINST.EXE</filename> qui se trouve dans le
répertoire <filename>\TOOLS</filename> du CD-ROM, ou peut être téléchargé
par <ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>.
Vous pouvez aussi relancer le processus d'installation et aller dans
l'éditeur de partitions. De là, indiquez que la partition FreeBSD est
démarrable, choisissez l'option <option>Boot Manager</option>
(gestionnaire de démarrage) et tapez
<literal>W</literal> pour écrire les informations sur le MBR. Vous
pouvez maintenant redémarrer, et Boot Easy reconnaîtra votre Windows 95
en tant que DOS.</para>
<para>N'oubliez pas s'il vous plaît qu'OS/2 peut lire les partitions FAT
et HPFS, mais pas les partitions FFS (FreeBSD) ou EXT2 (Linux). De même,
Windows 95 ne peut que lire et écrire sur les partitions FAT et FAT32
(voyez la section <link linkend="boot-managers">Revue des gestionnaire
de démarrage</link>). FreeBSD peut lire la plupart des systèmes de
fichiers, mais ne sait pas actuellement lire les partitions HPFS. Linux
peut lire les partitions HPFS, mais ne peut pas y écrire. Les versions
récentes du noyau Linux (2.x) peuvent lire et écrire les partitions VFAT
de Windows 95 (La VFAT est ce qui permet à Windows d'utiliser des noms
de fichiers longs - c'est à peu près la même chose que la
FAT). Linux peut lire et écrire sur la plupart des systèmes de fichiers.
Pigé? Je l'espère.</para>
</sect1>
<sect1 id="examples">
<title>Exemples</title>
<para><emphasis>(Cette section a besoin d'être revue, envoyez s'il vous
plaît vos exemples à <email>jayrich@sysc.com</email>.)</emphasis></para>
<para>FreeBSD + Windows 95: Si vous avez installé FreeBSD après Windows 95,
vous devriez voir la mention <literal>DOS</literal> sur le menu de Boot
Easy. C'est Windows 95. Si vous avez installé Windows 95 après FreeBSD,
lisez la section <link linkend="special">Considérations
particulières</link> ci-dessus. Tant que votre disque n'a pas 1024
cylindres, vous ne devriez pas avoir de problèmes pour démarrer. Si
toutefois une de vos partitions va au-delà du 1024ème cylindre, et que
vous avez des messages du type <literal>invalid system disk</literal>
sous DOS (Windows 95) et que FreeBSD ne démarre pas, cherchez dans les
paramètres de configuration de votre BIOS quelque chose appelé
“<literal>> 1024 cylinder support</literal>” ou
mode “<literal>NORMAL/LBA</literal>”. DOS peut avoir besoin
du LBA (<foreignphrase>Logical Block
Adressing</foreignphrase> - Adressage de bloc logique) pour
démarrer correctement. Si la perspective de modifier les paramètres du
BIOS à chaque démarrage ne vous enchante pas, vous pouvez démarrer
FreeBSD depuis DOS avec l'utilitaire <filename>FBSDBOOT.EXE</filename>
du CD (il devrait reconnaître votre partition FreeBSD et la
démarrer).</para>
<para>FreeBSD + OS/2 + Windows: Rien de nouveau dans ce cas. Le gestionnaire
de démarrage d'OS/2 peut démarrer tous ces systèmes d'exploitation, il ne
devrait pas y avoir de problème.</para>
<para>FreeBSD + Linux: Vous pouvez aussi utiliser Boot Easy pour démarrer
les deux systèmes d'exploitation.</para>
<para>FreeBSD + Linux + Windows 95: (voyez la section
<link linkend="typical">Une installation typique</link>).</para>
</sect1>
<sect1 id="help">
<title>Autres endroits où trouver de l'aide</title>
<para>Il y a de nombreux
<ulink url="http://www.freenix.fr/linux/HOWTO">HOWTO Linux</ulink>
qui traitent des systèmes d'exploitation multiples sur un même
disque.</para>
<para>Le
<ulink url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+DOS+Win95+OS2.html">mini-HOWTO
Linux+DOS+Win95+OS2</ulink> donne des indications sur la configuration
du gestionnaire de démarrage d'OS/2, et le
<ulink url="http://www.freenix.fr/linux/HOWTO/mini/Linux+FreeBSD.html">mini-HOWTO
Linux+FreeBSD</ulink> peut aussi vous intéresser.
L'<ulink url="http://www.in.net/~jkatz/win95/Linux-HOWTO.html">HOWTO
Linux</ulink> est aussi utile.</para>
<para>Le
<ulink url="http://www.dorsal.org/~dcl/publications/NTLDR_hacking">Guide
de programmation du chargeur NT</ulink> fournit des informations
intéressantes sur le démarrage de Windows NT, 95 et DOS avec d'autres
systèmes d'exploitation.</para>
<para>Le jeu de documents d'Hale Landis, “Comment ça marche”,
contient de bonnes informations sur toutes sortes de géométries de disques
et autres sujets liés au démarrage. Voici quelques liens qui peuvent vous
aider à le trouver:</para>
<itemizedlist>
<listitem>
<para><ulink url="ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip">ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip</ulink>,</para>
</listitem>
<listitem>
<para><ulink url="http://www.cs.yorku.ca/People/frank/docs/">http://www.cs.yorku.ca/People/frank/docs/</ulink>.</para>
</listitem>
</itemizedlist>
<para>Enfin, ne négligez pas la documentation du noyau de FreeBSD sur le
processus de démarrage, disponible dans la distribution du source du
noyau (elle est installée dans
<ulink url="file:/usr/src/sys/i386/boot/biosboot/README.386BSD">file:/usr/src/sys/i386/boot/biosboot/README.386BSD</ulink>).</para>
</sect1>
<sect1>
<title>Détails Techniques</title>
<para><emphasis>(Contribution de Randall Hopper
<email>rhh@ct.picker.com</email>)</emphasis></para>
<para>Cette section tente de vous donner assez d'informations de base
sur vos disques durs et sur le processus de démarrage à partir d'un
disque pour vous permettre de régler la plupart des problèmes que vous
pourriez rencontrer lorsque vous configurerez le démarrage de plusieurs
systèmes d'exploitation. Elle commence par des choses relativement
élémentaires, vous préférerez donc peut-être la parcourir en diagonale
jusqu'à ce que les points abordés vous paraissent moins familiers et
commencer alors à la lire en détail.</para>
<sect2>
<title>Introduction aux disques</title>
<para>Trois termes fondamentaux décrivent la localisation des données
sur vos disques durs: Cylindres, Têtes et Secteurs. Il n'est pas très
important de savoir à quoi ils se rapportent sinon qu'ensemble, ils
définissent où sont physiquement les données sur le disque.</para>
<para>Votre disque a un nombre donné de cylindres, de têtes, et de
secteurs par tête-cylindre (un doublet tête-cylindre est aussi appelé
une piste). Ensemble, ces informations définissent la “géométrie
physique” de votre disque. Il y a typiquement 512 octets par
secteur et 63 secteurs par pistes, le nombre de cylindres et de têtes
variant très largement d'un disque à l'autre. Vous pouvez alors
calculer la quantité d'informations que peut enregistrer votre disque
par la formule:</para>
<programlisting>
nombre de cylindres X nombre de têtes X 63 secteurs/piste X 512 octets/secteur
</programlisting>
<para>Par exemple, pour mon disque Western Digital AC31600 EIDE de 1,6 Go,
cela donne:</para>
<programlisting>
3148 cylindres X 16 têtes X 63 secteurs/piste X 512 octets/secteur
</programlisting>
<para>c'est-à-dire 1.624.670.208 octets, ou environ 1,6 Go.</para>
<para>Vous pouvez connaître la géométrie physique de votre disque dur
(nombre de cylindres, de têtes et de secteurs par piste) avec ATAID
ou d'autres programmes que vous trouverez sur l'Internet. Ces
informations sont peut-être aussi fournies avec votre disque. Faites
cependant attention: si vous utilisez le LBA du BIOS (voyez la section
<link linkend="limits">Restrictions pour le démarrage et
avertissements</link>), vous ne pouvez pas vous servir de n'importe
quel programme pour connaître la géométrie physique. Cela parce que de
nombreux programmes (e.g., <filename>MSD.EXE</filename> ou
le <filename>fdisk</filename> de FreeBSD) ne reconnaissent pas la
géométrie physique, ils listent à la place la <emphasis>géométrie
redéfinie</emphasis> (des valeurs virtuelles dues à l'utilisation
du LBA). Continuez à lire pour savoir ce que cela veut dire.</para>
<para>Une autre chose à savoir à propos de ces termes. 3
valeurs - un numéro de cylindre, un numéro de tête, et un
numéro du secteur sur la piste - identifient l'adresse absolue
d'un secteur sur votre disque. Les cylindres et les têtes sont
numérotés à partir de 0, et les numéros de secteurs commencent à
1.</para>
<para>Ceux que des détails plus techniques intéressent peuvent
trouver un peu partout sur l'Internet des informations sur la géométrie
des disques, les secteurs de démarrage, les BIOS, etc. Faites une
recherche sur Yahoo, Lycos, etc. pour <literal>boot sector</literal> ou
<literal>master boot record</literal>. Parmi les choses utiles que vous
trouverez, il y a le jeu de documents
“Comment ça marche” - <foreignphrase>How It
Works</foreignphrase> de Hale Landis. Voyez la section
<link linkend="help">Autres endroits où trouver de l'aide</link> pour
avoir quelques pointeurs vers ces documents.</para>
<para>OK, assez de terminologie. Nous sommes censés parler de démarrage
ici.</para>
</sect2>
<sect2 id="booting">
<title>Le processus de démarrage</title>
<para>Sur le premier secteur de votre disque (cylindre 0, tête 0,
secteur 1) se trouve l'enregistrement principal de
démarrage - <foreignphrase>Master Boot
Record</foreignphrase> (MBR). Il contient une carte de votre disque.
Il identifie jusqu'à <emphasis>4 partitions</emphasis>, chacune d'elle
étant un espace contigu sur ce disque. FreeBSD appelle les partitions
des tranches - <foreignphrase>slices</foreignphrase> - pour
éviter la confusion avec ses propres partitions, mais nous
n'utiliserons pas ici ce terme. Chaque partition peut contenir son
propre système d'exploitation.</para>
<para>Chaque entrée de partition dans le MBR comprend un
<emphasis>IDentifiant de partition</emphasis>, un
<emphasis>Cylindre/Tête/Secteur de Début</emphasis> et un
<emphasis>Cylindre/Tête/Secteur de Fin</emphasis>. L'IDentifiant de
partition dit de quel type de partition il s'agit (de quel OS) et le
Début/Fin dit où elle se trouve. La table des
<link linkend="partitions">IDs de partitions</link> liste un
échantillon d'identifiants de partitions usuels.</para>
<informaltable id="partitions">
<tgroup cols="2">
<thead>
<row>
<entry>ID (hex)</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry>01</entry>
<entry>DOS12 primaire (FAT 12-bit)</entry>
</row>
<row>
<entry>04</entry>
<entry>DOS16 primaire (FAT 16-bit)</entry>
</row>
<row>
<entry>05</entry>
<entry>DOS12 étendue</entry>
</row>
<row>
<entry>06</entry>
<entry>DOS primaire large (> 32 Mo)</entry>
</row>
<row>
<entry>0A</entry>
<entry>OS/2</entry>
</row>
<row>
<entry>83</entry>
<entry>Linux (EXT2FS)</entry>
</row>
<row>
<entry>A5</entry>
<entry>FreeBSD, NetBSD, 386BSD (UFS)</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<note>
<para>Toutes les partitions ne dont pas démarrables (e.g. DOS étendue).
Certaines le sont - d'autres ne le sont pas. Ce qui rend
une partition démarrable est la configuration du secteur de démarrage
de la
partition - <foreignphrase>Partition Boot Sector</foreignphrase> - qui
est toujours présent au début de chaque partition.</para>
</note>
<para>Quand vous configurez votre gestionnaire de démarrage favori, il
consulte les entrées dans les tables de partitions du MBR de tous vos
disques et vous donne la possibilité de donner un nom à ces entrées.
Quand vous démarrez ensuite, le gestionnaire de démarrage
est appelé par du code prévu pour cela à partir secteur principal de
démarrage - <foreignphrase>Master Boot Sector</foreignphrase> - du
premier disque trouvé sur votre système. Le gestionnaire consulte
l'entrée de la table de partitions du MBR correspondant à la partition
que vous avez choisie, charge le secteur de démarrage de cette partition
et lui passe le contrôle. Ce secteur de démarrage de la partition
elle-même contient suffisamment d'informations pour commencer à charger
le système d'exploitation qui se trouve sur cette partition.</para>
<para>Il y a une chose importante à savoir dont nous n'avons pas encore
parlé. Tous vos disques durs ont un MBR. Toutefois, celui qui est
important est celui qui se trouve sur le premier disque reconnu par le
BIOS. Si vous n'avez que des disques durs IDE, c'est le premier disque
IDE (e.g. le disque maître sur le premier contrôleur). De même pour les
systèmes entièrement SCSI. Si vous avez et des disques durs IDE et des
disques durs SCSI, le disque IDE est habituellement le premier disque
dont la présence est testée par le BIOS, le premier disque IDE est donc
le premier disque reconnu. Le gestionnaire de démarrage que vous
installerez sera implémenté sur le premier disque dur reconnu comme
nous venons de l'expliquer.</para>
</sect2>
<sect2 id="limits">
<title>Restrictions pour le démarrage et avertissements</title
<para>Voici maintenant les choses intéressantes auxquelles il faut
faire attention.</para>
<sect3>
<title>La redoutable limitation à 1024 cylindres et en quoi le LBA du
BIOS peut être utile</title>
<para>La première partie du processus de démarrage est entièrement
confiée au BIOS, (si ce terme est nouveau pour vous, le BIOS est
un circuit électronique sur votre carte mère qui contient le
code de démarrage de votre ordinateur). C'est pourquoi cette
première partie du processus est soumise aux limitations du
BIOS.</para>
<para>L'interface BIOS utilisée pour lire le disque dur durant
cette phase (INT 13H, Sous-fonction 2) alloue 10 bits pour le
numéro de cylindre, 8 bits pour le numéro de tête, et 6 bits
pour le numéro de secteur. Cela limite les utilisateurs de
cette interface (i.e. les gestionnaires de démarrage implémentés
sur le MBR du disque ainsi que les chargeurs de systèmes
d'exploitation implémentés sur les secteurs de démarrage) à:</para>
<itemizedlist>
<listitem>
<para>1024 cylindres au plus,</para>
</listitem>
<listitem>
<para>256 têtes au plus,</para>
</listitem>
<listitem>
<para>64 secteurs/piste au plus, (en fait 63, 0 n'est pas
disponible).</para>
</listitem>
</itemizedlist>
<para>Or les diques durs de grande capacité ont beaucoup de
cylindres et peu de têtes, le nombre de cylindres de ces disques
est donc invariablement supérieurs à 1024. De ce fait et à cause
de l'interface BIOS telle qu'elle est, vous ne pouvez pas démarrer
n'importe où sur votre disque dur. Le code de démarrage (le
gestionnaire de démarrage et le chargeur du système d'exploitation
implémenté sur les secteurs de démarrage de chaque partition
démarrable) doivent se situer avant le 1024ème cylindre. Si votre
disque dur est standard et a 16 têtes, cela équivaut à:</para>
<programlisting>
1024 cylindres/disque X 16 têtes/disque X 63 secteurs/piste X 512 octets
</programlisting>
<para>c'est-à-dire la limite souvent citée de 528 Mo.</para>
<para>C'est là qu'intervient le LBA (<foreignphrase>Logical Block
Adressing</foreignphrase> - “adressage de bloc
logique”) du BIOS. Le LBA du BIOS donne à l'utilisateur
des routines de l'API (<foreignphrase>Application Programming
Interface</foreignphrase> - “interface de
programmation”) du BIOS, la possibilité d'accéder aux
cylindres au-delà de 1024 avec les interfaces du BIOS en
redéfinissant le cylindre. Cela signifie qu'il construit une
nouvelle géométrie de vos cylindres et têtes, faisant croire
au BIOS que votre disque a moins de cylindres et plus de têtes
qu'en réalité. En d'autres termes, il profite du fait que les
disques ont relativement peu de têtes et beaucoup de cylindres,
pour modifier le rapport entre nombre de cylindres et nombre de
têtes de façon à ce que tous deux soient inférieurs aux limites
mentionnées ci-dessus (1024 cylindres, 256 têtes).</para>
<para>Pour prendre de nouveau l'exemple de mon Western Digital 1,6
Go, il a pour géométrie physique:</para>
<programlisting>
(3148 cylindres, 16 têtes, 63 secteurs/piste, 512 octets/secteur)
</programlisting>
<para>Alors que le LBA du BIOS la redéfinit comme suit:</para>
<programlisting>
( 787 cylindres, 64 têtes, 63 secteurs/piste, 512 octets/secteur)
</programlisting>
<para>ce qui correspond à la même capacité physique, mais avec des
nombres de cylindres et de têtes dans les limites acceptables par
les API du BIOS. (Au passage, j'ai sur l'un de mes disques, et
Linux et FreeBSD au-delà du 1024ème cylindre, et les deux démarrent
sans problème, grâce au LBA du BIOS.)</para>
</sect3>
<sect3>
<title>Gestionnaires de démarrage et allocation de l'espace
disque</title>
<para>Une autre chose à laquelle il faut faire attention lorsque vous
installez un gestionnaire de démarrage est l'allocation d'espace
disque pour ce gestionnaire. Il vaut mieux être informé de cette
question avant de commencer pour vous éviter d'avoir à réinstaller un
ou plusieurs de vos systèmes d'exploitation.</para>
<para>Si vous avez suivi ce qui a été dit sur le
<link linkend="booting">processus de démarrage</link>
à propos du secteur principal de démarrage (où se trouve le MBR),
des secteurs de démarrage des partitions et du processus de démarrage,
vous vous êtes peut-être demandé où va se trouver ce foutu
gestionnaire de démarrage. Bien, certains gestionnaires de démarrage
sont suffisament légers pour tenir entièrement dans le secteur
principal de démarrage (cylindre 0, tête 0, secteur 1) avec la table
de partitions. D'autres ont besoin d'un peu plus d'espace et débordent
en fait de quelques secteurs après le secteur principal de démarrage
sur la piste cylindre 0 tête 0, qui sont normalement libres...
normalement.</para>
<para>Là est le hic... Certains systèmes d'exploitation (y compris
FreeBSD) vous permettent de faire débuter vos partitions juste après
le secteur principal de démarrage au cylindre 0, tête 0, secteur 2,
si vous le voulez. En fait, si vous donnez au programme
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
de FreeBSD, un disque dont le début est vierge ou un disque totalement
vide, c'est là qu'il fera commencer par défaut la partition FreeBSD
(c'est tout du moins ce qu'il a fait quand je suis tombé dans ce
piège). Quand vous installez ensuite le gestionnaire de démarrage, si
c'est l'un de ceux qui occupent quelques secteurs supplémentaires
après le MBR, il écrase les données qui se trouvent au début de la
première partie. Dans le cas de FreeBSD, cela écrase le label du
disque et empêche de démarrer votre partition FreeBSD.</para>
<para>Le moyen facile d'éviter ce problème (et de vous garder le
possibilité d'essayer différents gestionnaires de démarrage par la
suite) est de ne pas allouer la première piste du disque quand vous le
partitionnez. Cela réserve l'espace entre le cylindre 0, tête 0,
secteur 2 et le cylindre 0, tête 0, secteur 63, et votre partition
commence au cylindre 1, tête 1, secteur 1. Pour ce que cela vaut,
quand vous créez une partition DOS au début de votre disque, DOS
laisse par défaut cet espace inoccupé (c'est pourquoi certains
gestionnaires de démarrage font l'hypothèse qu'il est disponible).
Mettre une partition DOS au début de votre disque vous permet aussi
d'éviter le problème. C'est ce que je préfère personnellement faire,
mettre une partition DOS de 1 Mo au début, parce que cela évite
aussi que la lettre désignant mon disque DOS primaire soit modifiée
ensuite quand je repartitionne.</para>
<para>Pour servir de référence, les gestionnaires de démarrage
suivants n'utilisent que le secteur principal de démarrage pour
mettre leur code et leurs données:</para>
<itemizedlist>
<listitem>
<para>OS-BS 1.35,</para>
</listitem>
<listitem>
<para>Boot Easy,</para>
</listitem>
<listitem>
<para>LILO.</para>
</listitem>
</itemizedlist>
<para>Ces gestionnaires de démarrage occupent quelques secteurs
supplémentaires après le secteur principal de démarrage:</para>
<itemizedlist>
<listitem>
<para>OS-BS 2.0 Béta 8 (secteurs 2-5),</para>
</listitem>
<listitem>
<para>gestionnaire de démarrage d'OS/2.</para>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Que faire si votre système ne démarre pas?</title>
<para>Il se peut qu'à un moment donné
de l'installation d'un gestionnaire
de démarrage, vous laissiez le MBR dans un état tel que votre machine
ne redémarre plus. C'est peu probable, mais possible lorsque vous
refaites un FDISK alors qu'il y a déjà un gestionnaire de démarrage
installé.</para>
<para>Si vous avez une partition DOS démarrable, vous pouvez démarrer
avec une disquette de démarrage DOS, et lancer:</para>
<informalexample>
<screen><prompt>A:\></prompt> <userinput>FDISK /MBR</userinput></screen>
</informalexample>
<para>pour réinstaller le code d'origine de démarrage simple du DOS
seul sur le système. Vous pouvez alors démarrer DOS (et DOS
uniquement) depuis le disque dur. Une autre solution consiste à
réexécuter le programme d'installation de votre gestionnaire de
démarrage à partir d'une disquette démarrable.</para>
</sect3>
</sect2>
</sect1>
</article>
|