Installer et utiliser FreeBSD en même temps que d'autres systèmes d'exploitation

6 Aout 1996

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 , Randall Hopper et Jordan K. Hubbard .

La redistribution du code source (SGML), modifié ou non, et compilé (HTML, PostScript, etc.) est soumise aux conditions suivantes :

  1. Le copyright ci-dessus, la présente liste de conditions et l'avertissement qui la suit doivent figurer dans le code source.

  2. Le code source distribué sous forme compilée doit faire apparaître le copyright ci-dessus, la présente liste de conditions et l'avertissement qui la suit.



CE DOCUMENT EST FOURNI ``TEL QU'EN L'ÉTAT'' PAR LE PROJET DE DOCUMENTATION FRANÇAISE DE FreeBSD ET IL N'EST DONNÉ AUCUNE GARANTIE, IMPLICITE OU EXPLICITE, QUANT À SON UTILISATION COMMERCIALE, PROFESSIONNELLE OU AUTRE. LES COLLABORATEURS DU PROJET DE DOCUMENTATION FRANÇAISE DE FreeBSD NE PEUVENT EN AUCUN CAS ÊTRE TENUS POUR RESPONSABLES DE QUELQUE DOMMAGE OU PRÉJUDICE DIRECT, INDIRECT, SECONDAIRE OU ACCESSOIRE (Y COMPRIS LES PERTES FINANCIèRES DUES AU MANQUE À GAGNER, À L'INTERRUPTION D'ACTIVITÉS, OU LA PERTE D'INFORMATIONS ET AUTRES) DÉCOULANT DE L'UTILISATION DE LA DOCUMENTATION OU DE L'IMPOSSIBILITÉ D'UTILISER CELLE-CI, ET DONT L'UTILISATEUR ACCEPTE L'ENTIÈRE RESPONSABILITÉ.

Version française de Frédéric Haby .


1. Résumé

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 Exemples sera peut-être celle qui vous sera la plus utile. Elle décrit plusieurs configurations d'ordinateurs utilisant plusieurs systèmes d'exploitation.

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 \TOOLS ou que vous pouvez télécharger par ftp) 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.


2. Revue des gestionnaires de démarrage

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.

Boot Easy

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.

OS/2 Boot Manager

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 OS/2 Boot Manager est le seul à utiliser sa propre partition distincte, à l'inverse des autres qui utilisent l'enregistrement principal de démarrage (Master Boot Record - 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 HOWTO Linux sur le World Wide Web pour plus d'informations sur le démarrage de Linux avec le gestionnaire de démarrage d'OS/2.

OS-BS

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 \TOOLS et vous pouvez le télécharger par ftp.

LILO, ou LInux LOader (``chargeur Linux'')

C'est un gestionnaire de démarrage limité. Il peut démarrer FreeBSD, mais il faut acommoder son fichier de configuration.

A propos de la FAT32: 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 - ``cluster'' - 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.

3. Une configuration typique

Supposons que nous ayons deux gros disques EIDE, et que nous voulions y installer FreeBSD, Linux et Windows 95.

Voici comment je procéderais avec ces disques durs:

Ils ont tous deux 1416 cylindres.

  1. Je démarre avec une disquette de démarrage MS-DOS ou Windows qui contient l'utilitaire FDISK.EXE 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.

  2. Je redémarre et installe Windows 95 (plus facile à dire qu'à faire) sur la partition C:.

  3. 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 Revue des gestionnaires de démarrage). Au moment de partitionner mon disque dur avec l'utilitaire fdisk 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).

  4. Après avoir installé Linux, et quand on me demande si je veux installer LILO, je fais attention à l'installer sur le secteur de démarrage de ma partition racine Linux, et non sur le MBR (Master Boot Record - enregistrement principal de démarrage).

  5. L'espace restant disponible sur le disque peut servir à FreeBSD. Je vérifie aussi que la tranche - ``slice'' - 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 /usr et /var. 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 /usr/src et l'espace de pagination.

  6. Vus de l'utilitaire fdisk de Windows 95, mes disques ressembleraient à ceci:

    ---------------------------------------------------------------------
    
                      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
    
    ---------------------------------------------------------------------
           
    

    Disons FAT16, ou FAT32 si vous utilisez la mise à jour OEM SR2 (voyez la section Revue des gestionnaires de démarrage).

  7. 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 (MSD.EXE) ou allez voir dans le BIOS) avec le paramètre hd0=1416,16,631416 est le nombre de cylindres de mon disque dur, 16 est le nombre de têtes par piste et 63 est le nombre de secteurs par tête.

  8. 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é.

  9. Au redémarrage, Boot Easy devrait reconnaître mes trois partitions démarrables comme DOS (Windows 95), Linux et BSD (FreeBSD)


4. Considérations particulières

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.

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 BOOTINST.EXE qui se trouve dans le répertoire \TOOLS du CD-ROM, ou peut être téléchargé par ftp. 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 Boot Manager (gestionnaire de démarrage) et tapez W pour écrire les informations sur le MBR. Vous pouvez maintenant redémarrer, et Boot Easy reconnaîtra votre Windows 95 en tant que DOS.

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 Revue des gestionnaire de démarrage). 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.


5. Exemples

(Cette section a besoin d'être revue, envoyez s'il vous plaît vos exemples à .)

FreeBSD + Windows 95: Si vous avez installé FreeBSD après Windows 95, vous devriez voir la mention DOS sur le menu de Boot Easy. C'est Windows 95. Si vous avez installé Windows 95 après FreeBSD, lisez la section Considérations particulières 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 invalid system disk sous DOS (Windows 95) et que FreeBSD ne démarre pas, cherchez dans les paramètres de configuration de votre BIOS quelque chose appelé ``> 1024 cylinder support'' ou mode ``NORMAL/LBA''. DOS peut avoir besoin du LBA (Logical Block Adressing - 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 FBSDBOOT.EXE du CD (il devrait reconnaître votre partition FreeBSD et la démarrer).

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.

