SRM Firmware Howto

Version originale : David Mosberger (Traduction fran�aise : Nicolas Jadot
(njadot@etu.info.unicaen.fr))

   v0.5, 17 August 1996
     _________________________________________________________________

   _Ce document d�crit la mani�re de d�marrer une station Linux/Alpha
   utilisant le firmware SRM, lequel est normalement utilis� pour
   d�marrer Digital Unix. (NDT : le firmware est un micro-code embarqu�
   sur une puce, en quelque sorte l'�quivalent du BIOS des PC) En
   g�n�ral, il est pr�f�rable d'utiliser MILO � la place du programme
   aboot sachant que MILO est parfaitement adapt� aux besoins de Linux.
   Cependant, MILO n'existe pas sur tous les syst�mes et ne permet pas
   encore de d�marrer sur un r�seau. Dans ces cas l�, utiliser la console
   SRM est peut-�tre la bonne solution. _
     _________________________________________________________________

   A moins que vous soyiez int�ress�s par les d�tails techniques, vous
   pouvez passer directement � la section aboot

1. Comment SRM d�marre-t-il un syst�me d'exploitation ?

   Toutes les versions de SRM peuvent d�marrer � partir d'un disque SCSI
   et les versions destin�es aux plates-formes r�centes, comme les Noname
   et AlphaStations, peuvent de plus d�marrer depuis une disquette. Le
   d�marrage r�seau via bootp est �galement support�. Notez que les
   anciennes versions de SRM (notamment celles pour Jensen) _ne pouvaient
   pas_ d�marrer depuis une disquette. Le d�marrage depuis un disque IDE
   n'est pas support�.

   Le d�marrage de Linux avec SRM s'effectue en deux �tapes : d'abord,
   SRM charge et transf�re le controle � un chargeur secondaire. Ensuite,
   ce chargeur secondaire met en place l'environnement de Linux, lit
   l'image du noyau depuis un syst�me de fichiers sur disque et donne la
   main � Linux.

   A l'heure actuelle il existe deux chargeurs secondaires pour Linux :
   le chargeur _brut_ fourni avec le noyau Linux et aboot, distribu�
   s�parement. Ces deux chargeurs sont d�crits en d�tails ci-dessous.

1.1 Charger le chargeur secondaire

   SRM est ignorant des syst�mes de fichiers et des partitions des
   disques. Il s'attend simplement � ce que le chargeur secondaire occupe
   un certain nombre de secteurs physiques cons�cutifs, commen�ant � une
   adresse donn�e. L'information concernant la taille du chargeur
   secondaire et l'adresse de son premier secteur est stock�e dans les
   512 premiers octets. Plus pr�cisement , l'entier long occupant
   l'adresse 480 contient la _taille_ du chargeur secondaire et celui
   occupant l'adresse 488 donne le _nombre de secteurs_ de d�calage
   jusqu'au d�but du chargeur. Le premier secteur contient �galement un
   drapeau � l'adresse 496 qui vaut toujours 0 et une somme de contr�le �
   l'adresse 504. Cette somme de contr�le est simplement la somme des 63
   premiers entiers longs du premier secteur.

   Si cette somme est correcte, SRM continue et lit le nombre de secteurs
   indiqu� par la _taille_ en commen�ant par celui indiqu� dans le champ
   _num�ro de secteur_ et les place en m�moire _virtuelle_ � l'adresse
   0x20000000. Si la lecture se termine avec succ�s, SRM effectue un saut
   � l'adresse 0x20000000.

2. Le chargeur brut

   Les sources de ce chargeur peuvent �tre trouv�s dans le r�pertoire

        linux/arch/alpha/boot

   des sources du noyau Linux. Ce programme charge le noyau Linux en
   lisant START_SIZE octets en commen�ant � l'adresse BOOT_SIZE+512
   (�galement en octets). Les constantes START_SIZE et BOOT_SIZE sont
   d�finies dans le fichier d'en-tete linux/include/asm-alpha/system.h.
   START_SIZE doit �tre au moins aussi �l�v� que la taille de l'image du
   noyau (i.e, la somme des tailles des segments .text, .data, et .bss ).
   De m�me, BOOT_SIZE doit �tre au moins aussi �lev� que l'image du
   chargeur. Ces deux constantes doivent avoir comme valeur un multiple
   entier de la taille d'un secteur, soit 512 octets. Les valeurs par
   d�faut sont 2Mo pour START_SIZE et 16Ko pour BOOT_SIZE. Notez que si
   vous voulez d�marrer depuis une disquette de 1.44Mo, vous devez
   r�duire START_SIZE � 1400Ko et vous assurer que la taille du noyau que
   vous voulez d�marrer ne d�passe pas cette valeur.

   Pour construire un chargeur brut, tapez simplement make rawboot dans
   /usr/src/linux. Ceci devrait produire dans arch/alpha/boot les
   fichiers suivants :

   _tools/lxboot:_
          Le premier secteur du disque. Il contient l'adresse et la
          taille du prochain fichier au format d�crit ci-dessus.

   _tools/bootlx:_
          Le lanceur brut qui chargera le fichier ci-dessous

   _vmlinux.nh:_
          L'image brute du noyau constitu�e des segments .text, .data et
          .bss du fichier objet /usr/src/linux/vmlinux. L'extension .nh
          indique que ce fichier n'a pas l'ent�te d'un fichier objet.

   La concat�nation de ces trois fichiers devrait �tre �crite sur le
   disque � partir duquel vous voulez d�marrer. Par exemple, pour
   d�marrer depuis une disquette, ins�rez une disquette vierge dans le
   lecteur, soit /dev/fd0 et ensuite tapez :

cat tools/lxboot tools/bootlx vmlinux >/dev/fd0

   Vous pouvez maintenant arr�ter le syst�me et d�marrer depuis une
   disquette en utilisant la commande boot dva0.

3. Le chargeur aboot

   Si vous utilisez le _firmware_ SRM, aboot est la meilleure fa�on de
   d�marrer Linux. Il supporte :

     * d�marrage direct depuis divers syst�mes de fichiers (ext2,
       ISO9660, et UFS, le syst�me de fichiers de Digital Unix),
     * lancement de fichiers objets ex�cutables (ELF et ECOFF),
     * lancement de noyaux compress�s,
     * d�marrage par r�seau (en utilisant le protocole bootp),
     * table de partitions au format Digital Unix (compatible avec les
       tables de partitions de BSD),
     * d�marrage interactif et configurations par d�faut des consoles SRM
       qui n'acceptent pas les longues cha�nes d'option.

3.1 Se procurer et installer aboot

   Les codes sources les plus r�cents d'aboot sont disponibles �
   l'adresse ftp://ftp.azstarnet.com/pub/linux/axp/aboot. La description
   de ce manuel s'applique � aboot pour les versions 0.5 et suivantes.

   Une fois que vous avez t�l�charg� et extrait l'archive tar, jetez un
   oeil aux fichiers README et INSTALL pour lire les directives
   d'installation. En particulier, assurez vous que les variables, dans
   les fichiers Makefile et include/config.h sont correctes vis-�-vis de
   votre environnement . Normalement, vous ne devriez pas avoir � changer
   quoi que ce soit pour compiler sous Linux, mais c'est toujours une
   bonne chose de v�rifier. Si la configuration vous convient, tapez
   simplement make pour lancer la compilation (si vous n'effectuez pas
   cette op�ration sous Linux, sachez que aboot requiert GNU make).

   Apr�s l'ex�cution de make, le r�pertoire aboot devrait contenir les
   fichiers suivants :

   _aboot_
          L'ex�cutable r�el (fichier objet ECOFF ou ELF),

   _bootlx_
          Comme ci-dessus, mais ce fichier ne contient que les segments
          text, data et bss (ce fichier n'est pas un fichier objet),

   _sdisklabel/writeboot_
          Un utilitaire pour installer aboot sur un disque dur,

   _tools/e2writeboot_
          Un utilitaire pour installer aboot sur un syst�me de fichiers
          ext2 (n'est en g�n�ral utilis� que pour les disquettes),

   _tools/isomarkboot_
          Un utilitaire pour installer aboot sur un syst�me de fichiers
          iso9660 (utilis� par les distributeurs de CD-ROM),

   _tools/abootconf_
          Un utilitaire pour configurer aboot s'il est install�.

3.2 Installation sur disquette

   Le lanceur peut �tre install� sur une disquette en utilisant la
   commande e2writeboot (note : ceci ne peut se faire sur un Jensen car
   son _firmware_ n'implante pas le d�marrage depuis une disquette).
   Cette commande n�cessite que le disque ne soit pas trop fragment� car
   elle a besoin de trouver suffisament de secteurs contigus pour stocker
   l'image enti�re de aboot (actuellement, environ 90Ko). Si e2writeboot
   �choue � cause de �a, reformatez la disquette et r�essayez (par ex.,
   avec fdformat(1)). Par exemple, la proc�dure suivante installe aboot
   sur une disquette en supposant que la disquette est dans le lecteur
   correspondant � /dev/fd0 :

fdformat /dev/fd0
mke2fs /dev/fd0
e2writeboot /dev/fd0 bootlx

3.3 Installation sur disque dur

   Sachant que la commande e2writeboot peut �chouer sur un disque
   hautement fragment� et comme le reformattage d'un disque dur ne se
   fait pas sans peine, il est g�n�ralement plus s�r d'installer aboot
   sur un disque dur en utilisant la commande swriteboot. swriteboot
   n�cessite que les premiers secteurs soient r�serv�s aux proc�dures de
   d�marrage. Nous sugg�rons que le disque soit partitionn� de mani�re �
   ce que la premi�re partition commence � une adresse correspondant �
   2048 secteurs. Cela laisse 1Mo d'espace ibre pour stocker aboot. Sur
   un disque partitionn� de cette fa�on , il est alors possible
   d'installer aboot comme d�crit ci-dessous (en supposant que le disque
   correspond � /dev/sda.) :

swriteboot /dev/sda bootlx

   Sur un Jensen, vous devrez laisser un peu plus d'espace, sachant que
   vous devrez �galement stocker le noyau � cet endroit - 2Mo devraient
   suffire en utilisant une image compress�e. Utilisez swriteboot comme
   d�crit � la section booting pour �crire bootlx avec le noyau Linux.

3.4 Installation sur CD-ROM

   Pour construire un CD-ROM amor�able avec SRM, construisez simplement
   aboot comme d�crit ci-dessus. Assurez-vous ensuite que le fichier
   bootlx est pr�sent sur le syst�me de fichiers iso9660 (e.g., copiez
   bootlx dans le r�pertoire o� est mont� le syst�me de fichiers) , et
   lancez mkisofs sur ce r�pertoire). Apr�s cela, la seule chose restant
   � faire est de marquer le syst�me de fichiers comme amor�able avec
   SRM. Cela est r�alis� gr�ce � une commande de la forme :

isomarkboot filesystem bootlx

   La commande ci-dessus n�cessite que filesystem est un fichier
   contenant le syst�me de fichiers iso9660 et que bootlx a �t� copi�
   dans la racine de ce syst�me de fichiers. C'est tout !

3.5 Construire un noyau Linux

   Un noyau Linux amor�able peut �tre construit par les �tapes suivantes.
   Durant le make config, assurez-vous de r�pondre "oui" (_"yes"_) � la
   question concernant le lancement du noyau par SRM.

cd /usr/src/linux
make config
make dep
make boot

   La derni�re commande construira le fichier arch/alpha/boot/vmlinux.gz
   qui peut alors �tre copi� sur le disque � partir duquel vous d�sirez
   d�marrer. Dans notre exemple pr�c�dent concernant la disquette, cela
   donnerai :

mount /dev/fd0 /mnt
cp arch/alpha/boot/vmlinux.gz /mnt
umount /mnt

3.6 D�marrer Linux

   Avec le _firmware_ SRM et aboot install�, le d�marrage de Linux
   s'effectue g�n�ralement avec une commande de la forme :

     boot _devicename_ -fi _filename_ -fl _flags_

   Les arguments _filename_ et _flags_ sont optionels. S'ils ne sont pas
   sp�cifi�s, SRM utilise les valeurs par d�faut contenues dans les
   variables d'environnement BOOT_OSFILE et BOOT_OSFLAGS. La syntaxe et
   la signification de ces deux arguments est d�crite plus en d�tail
   ci-dessous.

  Nom du fichier boot

   L'argument _filename_ est de la forme :

     [_n_/]_filename_

   _n_ est un simple nombre dans l'intervalle 1..8 qui donne le num�ro de
   la partition de d�marrage. _filename_ est le chemin d'acc�s au fichier
   � lancer. Par exemple, pour d�marrer depuis la deuxi�me partition du
   sixi�me disque SCSI, vous entreriez :

boot dka600 -file 2/vmlinux.gz

   Ou, pour d�marrer depuis le premier lecteur de disquette :

boot dva0 -file vmlinux.gz

   Si un disque n'a pas de table des partitions, aboot consid�re que le
   disque contient une partition ext2 commen�ant au premier bloc du
   disque. Cela permet de d�marrer depuis une disquette.

   Le num�ro de partition 0 est utilis� pour demander le d�marrage depuis
   un disque qui ne contient pas (encore) de syst�me de fichiers. Si l'on
   sp�cifie le num�ro de "partition" 0, aboot consid�re que le noyau
   Linux suit directement l'image de aboot. Une telle chose peut �tre
   r�alis�e avec la commande swriteboot. Par exemple, pour configurer un
   d�marrage sans syst�me de fichiers depuis /dev/sda, on pourrait
   utiliser la commande :

swriteboot /dev/sda bootlx vmlinux.gz

   D�marrer un syst�me de cette fa�on n'est pas obligatoirement
   n�cessaire. La raison d'�tre de cette fonctionnalit� est de permettre
   l'installation de Linux sur un syst�me qui ne peut d�marrer depuis une
   disquette (e.g., le Jensen).

  Drapeaux de d�marrage

   Plusieurs drapeaux de d�marrage peuvent �tre sp�cifi�s. La syntaxe en
   est :

-flags "options..."

   O� "options..." est une combinaison des options suivantes (s�par�es
   par des espace). Il y a encore plus d'options, en fonction des pilotes
   que le noyau a install�. Les options list�es ci-apr�s ne sont l� que
   pour illustrer l'id�e g�n�rale :

   _load_ramdisk=1_
          Copie le syst�me de fichiers racine depuis une disquette vers
          un disque virtuel en m�moire avant de lancer le syst�me. Ce
          disque virtuel sera utilis� en lieu et place du p�riph�rique
          racine. Ceci est utile pour d�marrer Linux sur une machine qui
          ne poss�de qu'un lecteur de disquettes.

   _floppy=str_

   _root=dev_
          S�lectionne le p�riph�rique _dev_ comme syst�me de fichiers
          racine. Le p�riph�rique peut �tre sp�cifi� comme la combinaison
          des num�ros _major/minor_ du fichier de p�riph�rique en
          hexad�cimal (e.g., 0x802 pour /dev/sda2) ou un nom de fichier
          de p�riph�rique (e.g.,/dev/fd0, /dev/sda2).

   _single_
          Lance le syst�me en mode mono-utilisateur.

   _kgdb_
          Autorise _kernel-gdb_ (ne fonctionne que si CONFIG_KGDB est
          activ� ; un deuxi�me syst�me Alpha doit �tre connect� par voie
          s�rie pour que cela fonctionne).

   Quelques impl�mentations de SRM (e.g., celle du Jensen) sont limit�es
   et n'autorisent que les cha�nes d'options de courte longueur (e.g., au
   plus 8 caract�res). Dans ce cas l�, aboot peut �tre d�marr� avec le
   drapeau de d�marrage "i". Avec ce drapeau, aboot demandera �
   l'utilisateur d'entrer une cha�ne d'options pouvant atteindre 256
   caract�res. Par exemple :

boot dka0 -fl i
aboot> 3/vmlinux.gz root=/dev/sda3 single

   Comme d�marrer de cette fa�on devient rapidement p�nible , aboot
   autorise l'utilisateur � d�finir des raccourcis pour les lignes de
   commande fr�quemment utilis�es. En particulier, une option donn�e par
   un chiffre -- option --> (0-9) demande � aboot d'utiliser l'option
   correspondante dans le fichier /etc/aboot.conf. Un exemple de fichier
   aboot.conf est donn� ci-dessous :

#
# aboot default configurations
#
0:3/vmlinux.gz root=/dev/sda3
1:3/vmlinux.gz root=/dev/sda3 single
2:3/vmlinux.new.gz root=/dev/sda3
3:3/vmlinux root=/dev/sda3
8:- root=/dev/sda3            # fs-less boot of raw kernel
9:0/vmlinux.gz root=/dev/sda3 # fs-less boot of (compressed) ECOFF kernel
-

   Avec ce fichier, la commande

boot dka0 -fl 1

   correspond exactement � la commande de d�marrage donn�e ci-dessus. Il
   est cependant facile d'oublier la correspondance entre les num�ros et
   les cha�nes d'options. Pour �viter ce probl�me, d�marrez avec l'option
   "h" et aboot affichera le contenu de /etc/aboot.conf avant d'afficher
   l'invite demandant la cha�ne d'option enti�re.

   En conclusion, m�me si aboot demande l'entr�e d'une cha�ne d'options,
   il est possible d'entrer un simple caract�re ("i", "h", ou "0"-"9")
   pour obtenir le m�me r�sultat que si le drapeau avait �t� sp�cifi� sur
   la ligne de commande de d�marrage. Par exemple, vous pouvez d�marrer
   avec le drapeau "i", taper ensuite "h" (suivi par entr�e) pour vous
   rappeler le contenu de /etc/aboot.conf

  S�lectionner la partition de /etc/aboot.conf

   Quand aboot est install� sur un disque dur, il a besoin de savoir sur
   quel partition il lui faut chercher le fichier /etc/aboot.conf.
   Nouvellement compil�, aboot cherchera sur la deuxi�me partition
   (/dev/sda2). Comme il serait contraignant d'avoir � recompiler aboot
   uniquement pour changer le num�ro de la partition, abootconf autorise
   � directement modifier aboot d�j� install�. Par exemple, si vous
   d�siriez changer aboot afin qu'il utilise la _troisi�me_ partition du
   disque /dev/sda, vous utiliseriez la commande :

abootconf /dev/sda 3

   Vous pouvez v�rifier le r�glage courant simplement en omettant le
   num�ro de partition. Alors, abootconf /dev/sda affichera la partition
   actuellement s�lectionn�e. Notez que aboot �tre d�j� install� pour que
   cette commande r�ussisse. Aussi, lors de l'installation d'un nouvel
   aboot, le num�ro de partition redeviendra celui par d�faut (i.e., il
   sera n�cessaire de relancer abootconf).

   Depuis la version 0.5 de aboot, il est �galement possible de
   s�lectionner la partition contenant le fichier aboot.conf depuis la
   ligne de commande de d�marrage. Cela peut �tre fait avec une ligne de
   commande de la forme _a_:_b_ o� _a_ est le num�ro de la partition
   contenant /etc/aboot.conf et _b_ est une option d'une lettre comme
   d�crit plus haut (0-9, i, ou h). Par exemple, si vous tapez boot -fl
   "3:h" dka100 le syst�me d�marre depuis SCSI ID 1, charge
   /etc/aboot.conf depuis la troisi�me partition, affiche son contenu �
   l'�cran et attend que vous entriez les options de d�marrage.

3.7 D�marrage r�seau

   Deux �tapes pr�liminaires sont n�cessaires avant que Linux puisse
   d�marrer par un r�seau. Premi�rement, vous devrez positionner les
   variables d'environnement de SRM pour permettre le d�marrage _via_ le
   protocole bootp et deuxi�mement vous devrez configurer une autre
   machine comme serveur de d�marrage. Reportez-vous � la documentation
   de SRM fournie avec votre machine pour toute information sur la mise
   en place de bootp. Configurer le serveur de d�marrage d�pend
   �troitement du syst�me d'exploitation de cette machine, mais
   typiquement cela n�cessite de lancer le programme bootpd en t�che de
   fond apr�s avoir configur� le fichier /etc/bootptab. Le fichier
   bootptab poss�de une entr�e par machine cliente autoris�e � d�marrer
   depuis le serveur. Par exemple, si vous voulez d�marrer la machine
   myhost.cs.arizona.edu, une entr�e de la forme suivante serait
   n�cessaire :

myhost.cs.arizona.edu:\
        :hd=/remote/:bf=vmlinux.bootp:\
        :ht=ethernet:ha=08012B1C51F8:hn:vm=rfc1048:\
        :ip=192.12.69.254:bs=auto:

   Cette entr�e consid�re que l'adresse Ethernet de la machine est
   08012B1C51F8 et que son adresse IP est 192.12.69.254. L'adresse
   Ethernet peut �tre trouv�e gr�ce � la commande show device de la
   console SRM ou, si Linux est lanc�, avec la commande ifconfig.
   L'entr�e pr�cise �galement que si le client ne d�clare pas le
   contraire, le fichier qui sera lanc� sera le fichier vmlinux.bootp du
   r�pertoire /remote. Pour plus d'informations sur la configuration de
   bootpd, reportez-vous � sa page de manuel.

   Ensuite, construiser aboot gr�ce � la commande make netboot.
   Assurez-vous que le noyau que vous d�sirez lancer a d�j� �t�
   construit. Par d�faut, le Makefile du programme aboot utilise le noyau
   /usr/src/linux/arch/alpha/boot/vmlinux.gz (�ditez le Makefile si vous
   d�sirez utiliser un autre chemin d'acc�s). Le r�sultat de make netboot
   est un fichier nomm� vmlinux.bootp contenant aboot _et_ le noyau
   Linux, pr�t pour le d�marrage par r�seau.

   Enfin, copiez vmlinux.bootp dans le r�pertoire du serveur de
   d�marrage. Dans l'exemple plus haut, vous l'auriez copi� dans le
   r�pertoire /remote/. Ensuite, allumez la machine client et d�marrez
   la, en sp�cifiant l'adaptateur Ethernet comme p�riph�rique de
   d�marrage. SRM nomme typiquement le premier adaptateur Ethernet ewa0,
   donc, pour d�marrer depuis ce p�riph�rique, vous utiliserez la
   commande :

boot ewa0

   Les options -fi et -fl sont utilisable comme d'habitude. En
   particulier, vous pouvez demander � aboot d'attendre l'entr�e
   d'arguments pour le noyau Linux en sp�cifiant l'option -fl i.

4. Partager un disque avec Digital Unix

   Malheureusement, Digital Unix ne sait rien de Linux, aussi, partager
   un disque unique entre les deux syst�mes n'est pas totalement simple.
   Cependant, ce n'est pas une t�che difficile si vous suivez les
   conseils prodigu�s dans cette section. Nous consid�rerons que vous
   utilisez la version 0.5 ou post�rieure de aboot.

4.1 Partitionner le disque

   Premi�rement et avant tout : n'utilisez _jamais_ les programmes de
   partitionnement de Linux (minlabel ou fdisk) sur un disque �galement
   utilis� par Digital Unix. Le programme Linux minlabel utilise le m�me
   format de table de partitions que le programmme disklabel de Digital
   Unix, mais il existe des incompatibilit�s avec les donn�es �crites par
   minlabel, alors Digital Unix refusera tout simplement la table de
   partitions engendr�e par minlabel. Pour configurer une partition Linux
   ext2 sous Digital Unix, vous allez devoir changer l'entr�e _disktab_
   de votre disque. Pour illustrer notre propos, supposons que vous avez
   un disque rz26 (un disque de 1Go) sur lequel vous voulez installer
   Linux. L'entr�e _disktab_ sous Digital Unix v3.2 ressemble � (voyez le
   fichier /etc/disktab) :

rz26|RZ26|DEC RZ26 Winchester:\
        :ty=winchester:dt=SCSI:ns#57:nt#14:nc#2570:\
        :oa#0:pa#131072:ba#8192:fa#1024:\
        :ob#131072:pb#262144:bb#8192:fb#1024:\
        :oc#0:pc#2050860:bc#8192:fc#1024:\
        :od#393216:pd#552548:bd#8192:fd#1024:\
        :oe#945764:pe#552548:be#8192:fe#1024:\
        :of#1498312:pf#552548:bf#8192:ff#1024:\
        :og#393216:pg#819200:bg#8192:fg#1024:\
        :oh#1212416:ph#838444:bh#8192:fh#1024:

   Les champs int�ressants ici sont oit/?/; et p_?_, o� _?_ d�signe une
   lettre de l'intervalle a-h (les huit premi�res partitions). La valeur
   o indique l'adresse du d�but de la partition (en nombre de secteurs)
   et la valeur p donne la taille de la partition (�galement en nombre de
   secteurs). Reportez-vous � disktab(4) pour plus d'informations. Notez
   que Digital Unix _aime_ d�finir des partitions qui se chevauchent.
   Pour les entr�es ci-dessus, l'organisation des partitions ressemble �
   cela (vous pouvez v�rifier en ajoutant les diverses valeurs o et p) :

  a     b         d           e           f
|---|-------|-----------|-----------|-----------|

                        c
|-----------------------------------------------|

                     g                 h
            |-----------------|-----------------|

   Digital Unix insiste pour que la partition a commence � l'adresse 0 et
   que la partition c couvre l'�tendue du disque. A part cela, vous
   pouvez organiser la table des partitions comme bon vous semble.

   Supposons que vous avez Digital Unix utilisant la partition g et que
   vous voulez installer Linux sur la partition h avec la partition b
   comme partition de swap. Pour obtenir cette organisation sans d�truire
   la partition Digital Unix existante, vous devez configurer
   explicitement les types des partitions. Vous pouvez r�aliser ceci en
   ajoutant un champ t pour chaque partition. Dans notre cas, nous
   ajoutons la ligne suivante � l'entr�e _disktab_.

        :ta=unused:tb=swap:tg=4.2BSD:th=reservd8:

   Pourquoi avons-nous marqu� la partition h comme "reservd8" plut�t que
   comme "ext2" ? Bon, Digital Unix ne connait rien de Linux. Une
   partition de type "ext2" correspond � une valeur num�rique de 8, et
   Digital Unix utilise la ch�ne "reservd8" pour cette valeur. Donc, dans
   le langage de Digital Unix, "reservd8" signifie "ext2". Ceci �tait la
   partie hardue. Maintenant, il ne nous reste plus qu'� installer la
   nouvelle entr�e _disktab_ sur le disque. Consid�rons que le disque �
   l'ID SCSI 5. Dans ce cas, nous faisons :

disklabel -rw /dev/rrz5c rz26

   Vous pouvez v�rifier que tout va bien en lisant le _disklabel_ gr�ce �
   la commande disklabel -r /dev/rrz5c. A ce point, vous pouvez vouloir
   red�marrer Digital Unix et vous assurer que la partition Digital Unix
   est encore pr�sente et en bon �tat. Si c'est le cas, vous pouvez
   arr�ter la machine et commencer l'installation de LInux. Prenez soin
   de sauter l'�tape de partitionnement du disque lors de la proc�dure
   d'installation. Sachant que nous avons d�j� install� une table de
   partitions correcte, vous devriez �tre capable de proc�der � cette
   op�ration et de s�lectionner la huiti�me partition comme partition
   racine de Linux et la deuxi�me comme partition de swap. Si le disque
   est le deuxi�me disque SCSI de la machine, les noms de p�riph�riques
   pour ces deux partitions seront /dev/sdb8 et /dev/sdb2, respectivement
   (notez que Linux utilise des lettre pour d�signer les disques et des
   num�ros pour d�signer les partitions, exactement � l'inverse de
   Digital Unix ; le sch�ma de Linux a plus de sens bien s�r ;-).

4.2 Installer aboot

   _Premier obstacle_ : avec le _firmware_ --> -- SRM, vous ne pouvez
   d�marrer qu'un et un seul syst�me d'exploitation par disque. Pour
   cette raison, il est g�n�ralement pr�f�rable de disposer d'au moins
   deux disques SCSI dans une machine sur laquelle vous d�sirez utiliser
   aussi bien Linux que Digital Unix. Bien s�r vous pouvez aussi d�marrer
   Linux depuis une disquette si la vitesse importe peu, ou par un
   r�seau, si vous disposez d'un serveur bootp. Mais dans cette partie,
   nous consid�rerons que vous souhaitez d�marrer Linux depuis un disque
   contenant une ou plusieurs partitions Digital Unix.

   _Deuxi�me obstacle_ : installer aboot sur un disque partag� avec
   Digital Unix rend les premi�re et troisi�me partitions inutilisables
   (sachant qu'elles doivent commencer � l'adresse 0). Pour cette raison,
   nous vous recommandons de changer la taille de la partition a � une
   valeur juste suffisament �lev�e pour contenir aboot (1Mo devrait
   convenir).

   Une fois que ces deux obstacles sont surmont�s, installer aboot est
   aussi simple que d'habitude : comme les partitions a et c vont
   recouvrir aboot , nous devons sp�cifier � swriteboot que ceci est
   intentionnel . Nous pouvons le faire sous Linux avec une ligne de
   commande de la forme suivante (de nouveau, nous supposerons que l'on
   veut installer aboot sur le deuxi�me disque SCSI) :

swriteboot -f1 -f3 /dev/sdb bootlx

   Le param�tre -f1 signifie que nous voulons forcer l'�criture de bootlx
   m�me s'il recouvre la premi�re partition. La m�me chose s'applique �
   la troisi�me partition.

   C'est tout. Vous devriez d�sormais pouvoir arr�ter le syst�me et
   lancer Linux depuis le disque dur. Dans notre exemple, la ligne de
   commande SRM pour le faire serait :

boot dka5 -fi 8/vmlinux.gz -fl root=/dev/sdb8