Ce billet est la seconde partie d'une série, Restaurer un vieil ordinateur :

  1. Introduction
  2. L'installation du système d'exploitation (billet actuel)
  3. L'installation et les tests d'interfaces graphiques
  4. L'installation et les tests de logiciels (traitement de texte entre autres)

Notre ordinateur n'a, vous l'avez lu dans le billet précédent (sinon, retournez-y), que 4 Mo de mémoire vive, et j'ai l'ambition d'y installer une interface graphique. Donc on oublie Linux + un serveur X. Que reste-t-il ? En effet, pas grand chose à part le DOS.

Le DOS ? Plutôt un DOS !

Car outre MS-DOS (non maintenu depuis 1995), il existe OpenDos (nommé aussi DR-DOS, de SCO ex Caldera - oui, les méchants qui tapent sur Linux - gratuit mais non libre, avec quelques fonction intéressantes comme un multi-tâche bouffeur de mémoire), et surtout... FreeDos ! Ce dernier est libre (licence GPL), et possède aussi des fonctions intéressantes : autocomplétion des noms de fichiers (oui, comme sous Bash), gestion des disques en FAT32, un développement encore actif (une version 1 devrai être disponible incessamment sous peu, ce qui équivaut à une version 10 d'un logiciel propriétaire ;-) ).

A l'unanimité, j'ai donc choisi FreeDos. Celui-ci est disponible sous la forme d'une image de CD-Rom, avec une disquette de démarrage pour les ordinateurs qui ne peuvent démarrer sur un CD-Rom, ou sous la forme d'un pile de disquettes.

Étant plutôt flemmard (c'est le propre de l'informaticien, rappelons-le), je n'avais pas envie de goûter à nouveau au plaisir des installations sur dix disquettes, où vous passez votre temps à sortir-insérer les-dites disquettes dans votre lecteur. Ayant dans mon ordinateur habituel un lecteur CD-Rom ne servant à rien (il avait été mis au chômage par un combo lecteur DVD - graveur de CD), je me suis décidé à le mettre sur le 486...

Je vous passe les détails de l'installation (un conseil cependant : méfiez vous comme de la peste des tresses IDE qui n'ont pas les machins qui empêchent de les brancher à l'envers... parce qu'une fois qu'une tresse est branchée à l'envers sur la carte mère, vous avez beau être sûr du branchement de vos disques, plus rien ne marche !). Une petite information : ne cherchez pas à faire détecter votre lecteur CD-Rom par le BIOS si celui-ci ne prend en charge que des disques dur en IDE. Mettez le comme aucun disque branché (ou none si votre BIOS à l'impolitesse de vous parler dans la langue des Monty Python), cela n'empêchera pas sa détection par les logiciels qui vont bien.

Une fois la bête remontée, on peut passer à l'installation des logiciels proprement dite. J'ai fais le choix de reformater le disque dur (il doit être cependant possible d'installer FreeDos en parallèle avec un autre DOS, je n'ai pas essayé).

On va donc télécharger les images disque du CD-Rom et de la disquette de démarrage (je n'avais même pas l'espoir que le CD-Rom démarre tout seul), sur le site de FreeDos. Notez qu'il existe deux types d'image disque, fdbootcd.iso et fdfullcd.iso, la première ne contenant que l'essentiel, la seconde proposant des logiciels supplémentaires (c'est une distribution, comme pour Linux). L'image fdfullcd.iso n'étant pas disponible pour la version actuel (Beta9 Service Release #2), j'ai pris l'image fdbootcd.iso.

On grave donc l'image du CD à l'aide de votre K3B logiciel de gravure préféré, et on copie l'image de la disquette avec la commande (lancée depuis le dossier où se trouver l'image) :
dd if=fdos1440.img of=/dev/fd0
(Sous Windows, il faut utiliser un sombre utilitaire nommé rawrite.exe... mais utilisez Linux, c'est plus simple :-p )

On démarre ensuite sur la disquette, en plaçant aussi le CD-Rom dans le lecteur, pour la suite.

Un premier menu s'affiche :

  1. FreeDOS Beta9-Service Release 2
  2. Smart Boot Manager (replaces any failing boot-from-cederom BIOS code)
  3. Memtest86+ v1.26 (tests the correctness of your RAM)
  4. FreeDos

On choisi 1 (Attention : les menus vont très vite, appuyez sur une touche (une flèche de direction) dès que vous voyez un menu, pour avoir le temps de lire.

Un second menu (horizontal celui-ci) :

  1. Load XMS driver
  2. SafeMode
  3. Ask me (default)
  4. Himen+Emm386

Il s'agit ici du choix du gestionnaire de mémoire, j'ai choisi le 1 (XMS driver). Je ne suis pas un spécialiste de la mémoire sous dos, si quelque pouvait m'expliquer la différence entre XMS et Himen+Emm386, ça serait gentil :-)

Ensuite, l'ordinateur vous demande en quelle langue doit-il vous parler : le choix est assez restreint, à moins que vous parliez le néerlandais ou le PL (polonais ?), je vous conseille de taper EN.

Quatrième question : quel driver utiliser pour le lecteur CD-Rom ?

J'ai fais le choix 1, c'est-à-dire d'utiliser le driver libre ATAPICDD.SYS développé par le projet FreeDos. Celui-ci n'est pas encore stable, vous l'utiliserez à vos risques et périls, tout ça (mais sur un 486 sans données importantes sur le disques, vous ne risquez pas grand chose...)

Le programme va essayer de charger le driver, et devrai vous dire que tout va bien (il m'est arrivé qu'il me dise que tout allait mal, mais en redémarrant l'ordinateur (CTRL+ALT+SUPPR) ça marchait de nouveau, je ne sais pas si ça vient du driver boiteux ou de mon lecteur de CD-Rom asmathique.

Ensuite (si tout va bien), vous utilisez le choix 0 du nouveau menu pour utiliser le driver précédemment chargé, et... TADAM... vous arrivez face à un nouveau menu !

Dans celui-ci, nous allons rendre une visite à l'invite de commande (prompt, choix 2) pour reformater manuellement le disque (le programme d'installation ne le fait pas tout seul). Cela se fait avec les commandes suivantes (attention ! votre clavier est en QWERTY, donc le a c'est q, le m c'est ?, les deux points c'est m, le / est à droite de votre clavier sur le pave numérique, sinon c'est !) :
format c: /U
pour formater le disque dur. Vous devrez aussi donner un nom à votre disque dur, profitez-en, c'est l'un des rares moments où vous pourrez faire preuve de créativité pendant l'installation (un bon point à celui qui trouve la référence). Chez moi, mon disque se nomme Zeus.

Commande suivante :
sys c:
Cela va permettre à votre disque dur de démarrer. On revient ensuite au menu en entrant la commande...
menu

Dans ce menu, on choisit le choix 1 (Configure FreeDOS Installation settings). Un autre menu s'affiche, commençant par :

  1. Start installation of FreeDOS beta9 (démarrer l'installation de FreeDOS beta9)
  2. Localize language, keyboard and display (choisir la langue, le clavier, et l'affichage)

On va commencer par entrer 2, puis 8 (le nombre correspondant à la France). Miracle, maintenant on a un clavier AZERTY (elle est pas belle la vie ?).

On revient au menu précédent, et maintenant on entre 1. L'installation devrait se dérouler facilement, on vous demandera le dossier où vous voulez installer FreeDos (chez moi c'est c:\fdos, faites de même si vous voulez suivre à la lettre tout ce que je raconte).

Une fois l'installation finie, on retire disquette et CD-Rom, et on redémarre. Notez que le Kernel vous permet d'appuyer sur F5 au démarrage pour ne pas charger les fichiers CONFIG.SYS et AUTOEXEC.BAT, et sur F8 pour vous laisser valider chacune des entrées de ces deux fichiers : ça pourrait vous sauver la vie... un jour.

A la fin de mon installation, je n'avais ni CONFIG.SYS, ni AUTOEXEC.BAT (mais j'ai des doutes sur la fin de mon installation, si quelqu'un peut confirmer...)

Je vais donc vous proposer mes propres fichiers, il vous suffit de les copier coller dans un éditeur, et de les enregistrer sur une disquette (attention, vérifiez que votre éditeur de texte enregistre les fins de ligne au format DOS (CRLF) !)

Les commentaires commençant par rem sont dans mes fichiers originaux, ceux commençant par rem ## ont été rajoutés pour ce billet :

CONFIG.SYS :

rem ## Expliquer au DOS qu'on peut avoir 26 lecteurs, et
rem ## plein de fichiers ouverts
LASTDRIVE=Z
BUFFERS=30
FILES=120
DOS=HIGH,UMB
rem ## Expliquer au DOS comment utiliser la mémoire RAM :
DEVICE=C:\fdos\bin\FDXMS.SYS
rem ## Le driver du CD-Rom, voir explications plus bas
rem FreeDos cdrom driver :
rem DEVICEHIGH=C:\FDOS\bin\atapicdd.sys /d:SHSU001
device=c:\fdos\msdos\oakcdrom.sys /D:SHSU001 
rem ## Le shell à charger. Le paramètre /E donne de la
rem ## mémoire aux variables d'environnement (SET)
SHELLHIGH=C:\COMMAND.COM /E:512 /P

AUTOEXEC.BAT :

rem ## Eviter d'afficher toutes les commandes au 
rem ## démarrage :
@echo off
rem *********** Dos options *******************
rem ## Avoir un prompt digne de ce nom
PROMPT=[superman@world:$p] $$
rem ## Les variables d'environnement pour FreeDos
SET dosdir=C:\FDOS
rem ## Le PATH (pour  c:\programs\dsk2, voir le billet 
rem ## sur les GUI)
PATH %dosdir%\bin;C:\PROGRAMS\DSK2
set NLSPATH=%dosdir%\NLS
set HELPPATH=%dosdir%\HELP
rem ## Les dossiers temporaires, VERIFIEZ QU'ILS 
rem ## EXISTENT !
set temp=%dosdir%\temp
set tmp=%dosdir%\temp
rem ## Le fuseau horaire, utilisé par certains
rem ## programmes comme UNZIP
set TZ=MET-2

rem *********** Devices options ***************
rem ## Le CD-Rom, voir plus bas
C:\FDOS\bin\shsucdx /d:SHSU001,D /C
rem ## Le driver de la souris. Vous pouvez essayer
rem ## d'utiliser ctmouse2, qui prend en charge la
rem ## molette, mais qui fait planter les programmes
rem ## utilisant la souris chez moi.
ctmouse /3
rem ## Mettre le clavier en AZERTY (des fois, ça sert)
LH KEYB FR

rem *********** Un*x-like alias ***************
rem ## Quelques alias, pour se sentir chez soi
set DIRCMD=/w/p
alias ls=dir
rem ## A vous de choisir : fasthelp est plus proche du
rem ## man un*x, à savoir une page d'aide textuelle
rem ## affichée par un pager.
rem ## Mais je préfère help, une aide hypertextuelle avec
rem ## support de la souris
alias man=help
rem alias man=fasthelp
alias cp=copy
alias mv=move
alias cat=type
alias clear=cls
rem ## Le troll du jour :
alias vi=edit
alias vim=edit
alias emacs=edit
alias nano=edit
alias sh=command
alias bash=command
alias rm=del /p
alias diff=fc

rem ## Ignorez les lignes qui suivent avant de lire le
rem ## billet sur les interfaces graphiques
rem *********** Run a GUI (desktop2) **********
dbd

Pour copier ces fichiers depuis une disquette :

copy a:\autoexec.bat c:\
copy a:\config.sys c:\

Pour lancer l'éditeur de texte :
edit

(Si ça ne marche pas, votre PATH n'est pas bien configuré. Entrez : c:\fdos\bin\edit)

A propos du lecteur CD-Rom : j'ai testé le driver fourni par FreeDos (ATAPICDD.SYS, celui qui peut déclencher la fin du monde). Il affiche des signes cabalistiques lors de son chargement et de l'accès à un lecteur CD-Rom, et au final refuse de lire le disque.

J'ai récupéré sur une disquette de démarrage de Windows 98 le driver correspondant à mon lecteur : oakcdrom.sys, que j'ai copié dans le dossier c:\fdos\msdos créé pour l'occasion. Et là, ça marche, tout va bien (avec les bonnes lignes dans le config.sys).

Une dernière étape : maintenant que le lecteur CD-Rom fonctionne, vous pouvez copier le fichier UNZIP.EXE se trouvant sur le CD-Rom d'installation de FreeDos dans votre dossier bin, pour pouvoir par la suite décompresser des archives ZIP par la commande UNZIP fichier.zip. Pour réaliser la copie, utilisez la commande (pensez à l'autocomplétion par la touche tabulation pour les noms de fichiers) :

cp d:\freedos\setup\odin\unzip.exe c:\fdos\bin

(Oui, bon, vous pouvez utiliser copy au lieu de cp si vous n'avez pas mis mes alias...)

Première conclusion :

Nous avons maintenant un système d'exploitation en ligne de commande pleinement utilisable, et presque totalement libre ! La seule entorse à la libritude est le driver de CD-Rom, il faut encore attendre que la version libre soit stabilisée.