FreeBSD + Linux: Vous pouvez aussi utiliser Boot Easy pour démarrer les deux systèmes d'exploitation.

FreeBSD + Linux + Windows 95: (voyez la section Une installation typique).


6. Autres endroits où trouver de l'aide

Il y a de nombreux HOWTO Linux qui traitent des systèmes d'exploitation multiples sur un même disque.

Le mini-HOWTO Linux+DOS+Win95+OS2 donne des indications sur la configuration du gestionnaire de démarrage d'OS/2, et le mini-HOWTO Linux+FreeBSD peut aussi vous intéresser. L'HOWTO Linux est aussi utile.

Le Guide de programmation du chargeur NT fournit des informations intéressantes sur le démarrage de Windows NT, 95 et DOS avec d'autres systèmes d'exploitation.

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:

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 /usr/src/sys/i386/boot/biosboot/README.386BSD).


7. Détails Techniques

(Contribution de Randall Hopper )

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.


7.1. Introduction aux disques

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.

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:

nombre de cylindres X nombre de têtes X 63 secteurs/piste X 512 octets/secteur
     

Par exemple, pour mon disque Western Digital AC31600 EIDE de 1,6 Go, cela donne:

3148 cylindres X 16 têtes X 63 secteurs/piste X 512 octets/secteur
     

c'est-à-dire 1.624.670.208 octets, ou environ 1,6 Go.

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 Restrictions pour le démarrage et avertissements), 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., MSD.EXE ou le fdisk de FreeBSD) ne reconnaissent pas la géométrie physique, ils listent à la place la géométrie redéfinie (des valeurs virtuelles dues à l'utilisation du LBA). Continuez à lire pour savoir ce que cela veut dire.

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.

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 boot sector ou master boot record. Parmi les choses utiles que vous trouverez, il y a le jeu de documents ``Comment ça marche'' - How It Works de Hale Landis. Voyez la section Autres endroits où trouver de l'aide pour avoir quelques pointeurs vers ces documents.

OK, assez de terminologie. Nous sommes censés parler de démarrage ici.


7.2. Le processus de démarrage

Sur le premier secteur de votre disque (cylindre 0, tête 0, secteur 1) se trouve l'enregistrement principal de démarrage - Master Boot Record (MBR). Il contient une carte de votre disque. Il identifie jusqu'à 4 partitions, chacune d'elle étant un espace contigu sur ce disque. FreeBSD appelle les partitions des tranches - slices - 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.

Chaque entrée de partition dans le MBR comprend un IDentifiant de partition, un Cylindre/Tête/Secteur de Début et un Cylindre/Tête/Secteur de Fin. 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 IDs de partitions liste un échantillon d'identifiants de partitions usuels.

ID (hex) Description
01 DOS12 primaire (FAT 12-bit)
04 DOS16 primaire (FAT 16-bit)
05 DOS12 étendue
06 DOS primaire large (> 32 Mo)
0A OS/2
83 Linux (EXT2FS)
A5 FreeBSD, NetBSD, 386BSD (UFS)

Note : 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 - Partition Boot Sector - qui est toujours présent au début de chaque partition.

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 - Master Boot Sector - 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.

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.


7.3. Restrictions pour le démarrage et avertissements

Voici maintenant les choses intéressantes auxquelles il faut faire attention.


7.3.1. La redoutable limitation à 1024 cylindres et en quoi le LBA du BIOS peut être utile

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.

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) à:

  • 1024 cylindres au plus,

  • 256 têtes au plus,

  • 64 secteurs/piste au plus, (en fait 63, 0 n'est pas disponible).

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 à:

1024 cylindres/disque X 16 têtes/disque X 63 secteurs/piste X 512 octets
         

c'est-à-dire la limite souvent citée de 528 Mo.

C'est là qu'intervient le LBA (Logical Block Adressing - ``adressage de bloc logique'') du BIOS. Le LBA du BIOS donne à l'utilisateur des routines de l'API (Application Programming Interface - ``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).

Pour prendre de nouveau l'exemple de mon Western Digital 1,6 Go, il a pour géométrie physique:

(3148 cylindres, 16 têtes, 63 secteurs/piste, 512 octets/secteur)
          

Alors que le LBA du BIOS la redéfinit comme suit:

( 787 cylindres, 64 têtes, 63 secteurs/piste, 512 octets/secteur)
          

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.)


7.3.2. Gestionnaires de démarrage et allocation de l'espace disque

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.

Si vous avez suivi ce qui a été dit sur le processus de démarrage à 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 suffisamment 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.

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 sysinstall 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.

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.

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:

  • OS-BS 1.35,

  • Boot Easy,

  • LILO.

Ces gestionnaires de démarrage occupent quelques secteurs supplémentaires après le secteur principal de démarrage:

  • OS-BS 2.0 Béta 8 (secteurs 2-5),

  • gestionnaire de démarrage d'OS/2.


7.3.3. Que faire si votre système ne démarre pas?

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é.

Si vous avez une partition DOS démarrable, vous pouvez démarrer avec une disquette de démarrage DOS, et lancer:

A:\> FDISK /MBR

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.


Ce document, ainsi que d'autres peut être téléchargé sur ftp.FreeBSD.org/pub/FreeBSD/doc/.

Pour toutes questions à propos de FreeBSD, lisez la documentation avant de contacter <questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez <doc@FreeBSD.org>.