UMSDOS HOW-TO
Jacques Gelinas,
[email protected]
v1.1, 13 November 1995
_U_m_s_d_o_s est un systeme de fichiers pour _L_i_n_u_x. Il propose une alterna-
tive au systeme de fichiers _E_X_T_2. Son principal but est de parvenir a
une coexistence simplifiee avec les donnees _M_S_-_D_O_S en partageant la
meme partition. Ce document explique tout d'abord comment utiliser
_U_m_s_d_o_s dans differentes configurations, puis son fonctionnement. Il se
termine par quelques informations qui devraient vous permettre de
decider si c'est un bon choix pour vous (cf. Pourquoi UMSDOS a la fin
de ce document). Adaptation francaise realisee par Guillaume
Deschamps (
[email protected]) Version de l'adapta-
tion : v0.1b
11.. _U_m_s_d_o_s :: PPrreesseennttaattiioonn
11..11.. HHiissttoorriiqquuee
Le projet _U_m_s_d_o_s a commence en 1992, et a ete disponible sur le reseau
sous forme de patch en janvier 1994. Il a ete inclus dans la
distribution standard du noyau en juillet, a partir de la version
1.1.36.
_U_m_s_d_o_s a ete au depart adopte dans la distribution _S_l_a_c_k_w_a_r_e avant
meme d'etre inclus dans le noyau officiel.
_U_m_s_d_o_s a commence a etre ameliore a partir de la version 1.1.60 du
noyau. Ses performances ont considerablement augmente, surtout en ce
qui concerne l'ecriture. Il est de nouveau stable depuis la version
1.1.70 (a peu pres).
Un bug majeur a ete corrige dans _L_i_n_u_x 1.2.2. Ce bug causait des torts
aux utilisateurs depuis le debut (certains fichiers etaient renommes
sans avertissement, donnant l'impression qu'ils avaient ete effaces).
Attention ! La _S_l_a_c_k_w_a_r_e 2.2 contient toujours la version 1.2.1 du
noyau, donc elle a ce bug.
11..22.. DDiissppoonniibbiilliittee
Il est disponible sous forme de patch pour les noyaus 1.0.x, et est
inclus dans le noyau 1.2. Il peut etre compile avec le noyau ou charge
comme un module. Cependant si vous decidez pour l'instant d'utiliser
_U_m_s_d_o_s comme un module, il vous faudra aussi utiliser le systeme de
fichiers _M_S_-_D_O_S en tant que module. Cela vient d'une limitation du
systeme de gestion des modules (certains symboles ne sont exportes que
lorsque les drivers sont eux-memes des modules).
11..33.. DDiissttrriibbuuttiioonnss llee ssuuppppoorrttaanntt
Dans l'etat actuel des choses, seule la distribution _S_l_a_c_k_w_a_r_e semble
le supporter. Mais j'ai surement tort donc n'hesitez pas a m'envoyer
des corrections a ce sujet. (NdT : en anglais !)
11..44.. SSiittee dd''aaccccuueeiill
Le site d'accueil pour _U_m_s_d_o_s est sunsite.unc.edu. Allez faire un tour
du cote du repertoire /pub/Linux/system/Filesystems/umsdos.
11..55.. DDooccuummeennttaattiioonn tteecchhnniiqquuee
Il existe beaucoup de documentation sur la structure interne de
_U_m_s_d_o_s, disponible a la fois aux formats HTML et texte au meme endroit
que les utilitaires.
Pour ce que j'en sais, la version HTML n'est pas disponible sur WWW.
Vous devez la telecharger, puis la "untarer" et finalement la lire
localement.
11..66.. LL''aauutteeuurr
Jacques Gelinas
[email protected]
22.. _U_m_s_d_o_s ccoommmmee ppaarrttiittiioonn pprriinncciippaallee
22..11.. LLee ccoonncceepptt ppsseeuuddoo--rraacciinnee
Avec _U_m_s_d_o_s, _L_i_n_u_x peut etre installe sur une partition _D_O_S standard.
_L_i_n_u_x est alors installe comme le second (ou troisieme) systeme
d'exploitation sur la partition. Pour eviter toute collision dans les
noms (il existe peut-etre deja un repertoire bin ou tmp sur le lecteur
C:), _U_m_s_d_o_s a recours a une astuce : la pseudo-racine.
Tous les fichiers _L_i_n_u_x sont installes dans un sous-repertoire _D_O_S
appele Linux, generalement C:\LINUX. La structure normale des
repertoires _L_i_n_u_x_/_U_n_i_x se trouve la. Vous obtenez donc :
+o
C:\LINUX\BIN
+o
C:\LINUX\ETC
+o
C:\LINUX\LIB
+o
C:\LINUX\ROOT
+o
C:\LINUX\SBIN
+o
C:\LINUX\TMP
+o
C:\LINUX\USR
+o
C:\LINUX\VAR
Quand _U_m_s_d_o_s demarre, il cherche le repertoire linux puis /linux/etc.
S'il existe, il active le mode pseudo-racine.
Le mode pseudo-racine s'occupe principalement de rediriger le
repertoire racine vers C:\LINUX, ce qui donne comme resultat un
repertoire _U_n_i_x classique :
+o
/bin
+o
/etc
+o
/lib
+o
/root
+o
/sbin
+o
/tmp
+o
/usr
+o
/var
Il ajoute de plus a cette liste un nouveau repertoire appele DOS, qui
est virtuel.
22..22.. CCee qquu''iill ffaauutt ssaavvooiirr aa pprrooppooss dduu mmooddee ppsseeuuddoo--rraacciinnee
+o Ce mode peut seulement etre active au moment du demarrage. Il n'y a
aucun moyen de l'activer en utilisant la commande mount.
+o Le mecanisme est juste de donner une vue differente d'un systeme de
fichiers _U_m_s_d_o_s normal. Cela signifie qu'une partition principale
peut etre montee tout a fait normalement. Il n'y aura pas d'effet
pseudo-racine.
Par exemple, si vous demarrez sous Linux avec une disquette de
maintenance et que vous montez votre partition principale normale
dans /mnt, vous trouverez tous vos repertoires linux dans
/mnt/linux/bin, /mnt/linux/etc et ainsi de suite.
33.. DDiiffffeerreenntteess rreemmaarrqquueess aauu ssuujjeett dduu ffoonnccttiioonnnneemmeenntt ddee _U_m_s_d_o_s
33..11.. OOppttiioonn ddee mmoouunntt
Vous pouvez utiliser les memes options pour mount que pour le systeme
de fichiers MS-DOS. L'utilisation de l'option conv= est discutable sur
un systeme _U_m_s_d_o_s. Je propose de l'eviter. Les options que vous aurez
generalement a prendre en compte sont :
+o uid=
+o gid=
+o umask=
Il faut juste vous souvenir que _U_m_s_d_o_s traite les repertoires non
promus de la meme facon que _M_S_-_D_O_S. Les options ci-dessus vont donc
s'appliquer globalement a tous les repertoires non promus. _u_i_d
configure le proprietaire par defaut, _g_i_d le groupe par defaut et
_u_m_a_s_k les permissions par defaut sur les fichiers.
33..22.. CCoommmmeenntt ddeetteerrmmiinneerr lleess vvaalleeuurrss ppaarr ddeeffaauutt ppoouurr llaa ppaarrttiittiioonn
pprriinncciippaallee
umssetup a ete creee pour determiner au lancement le proprietaire par
defaut de la partition principale. Pour les autres partitions _U_m_s_d_o_s,
il est possible d'utiliser soit les options de mount soit umssetup. La
maniere classique pour regler ce probleme pour les partitions non
principales est de stocker les options de mount dans /etc/fstab. Voici
un exemple. Mettez ceci dans /etc/rc.d/rc.S :
/sbin/umssetup -u jack -g group -m 0755 /
33..33.. SSwwaappppeerr oouu nnee ppaass sswwaappppeerr
L'utilisation d'un fichier de swap se revele souvent plus lente que
celle d'une partition de swap. Cette solution est cependant bien plus
flexible. Vous pouvez configurer un fichier de swap dans une partition
_U_m_s_d_o_s de la meme facon que dans tout autre systeme de fichiers _L_i_n_u_x.
Par exemple, pour configurer un fichier de swap de 8 Mo dans le
repertoire racine :
dd if=/dev/zero bs=1024k count=8 of=/swap
mkswap /swap 8192
sync
swapon /swap
Une fois cela fait, vous pouvez ajouter la ligne suivante dans
/etc/fstab :
/swap swap swap default
Et le fichier de swap sera active a chaque demarrage. (Il y a
generalement la commande "swapon -a" dans /etc/rc.d/rc.S.)
44.. CCoommmmeenntt ddeemmaarrrreerr uunn ssyysstteemmee _U_m_s_d_o_s
44..11.. LLooaaddlliinn
Le paquetage lodlin15.tgz, disponible sur sunsite.unc.edu dans
/pub/Linux/system/Bootutils, est particulierement bien adapte au
demarrage d'un systeme _U_m_s_d_o_s. En general, tout ce que vous avez
besoin de faire est
Boot DOS
C:>loadlinx zimage root=D:
ou zimage est une image normale du noyau (compressee), tout simplement
copiee quelque part sur le lecteur _D_O_S. D: est le lecteur _D_O_S ou vous
avez installe _L_i_n_u_x.
44..22.. AA ppaarrttiirr dd''uunnee ddiissqquueettttee
Demarrer un systeme _U_m_s_d_o_s a partir d'une disquette se fait de la meme
maniere que pour un systeme _E_x_t_2. Vous avez besoin d'une image zImage
de votre noyau proprement initialisee pour localiser votre partition
principale _U_m_s_d_o_s. Pour ce faire, on utilise generalement la commande
rdev. La sequence suivante initialise un fichier zImage et le met sur
une disquette :
rdev zImage /dev/hda1
rdev -R zImage 0
dd if=zImage bs=8192 of=/dev/fd0
Si vous trouvez cela deroutant, formattez une disquette systeme DOS et
copiez les fichiers suivants dessus :
+o loadlin.exe
+o loadlinx.exe
+o zimage
puis configurez le fichier autoexec.bat comme suit :
loadlinx zimage rw root=C:
44..33.. LLIILLOO
LILO, le chargeur (boot-loader) officiel de _L_i_n_u_x peut aussi etre
utilise pour demarrer un systeme _U_m_s_d_o_s. Cependant je n'ai jamais
essaye, mais ca devrait marcher depuis la version 1.1.60. Merci de
m'envoyer un e-mail (NdT : toujours en anglais !) si vous avez fait
l'experience.
44..44.. CCoommmmeenntt ddeeffrraaggmmeenntteerr uunnee ppaarrttiittiioonn _U_m_s_d_o_s
Tout simplement en utilisant n'importe lequel des outils _D_O_S
classiques. Les fichiers produits par _U_m_s_d_o_s n'ont rien de
particulier. Et _U_m_s_d_o_s n'attend rien de particulier (composition ou
sequence des points d'entree des repertoires, etc.) du systeme de
fichier sur lequel il travaille.
Pour ce que j'en sais, il n'existe pas d'outil sous _L_i_n_u_x pour faire
ca.
44..55.. AAssttuucceess aavvaanncceeeess
_U_m_s_d_o_s repose sur --linux-.--- qui repose lui-meme sur le repertoire
_D_O_S. Certains voudront peut-etre faire quelques experiences.
L'utilitaire udosctl (dans le paquetage umsdos_progs, qui contient
umssync et umssetup) permet de faire des operations sur les
repertoires (effacer, voir le contenu), et ceci independamment sur le
repertoire --linux-.--- ou sur le repertoire _D_O_S.
55.. PPrriinncciippee ddee bbaassee
55..11.. IInnttrroodduuccttiioonn
_U_m_s_d_o_s fait directement correspondre aux fichiers _L_i_n_u_x des fichiers
_M_S_-_D_O_S. C'est une transposition un pour un, et le contenu des fichiers
n'est pas altere du tout. _U_m_s_d_o_s travaille seulement sur les noms de
fichiers, et reserve un traitement particulier aux fichiers speciaux
(par exemple les liens ou les fichiers peripheriques).
Pour chaque repertoire, il y a un fichier appele --linux-.---.
55..22.. _U_m_s_d_o_s ppeeuutt rreemmppllaacceerr llee ssyysstteemmee ddee ffiicchhiieerrss _M_S_-_D_O_S
_U_m_s_d_o_s peut etre vu comme un surensemble plus general du systeme de
fichiers _M_S_-_D_O_S de linux. En fait cette capacite/flexibilite est la
source de beaucoup de confusions au sujet de _U_m_s_d_o_s. Je vais vous
expliquer pourquoi. Essayez de monter une disquette _D_O_S qui vient
juste d'etre formattee de la maniere suivante :
mount -t umsdos /dev/fd0 /mnt
Puis faites ceci :
ls / >/mnt/LONGFILENAME
ls -l /mnt
Et vous obtiendrez le resultat suivant :
-rwxr-xr-x 1 root root 302 Apr 14 23:25 longfile
Jusqu'ici, le systeme de fichiers n'a pas l'air de faire grand chose
de plus (en fait meme rien) que le systeme de fichiers _M_S_-_D_O_S normal
de _L_i_n_u_x.
_?_?_?
55..33.. PPrroommoouuvvooiirr uunn rreeppeerrttooiirree
Jusqu'ici ca n'est pas tres impressionant. Mais il y a une astuce. A
moins d'avoir ete promu, un repertoire _D_O_S sera traite par _U_m_s_d_o_s de
la meme facon que par _M_S_-_D_O_S. _U_m_s_d_o_s utilise un fichier special dans
chaque sous-repertoire pour effectuer la transposition entre les
possibilites etendues (noms de fichiers longs, propriete, etc.) de
_U_m_s_d_o_s et les limitations inherentes au systeme de fichiers _D_O_S. Ce
fichier est invisible aux utilisateurs de _U_m_s_d_o_s, mais il devient
visible si vous demarrez sous _D_O_S. Pour eviter de mettre inutilement
le desordre dans la partition _D_O_S avec ces fichiers (--linux-.---),
ils sont maintenant optionnels. S'ils sont absents, _U_m_s_d_o_s se comporte
comme _M_S_-_D_O_S.
Quand un repertoire est promu, toutes les operations effectuees par la
suite tiendront compte de toutes les possibilites normalement
accessibles aux utilisateurs d'_U_n_i_x et de _L_i_n_u_x. Tous les sous-
repertoires crees ensuite seront promus sans autre intervention de
votre part.
Cette caracteristique vous permet d'organiser logiquement votre
partition _D_O_S entre votre hierarchie _D_O_S et votre hierarchie _L_i_n_u_x. Il
est important de comprendre que les fichiers --linux-.--- prennent de
la place (en general 2 Ko par repertoire). Comme _D_O_S utilise de gros
clusters (par exemple de 16 Ko pour une partition de 500 Mo), eviter
de mettre des fichiers --linux-.--- partout peut vous faire gagner pas
mal de place.
55..44.. CCoommmmeenntt pprroommoouuvvooiirr //ssbbiinn//uummssssyynncc
Un repertoire peut etre promu a n'importe quel moment en utilisant
/sbin/umssync. Lorsqu'un repertoire est promu, il se passe les choses
suivantes :
+o Creation d'un fichier --linux-.---.
+o Une relation un pour un est etablie entre le fichier --linux-.---
et le contenu actuel du repertoire.
La commande /sbin/umssync est utilisee pour la maintenance des
fichiers --linux-.--- existants. Elle ne le cree pas a partir de rien
a chaque fois. Elle modifie simplement ce qui a change (par exemple
les fichiers nouvellement crees lors d'une session _D_O_S). Elle retire
aussi de ce fichier les fichiers qui n'existent plus dans le
repertoire _D_O_S. C'est pourquoi umssync porte ce nom, car elle
synchronise les fichiers _-_-_l_i_n_u_x_-_._-_-_- avec le repertoire _D_O_S sous-
jacent.
55..55.. UUttiilliisseerr //ssbbiinn//uummssssyynncc au demarrage
C'est une bonne idee de mettre un appel a /sbin/umssync a la fin du
fichier /etc/rc.d/rc.S (si ce n'est deja fait...). La commande
suivante marche sur la plupart des systemes :
/sbin/umssync -r99 -c -i+ /
L'option -c empeche umssync de promouvoir les repertoires. Cette
commande va donc seulement mettre a jour les fichiers --linux-.---
existants.
Cette commande est utile si vous desirez acceder au repertoire _L_i_n_u_x
pendant une session _D_O_S. _L_i_n_u_x n'a pas de moyen efficace de dire qu'un
repertoire a ete modifie par _D_O_S, donc _U_m_s_d_o_s ne peut pas lancer lui-
meme la commande _u_m_s_s_y_n_c necessaire.
55..66.. CCoommmmeenntt ddee--pprroommoouuvvooiirr
Effacez le fichier --linux-.--- en utilisant _D_O_S.
55..77.. AA pprrooppooss ddeess ffiicchhiieerrss ccrreeeess lloorrss dd''uunnee sseessssiioonn _D_O_S
A moins que vous n'utilisiez umssync sur un repertoire dans lequel des
fichiers ont ete ajoutes ou effaces par _D_O_S, vous allez remarquer
certains des problemes suivants :
+o Le systeme ne va pas planter, et cela ne va pas causer de problemes
majeurs, juste quelques derangements.
+o Fichiers crees par _D_O_S.
+o Ils seront invisibles pour _L_i_n_u_x.
+o Quand vous voudrez creer un fichier avec le meme nom, vous
obtiendrez un message derreur vous disant que ce fichier existe
deja.
+o Plus de confusion que de reels problemes, donc. En tout cas cela ne
cause aucun dommage au systeme de fichiers.
+o Les fichiers effaces par _D_O_S ne causeront aucun probleme. _U_m_s_d_o_s
remarquera leur absence a la premiere tentative d'acces, et vous
delivrera un message (qui sera gene'ralement ecrit dans
/var/adm/syslog).
66.. ((DDeess--))IInnssttaallllaattiioonn eett qquueellqquueess aassttuucceess
L'installation de _U_m_s_d_o_s n'est pas vraiment differente de celle d'un
systeme _L_i_n_u_x ordinaire (_b_a_s_e _s_u_r _E_x_t_2).
Il y a tout de meme deux differences principales.
66..11.. LLaa ppsseeuuddoo--rraacciinnee //mmnntt//lliinnuuxx
Les etapes normales lors de l'installation sont :
1. Creer une partition avec fdisk et la formatter.
2. La monter sur /mnt relativement a notre disque principal
d'installation.
3. Copier tous les paquetages dans /mnt.
Avec _U_m_s_d_o_s l'etape 1 n'est pas necessaire (n'etait-ce pas le but de
_U_m_s_d_o_s de ne pas avoir a reformatter ?).
Il est possible d'installer un systeme _U_m_s_d_o_s juste en copiant tous
les paquetages dans /mnt. Cela marchera certainement. Mais cela va
aussi creer tout un tas de sous-repertoires dans votre repertoire
racine _D_O_S (C:), et vous n'allez pas aimer ca. C'est la raison pour
laquelle toute installation de _U_m_s_d_o_s utilise la pseudo-racine. Et
c'est la difference majeure entre une installation normale (_E_x_t_2) et
celle de _U_m_s_d_o_s : tous les fichiers sont copies dans /mnt/linux.
66..22.. PPrreeppaarreerr llee rreeppeerrttooiirree //mmnntt//lliinnuuxx
/mnt/linux n'est pas un repertoire ordinaire. Il doit etre promu pour
pouvoir manipuler correctement les noms de fichiers longs de _L_i_n_u_x et
les fichiers speciaux (liens, fichiers peripheriques). Les etapes
necessaires pour configurer /mnt/linux sont :
1. mkdir /mnt/linux
2. umssync /mnt/linux
Et c'est tout !
66..33.. VVeerriiffiieerr qquuee //mmnntt//lliinnuuxx est correctement configure
Meme si la configuration de /mnt/linux est plutot simple, il y a un
certain nombre de paquetages qui ne marchent pas. Comment est-ce
possible ?
Le probleme d'installation le plus important vient d'un programme
umssync incompatible. _U_m_s_d_o_s a ete mis a jour dans linux 1.1.88 (je ne
me rappelle plus exactement du numero) et un bug a ete decouvert dans
umssync. Pour eviter toute confusion dans la communaute _L_i_n_u_x, il a
ete decide de monter le niveau de compatibilite necessaire pour tous
les utilitaires _U_m_s_d_o_s. Les anciennes versions de ces utilitaires ont
ete purement et simplement rejetees.
Apparemment beaucoup de distributions n'ont pas mis a jour
l'utilitaire umssync sur leur disque d'installation.
Il existe encore pas mal de distributions de ce style en circulation.
Le resultat est que le repertoire /mnt/linux n'est pas promu du tout
et va tronquer tous les noms de fichiers trop longs, et aussi rejeter
tous les fichiers speciaux.
Il est possible de faire un test tres tot pendant l'installation pour
voir si quelque chose s'est mal passe. Grace au mecanisme de pseudo-
console de _L_i_n_u_x, vous pouvez le faire sans quitter le programme
d'installation. Suivez les instructions suivantes :
1. Appuyez sur Alt-F2 (Appuyez sur la touche Alt et en meme temps sur
la touche F2).
2. Logguez-vous sous root.
3. cd /mnt/linux
Si cela ne marche pas, vous etes en train d'essayer trop tot. Un
bon moment pour faire ce test est d'attendre la fin de la selection
des paquetages.
4. >TOTO
5. ls -l
Un fichier vide du nom de TOTO (en majuscules) doit apparaitre. Si
vous le voyez en minuscules, quelque chose s'est mal passe. Essayez
de recommencer a l'etape du umssync. Vous pouvez utiliser umssync
autant de fois que vous voulez sans problemes.
umssync .
S'il n'y a pas de message d'erreur, refaites le test pour TOTO. Si
TOTO apparait bien, alors tout va pour le mieux. Cette installation
avait quelque chose de bizarre mais vous avez reussi quand meme.
Continuez.
6. Appuyez sur Alt-F1 pour revenir a l'ecran d'installation.
Si le test n'a pas marche, la meilleure solution est de prendre une
disquette d'installation plus recente. Il est generalement possible de
resoudre ce probleme en installant une version plus recente de
umssync. Ce n'est pas difficile mais cela necessite un systeme _L_i_n_u_x
en etat de marche. Vous avez juste a monter le lecteur de disquette et
a remplacer la version caduque de umssync par une nouvelle.
66..44.. OOooppss rreelleeaassiinngg ppsseeuuddoo rroooott ......
La plupart des installations qui ne marchent pas le font en donnant ce
message etrange. Ce n'est pas un bug dans _U_m_s_d_o_s bien que ce message
puisse paraitre vraiment bizarre. Voici les causes connues :
+o La plus commune
L'installation de la _S_l_a_c_k_w_a_r_e essaye de configurer un fichier de
swap tres tot lors de l'installation. Pour ce faire, elle vous
demande de selectionner une partition (lecteur _D_O_S), puis elle la
monte et cree pour finir le fichier de swap.
Lors de l'installation d'un systeme _S_l_a_c_k_w_a_r_e, vous devez
configurer la partition cible avant de commencer a installer autre
chose. Cela monte normalement la partition _D_O_S sur /mnt, cree le
repertoire /mnt/linux et lance umssync dessus.
C'est de la que viennent la plupart des problemes. Un grand nombre
d'utilisateurs sautent l'etape "configuration de la partition
cible" et passent directement au reste de l'installation. Comme
/mnt est deja monte, cette erreur n'est pas remarquee. Cela
signifie que /mnt/linux n'a pas ete correctement cree (non promu).
Donc tous les fichiers dont le nom est trop long, ainsi que tous
les fichiers speciaux (liens, fichiers peripheriques) ne peuvent
pas etre crees correctement.
+o Utilitaire umssync non valide
/mnt/linux a ete mal configure, generalement a cause de
l'utilitaire umssync non valide sur la disquette d'installation.
+o Vieux bug de _U_m_s_d_o_s
Il y avait un bug dans _U_m_s_d_o_s avant _L_i_n_u_x _1_._2_._2. Le mode pseudo-
racine ne s'activait pas correctement si le fichier /etc/init
n'etait pas present. init se trouve maintenant dans /sbin. Vous
pouvez resoudre ce probleme en vous procurant un noyau plus recent.
C'est d'autant plus recommande qu'un nouveau bug a ete detecte et
corrige dans la version 1.2.2.
Si vous n'avez pas de version plus recente, faites ceci :
1. Demarrez a partir de la disquette d'installation.
2. Logguez-vous sous root.
3. mount -t umsdos /dev/hdXX /mnt
ou /dev/hdXX est votre partition _D_O_S.
4. cd /mnt/linux/etc
5. ln -s ../sbin/init init
6. cd /
7. Ctrl-Alt-Del
8. Demarrez normalement sous _U_m_s_d_o_s.
Malheureusement, les deux premiers problemes d'installation donnent
une installation completement inutilisable. Il va falloir desinstaller
puis reinstaller _U_m_s_d_o_s.
66..55.. CCoommmmeenntt ddeessiinnssttaalllleerr uunn ssyysstteemmee _U_m_s_d_o_s
Il y a quelque chose de pratique avec _U_m_s_d_o_s et son mecanisme de
pseudo-racine, c'est que vous pouvez le desinstaller sans douleur. Il
suffit de demarrer sous _D_O_S et d'effacer recursivement tous les
repertoires linux. C'est tout. _U_m_s_d_o_s n'a pas besoin de drivers
particuliers dans le fichier config.sys, et il ne cree rien de special
en dehors du repertoire linux.
66..66.. DDeeppllaacceerr uunn ssyysstteemmee _U_m_s_d_o_s vveerrss uunn aauuttrree lleecctteeuurr _D_O_S
Cela peut etre fait a partir de _L_i_n_u_x ou du _D_O_S. Il suffit juste de
copier recursivement les repertoires linux d'un lecteur vers l'autre.
Ensuite il faudra modifier le mecanisme de demarrage (generalement
avec la commande loadlin) et le fichier /etc/fstab.
_U_m_s_d_o_s peut etre installe sur n'importe quel lecteur _D_O_S. Il n'est pas
obligatoire de l'installer sur le lecteur C:, ni meme sur le premier
disque dur. Cela ne change rien.
En fait, vous pouvez meme decider d'avoir plusieurs installations de
_U_m_s_d_o_s sur differents lecteurs pour faire des tests.
66..77.. IInnssttaalllleerr 5500 ssyysstteemmeess _U_m_s_d_o_s..
Pourquoi ne pas installer tout un tas de systemes _L_i_n_u_x en un rien de
temps ?
_U_m_s_d_o_s repose sur le mode du _D_O_S. Vous pourvez tirer partie de cette
particularite si vous voulez installer _L_i_n_u_x facilement.
Vous pouvez ainsi installer et configurer un systeme _U_m_s_d_o_s sur un
site. Lorsque vous etes satisfait de la configuration obtenue et des
paquetages selectionnes, vous pouvez demarrer sous _D_O_S et copier la
totalite du repertoire linux sur votre serveur de fichiers _D_O_S.
Ensuite il vous suffit d'aller sur une autre station _D_O_S et de copier
les fichiers du lecteur reseau vers le lecteur local. C'est tout. Il
ne vous reste plus qu'a modifier le script de demarrage (_L_o_a_d_l_i_n_x) et
c'est parti.
Avec quelques modifications minimes (nom de l'hote, adresse IP),
n'importe qui pourra installer un systeme _L_i_n_u_x en deux temps trois
mouvements.
Les lecteurs interesses auront pu remarquer qu'il est aussi possible
d'installer n'importe quel systeme _L_i_n_u_x de la meme maniere, y compris
les systemes bases sur _E_x_t_2.
Un des aspects les plus sympathiques de _L_i_n_u_x est qu'il n'y a pas de
fichiers caches qui doivent absolument etre installes par des
programmes "magiques".
77.. CCoonnffiigguurreerr uunnee sseeccttiioonn _L_i_n_u_x ddaannss uunnee ppaarrttiittiioonn _D_O_S..
_U_m_s_d_o_s peut se reveler utile meme aux utilisateurs de _E_x_t_2 (le systeme
de fichiers natif de _L_i_n_u_x). Un scenario classique est le suivant :
+o _L_i_n_u_x etant votre systeme d'exploitation prefere, la partition
_L_i_n_u_x se remplit a n'en plus finir.
+o Votre partition _D_O_S est pleine de poussiere, et a moitie vide.
+o Soudain vous n'avez plus de place sur votre partition _E_x_t_2.
+o Vous n'etes pas encore sur de vouloir vous debarasser de votre
partition _D_O_S.
C'est ici que _U_m_s_d_o_s peut vous aider. Vous pouvez configurer un
repertoire _L_i_n_u_x sur votre partition _D_O_S, et l'utiliser sans
restriction sous _L_i_n_u_x. Par exemple, supposons que vous voulez creer
un nouveau repertoire nomme "extra" sur votre lecteur C:, et que vous
voulez qu'il se comporte comme un repertoire _L_i_n_u_x normal. Faites ceci
: (en supposant que C: est /dev/hda1)
mkdir /c
/sbin/mount -t umsdos /dev/hda1 /c
mkdir /c/extra
umssync /c/extra
Il vous faut etre sous root pour executer ces commandes
En configurant /etc/fstab comme ceci, vous aurez toujours acces au
repertoire /c/extra.
88.. PPoouurrqquuooii _U_m_s_d_o_s ??
Expliquer le fonctionnement et l'installation d'un systeme _U_m_s_d_o_s ne
suffit pas. Ce que la plupart des gens cherche, ce sont des conseils
pour savoir s'ils doivent utiliser _U_m_s_d_o_s ou non.
88..11.. LLee bbuutt ddee _U_m_s_d_o_s
Le but de _U_m_s_d_o_s est de faciliter l'installation de _L_i_n_u_x. Un autre
but est de faciliter sa DES-installation. L'idee ici etait de
favoriser la diffusion de _L_i_n_u_x. Installer un nouveau systeme
d'exploitation est toujours problematique. _O_S_/_2 par exemple va
gentiment polluer la racine de votre lecteur C: avec tout un tas de
nouveaux repertoires. Si vous etes aussi doue que moi, il va meme
effacer vos fichiers config.sys et autoexec.bat :-( (NdT : Tant qu'a
faire !).
L'utilisation de la pseudo-racine permet d'eviter cette invasion non
desiree, et _L_i_n_u_x peut etre desinstalle sans effets de bord.
88..22.. QQuuii eenn aa bbeessooiinn ??
Si vous avez un petit disque dur, _U_m_s_d_o_s va vous permettre de partager
l'espace disque entre le _D_O_S et _L_i_n_u_x. A mon avis, on peut considerer
qu'un disque de moins de 300 Mo est un petit disque. Cette opinion
repose sur la taille des differents paquetages disponibles a l'heure
actuelle. Un traitement de textes populaire veut prendre jusqu'a 70 Mo
si vous choisissez toutes les possibilites.
Si vous avez un disque plus gros, vous pouvez choisir d'avoir une
partition dediee a _L_i_n_u_x utilisant le systeme de fichiers _E_x_t_2. _E_x_t_2
utilise une taille de clusters plus petite que _D_O_S (en fait 1 Ko),
donc installer beaucoup de petits fichiers prendra moins de place que
sur une partition _U_m_s_d_o_s.
88..33.. PPeerrffoorrmmaanncceess
Ceci s'applique a une comparaison entre _U_m_s_d_o_s et _E_x_t_2.
+o La gestion des repertoires est plus rapide sous _E_x_t_2. Cela provient
de la double structure des repertoires sous _U_m_s_d_o_s.
+o L'acces aux fichiers (lecture et ecriture) est probablement plus
rapide sous _U_m_s_d_o_s que sous _E_x_t_2. Cela vient de la simplicite du
systeme de fichiers _F_A_T utilise par _D_O_S.
Cependant cette simplicite a un cout :
+o Un maximum d'environ 65 000 fichiers ou clusters par partition.
Cela signifie aussi qu'une parition de 500 Mo utilisera des
clusters de 16 Ko. En d'autres termes, un fichier d'un octet
utilisera 16 K0 d'espace disque.
+o Tout est controle par la FAT qui se trouve au debut du disque dur.
Le systeme _D_O_S est donc certainement plsu fragile a cause de cela.
+o Aucune prevision pour eviter la fragmentation des fichiers. Un
systeme _U_m_s_d_o_s est generalement utilise en mode mono-utilisateur.
Dans ce cas, cela n'a pas beaucoup d'importance. Mais pour un
systeme multi-utilisateurs, les fichiers seront eparpilles dans
tous les coins du disque, ce qui aura pour effet de reduire les
performances d'acces aux fichiers.
+o Les liens symboliques sont stockes dans des fichiers normaux. Si
vous comptex en avoir beaucoup, vous vous rendrez compte que _U_m_s_d_o_s
utilise beaucoup d'espace disque compare a _E_x_t_2.