Page suivante Page précédente Table des matières
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 (
minlabeloufdisk) sur un disque également utilisé par Digital Unix. Le programme Linuxminlabelutilise le même format de table de partitions que le programmmedisklabelde Digital Unix, mais il existe des incompatibilités avec les données écrites parminlabel, alors Digital Unix refusera tout simplement la table de partitions engendrée parminlabel. Pour configurer une partition Linuxext2sous 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/?/; etp?, où ? désigne une lettre de l'intervallea-h(les huit premières partitions). La valeuroindique l'adresse du début de la partition (en nombre de secteurs) et la valeurpdonne 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 valeursoetp) :
a b d e f |---|-------|-----------|-----------|-----------| c |-----------------------------------------------| g h |-----------------|-----------------|Digital Unix insiste pour que la partition
acommence à l'adresse 0 et que la partitionccouvre 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
get que vous voulez installer Linux sur la partitionhavec la partitionbcomme 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 champtpour 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
hcomme "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 rz26Vous 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/sdb8et/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
abootPremier 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
abootsur 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 partitionaà une valeur juste suffisament élevée pour conteniraboot(1Mo devrait convenir).Une fois que ces deux obstacles sont surmontés, installer
abootest aussi simple que d'habitude : comme les partitionsaetcvont recouvriraboot, nous devons spécifier àswritebootque 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 installerabootsur le deuxième disque SCSI) :
swriteboot -f1 -f3 /dev/sdb bootlxLe paramètre
-f1signifie que nous voulons forcer l'écriture debootlxmê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
Page suivante Page précédente Table des matières