Ceci est une ancienne révision du document !
Table des matières
Installation de 4.3BSD-Quasijarus0c sur MicroVAX via l'émulateur SimH
Prérequis pour l'installation de 4.3BSD-Quasijarus0c
- Le compilateur gcc pour compiler l'utilitaire gzcompat.
- Un éditeur de texte comme vim, nano, ee…etc.
- Un interpréteur perl pour créer la bande d'installation avec le script
mkdisttap.pl. - Le simulateur vax et le fichier
ka655x.binde lémulateur SimH. - Et enfin le sets de la distribution Quasijarus0c :
stand.Zminiroot.Zrootdump.Zusr.tar.Zsrcsys.tar.Zsrc.tar.Z
- Il y a aussi les sets qui suivent mais qui sont seulement utiles sur un vrai VAX :
cassette.Zconsolerl.Zfloppy.Z
mkdisttap.pl, ici. Les sets étant de vielles archives .Z, il se peut que la création de la bande échoue.
Processus d'installation de 4.3BSD-Quasijarus0c
Depuis un terminal sur votre hôte
Créer les répertoires pour 4.3BSD-Quasijarus0c :
mkdir -p emulateur/simh/4.3BSD-Quasijarus0c
Se rendre dans le répertoire de Quasijarus0c :
cd emulateur/simh/4.3BSD-Quasijarus0c/
Installer les logiciels requis pour Debian et télécharger le fichier ka655x.bin :
sudo apt install simh vim wget perl gcc && wget https://github.com/open-simh/simh/blob/master/VAX/ka655x.bin
.deb faîtes ceci : wget http://ftp.fr.debian.org/debian/pool/main/s/simh/simh_3.8.1-6.1_amd64.deb
puis :
sudo dpkg -i simh_3.8.1-6.1_amd64.deb
SimH n'a pas besoin de dépendances logicielles donc inutile de taper la commande sudo apt-get -f install.
Installer les logiciels requis pour FreeBSD et télécharger le fichier ka655x.bin :
sudo pkg install open-simh vim perl && fetch https://github.com/open-simh/simh/blob/master/VAX/ka655x.bin
Télécharger les sets d'installation pour 4.3BSD-Quasijarus0c :
wget https://unixhistory.tavi.co.uk/quasijarus/{stand,miniroot,rootdump,usr.tar,srcsys.tar,src.tar}.Z
et sous FreeBSD :
fetch https://unixhistory.tavi.co.uk/quasijarus/{stand,miniroot,rootdump,usr.tar,srcsys.tar,src.tar}.Z
Télécharger gzcompat, désarchiver le fichier et compiler l'utilitaire :
wget https://unixhistory.tavi.co.uk/quasijarus/gzcompat.zip
puis extraire le fichier zip :
unzip gzcompat.zip
et enfin compiler gzcompat :
gcc gzcompat.c -o gzcompat -lz
ou compiler sous FreeBSD :
clang gzcompat.c -o gzcompat -lz
Extraire les sets avec gzcompat et zcat du logiciel gzip :
./gzcompat stand.Z | zcat > stand
./gzcompat miniroot.Z | zcat > miniroot
./gzcompat rootdump.Z | zcat > rootdump
./gzcompat usr.tar.Z | zcat > usr.tar
./gzcompat srcsys.tar.Z | zcat > srcsys.tar
./gzcompat src.tar.Z | zcat > src.tar
Contenu du script perl mkdisttap.pl pour créer la bande d'installation :
- mkdisttap.pl
#!/usr/local/bin/perl -w use strict; # Based on mkdisttap.pl # ftp://ftp.mrynet.com/pub/os/PUPS/PDP-11/Boot_Images/2.11_on_Simh/211bsd/mkdisttap.pl # # $Id: mkdisttap.pl,v 1.1 2006/09/16 23:33:46 kirk Exp kirk $ # # Based on the example in the HOWTO using dd. Does not work! # add_file("cat mtboot mtboot boot |", 512); # Based on the maketape.c program and the maketape.data data file. add_file("stand", 512); end_file(); add_file("miniroot", 10240); end_file(); add_file("rootdump", 10240); end_file(); add_file("usr.tar", 10240); end_file(); add_file("srcsys.tar", 10240); end_file(); add_file("src.tar", 10240); end_file(); end_file(); sub end_file { print "\x00\x00\x00\x00"; } sub add_file { my($filename, $blocksize) = @_; my($block, $bytes_read, $length); open(FILE, $filename) || die("Can't open $filename: $!"); while($bytes_read = read(FILE, $block, $blocksize)) { if($bytes_read < $blocksize) { $block .= "\x00" x ($blocksize - $bytes_read); $bytes_read = $blocksize; } $length = pack("V", $bytes_read); print $length, $block, $length; } close(FILE); }
Créer le fichier mkdisttap.pl :
vim mkdisttap.pl
puis rendre le fichier exécutable :
chmod +x mkdisttap.pl
Créer la bande d'installation de 4.3BSD-Quasijarus0c :
./mkdisttap.pl > quas.tap
Si la bande n'est pas fiable, télécharger directement le fichier de la bande d'installation et l'extraire :
wget https://unixhistory.tavi.co.uk/quasijarus/quastape.zip
puis extraire le fichier :
unzip quastape.zip && mv quastape.tap quas.tap
Création fichier install.ini
vim install.ini
Démarrer le simulateur vax à partir du fichier install.ini :
vax install.ini
Depuis le terminal du simulateur
Choisissez votre langue :
8
Après l'invite »> démarrer sur la bande d'installation :
boot mua0:
Après le caractère = tapez :
copy
tms(0,1)
ra(0,1)
Puis tapez les commandes suivantes après le second singe = :
boot
ra(0,1)vmunix
Ensuite on où demande le disque racine
ra0*
Désormais on spécifie les tranches du disque via le fichier disktab :
disklabel -rw ra0 ra82 "Quasijarus" /usr/mdec/rdboot /usr/mdec/bootra
Restauration du rootdump :
disk=ra0 type=ra82 tape=tms xtr
Et enfin synchronisation du disque :
sync
sync
sync
sync
sync
Appuyez sur la combinaison de touche CTRL+E pour stopper le simulateur et appuyez sur la touche q après l'invite sim> pour quitter l'émulateur SimH.
Retour au terminal de l'hôte
Création du fichier boot.ini :
vim boot.ini
Démarrer le simulateur à partir du fichier boot.ini :
vax boot.ini
Retour au terminal de l'émulateur
Sélectionnez votre langue :
8
puis booter sur le disque dur :
dua0:
Préparation du disque pour 4.3BSD-Quasijarus0c :
newfs ra0g ra82
newfs ra0h ra82
mkdir /home
mount /dev/ra0g /usr
cd /dev
MAKEDEV tmscp0
MAKEDEV dz0
Restauration de la tranche /usr du disque dur :
cd /usr
mt rew
mt fsf 3
tar xpbf 20 /dev/rmt12
mkdir src
cd src
mkdir sys
cd sys
mt fsf
tar xpbf 20 /dev/rmt12
cd ..
mt fsf
tar xpbf 20 /dev/rmt12
Configuration et création du fichier fstab :
cd /etc
cat > fstab
/dev/ra0a:/:rw:1:1
/dev/ra0h:/home:rw:1:3
/dev/ra0g:/usr:rw:1:2
puis appuyez sur CTRL+D pour retourner à l'invite du terminal.
Lancer la commande pour redémarrer le système :
reboot
ce qui va provoquer la synchronisation du disque dur et stopper le simulateur.
Après l'invite sim> vous pouvez quitter l'émulateur avec la touche q.
Démarrer 4.3BSD-Quasijarus0c en mode multi-utilisateur
vax boot.ini
On vous demande votre login, tapez
root
pas besoin de mot de passe par défaut.
