jwiggins@comp.uark.edu
pingouin@crystal.u-strasbg.fr
NOTE : Je n'ai aucune id�e si le lecteur IDE fonctionne de la m�me mani�re que la version sur port parall�le, puisque je n'en ai pas, donc merci de ne pas me le demander.
La partie consacr�e � la Debian a juste �t� recopi�e avec pas ou peu de modification par l'auteur. En cons�quence, il peut y avoir des redondaces dans les instructions.
Pré-requis :
Ce document est découpé en quatres parties qui décrivent chacune l'installation d'un système Linux minimal sur un disque ZIP de 100Mo utilisant le lecteur ZIP sur port parallèle. La première partie d�crit comment pr�parer le disque ZIP, elle est commune aux distributions Slackware et Red Hat. Les deuxième, troisième et quatri�mes parties décrivent respectivement l'installation des distributions RedHat 4.2, Slackware 2.2 et Debian 1.2 sur le disque ZIP.
NOTE : J'ai bien vu que la Red Hat 5.0 �tait enfin sortie, mais entre les cours et le travail, bref, disons que je ne pourrai pas travailler dessus avant la fin mai. J'esp�re pouvoir aussi tester les autres distributions.
J'ai finalement trouv� assez de temps (il faut dire que je pr�parais un concours
de sociologie...) pour mettre � jour ce document. Merci � tous ceux qui m'ont
envoy� des commentaires.
Nouveaut�s pour ce document
Le sigle ==> indique que le texte qui suit est une commande.
Ceci indique une remarque importante :
NOTE:
Ceci indique une "capture d'�cran"
Texte visible � l'�cran
Pour les mises à jour, aussi rares qu'elles puissent �tre, consulter l'URL
http://comp.uark.edu/~jwiggins/linuxZIP/
http://www.cyberelk.demon.co.uk/parport/
La section Slackware 2.2 m'a �t� confi�e par Michael Littlejohn
mike@mesa7.mesa.colorado.edu
La section Debian 1.2 m'a �t� confi�e par John D. Blair
jdblair@uad.edu
Les informations concernant LILO et beaucoup d'autres informations pr�cises
m'ont �t� confi�es par Barcy Boese
possum@niagara.com
et Javier Rodriguez
jrodriguez@nextgeninter.net.mx
Avant de d�marrer, assurez-vous d'avoir acc�s au lecteur ZIP; soit en ayant le pilote ppa du port parall�le dans le noyau ou en faisant charger le module correspondant. Un moyen facile de le v�rifier est d'interroger dmesg :
==> dmesg
On peut rediriger la sortie vers less vu que dmesg a tendance � �tre un peu long. Voici un extrait du mien :
scsi0 : PPA driver version 0.26 using 4-bit mode on port 0x3bc.
scsi : 1 host.
Vendor: IOMEGA Model: ZIP 100 Rev: D.08
Type: Direct-Access ANSI SCSI revision: 02
Detected scsi removable disk sda at scsi0, channel 0, id 6, lun 0
SCSI device sda: hdwr sector= 512 bytes. Sectors= 196608 [96 MB] [0.1 GB]
sda: Write Protect is off
sda: sda1 sda2
Si vous voyez seulement quelque-chose du genre :
scsi : 0 hosts.
scsi : detected total.
Alors vous avez le support SCSI mais le lecteur ZIP n'a pas �t� d�tect�.
Pour partitionner le disque ZIP, lancer fdisk
==> fdisk /dev/sda
Voici un aper�u de la table de partition que j'ai faite :
Disk /dev/sda: 64 heads, 32 sectors, 96 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Begin Start End Blocks Id System
/dev/sda1 1 1 81 82928 83 Linux native
/dev/sda2 82 82 96 15360 82 Linux swap
J'ai décidé d'utiliser une partition de swap afin de
pouvoir l'utiliser sur n'importe quelle machine (système portable).
Aprés avoir utilisé fdisk, formater la nouvelle partition :
==> mke2fs -c /dev/sda1
Ensuite, créer la partition de swap (15360 blocs comme le montre fdisk)
==> mkswap -c 15360 /dev/sda2
Finalement, monter le disque ZIP
==> mount /dev/sda1 /iomega -t ext2
Étant donné que le lecteur ZIP sur port parallèle n'est pas un vrai périphérique SCSI, ce n'est pas un périphérique bootable, et donc, il nécessite une disquette de démarrage qui poss�de le pilote ppa dans le noyau et non sous forme de module.
D'abord, il faut configurer et compiler un noyau qui a le pilote ppa du port parallèle actif et pas comme un module chargeable. Afin d'obtenir l'option port parallèle, sélectionner le support des p�riph�riques SCSI :
SCSI support (CONFIG_SCSI) [Y/m/n/?]
Puis, le support des disques SCSI:
SCSI disk support (CONFIG_BLK_DEV_SD) [Y/m/n/?]
Et finalement, sous la rubrique des pilotes SCSI de bas niveau (SCSI low-level drivers), on trouve le pilote ppa pour port parallèle.
IOMEGA Parallel Port ZIP drive SCSI support (CONFIG_SCSI_PPA) [Y/m/n/?]
Encore une fois, il ne faut pas utiliser le pilote pour port parallèle en module, mais bien inclus dans le noyau. Jusqu'ici, sans le patch noyau PortPar (voir 1.4), le pilote du port parall�le ne permettra pas d'utiliser le port passif du lecteur ZIP pour une imprimante, donc il est alors pr�f�rable de désactiver le support pour imprimante sur port parallèle :
Parallel printer support (CONFIG_PRINTER) [N/y/m/?]
NOTE/ : Pour plus d'informations sur le pilote du port parallèle,
prière de se reporter au ZIP-Drive mini-HOWTO.<newline>
Une fois le noyau configuré, le compiler ainsi :
==> make dep; make clean; make zImage
Le nouveau noyau devrait se trouver dans arch/i386/boot/zImage.
Apr�s avoir du me coltiner 4 disquetes diff�rentes, en raison de diff�rents noyaux n�cessitant diff�rents param�tres, (ainsi qu'apr�s avoir lu le magnifique e-mail m'expliquant comment le faire), j'ai inclus une section sur LILO comme �tant un des moyens de cr�er un disque de d�marrage.
Pour ceux qui ont besoin, ou pour ceux que �a int�resserait, d'avoir plusieurs noyaux sur une disquette (ces derniers temps, les miens sont trop gros) ou qui veulent juste pouvoir passer des arguments (comme le mode utilisateur unique (single)), j'ai re�u un email d�taillant comment installer LILO sur une disquette.
Pour cr�er un syst�me de fichier ext2 sur une disquette, utiliser juste la m�me commande que pour e disque ZIP
==> mke2fs -t /dev/fd0
D'abord, s'assurer qu'il y ait un dossier cible pour le montage, et monter la disquette (j'utilise /dev/floppy) :
==> mount /dev/fd0 /mnt/floppy -t ext2
Pour d�marrer correctement, vous avez besoin des m�mes fichiers que ceux que LILO utilise sur votre installation de Linux actuelle.
NOTE : Les chemins de fichiers donn�s ici sont ceux
de ma machine et peuvent ne pas �tre les m�mes pour tout
le monde
==> cp /boot/boot.b /mnt/floppy
==> cp /boot/map /mnt/floppy
==> cp /usr/src/linux/arch/i386/boot/zImage /dev/fd0 /mnt/floppy/vmlinuzDESK
Maintenant, pour cr�er le fichier de configuration pour LILO, � ce point, j'ignore le programme liloconfig... (merci � Javier Rodriguez pour cette information). Premi�rement, cr�er le fichier de configuration de LILO, /mnt/floppy/lilo.conf, pour le(s) noyau(x) pour le lecteur ZIP. Voici ce que j'ai utilis� et qui m'a permis d'avoir plusieurs noyaux � tester :
boot=/dev/fd0
map=/mnt/floppy/map
install=/mnt/floppy/boot.b
prompt
compact
timeout=50
image=/mnt/floppy/vmlinuzLAP
label=Laptop
root=/dev/sda1
read-only
image=/mnt/floppy/vmlinuzDESK
label=Desktop
root=/dev/sda1
read-only
image=/mnt/floppy/vmlinuzDESK
label=rescue
root=/dev/hdc1
read-only
J'ai ainsi deux noyaux. Un pour mon portable 486 qui a besoin de l'�mulation
du co-processeur math�matique dans le noyau, et l'autre pour mon ordinateur de bureau. Le "rescue"
me permet de faire un d�marrage dde secours sur le disque dur.
Enfin et surtout, lancer LILO pour l'installer sur la disquette grace � la commande :
==> lilo -C /mnt/floppy/lilo.conf
Une fois LILO install� sur la disquette, sauter les deux �tapes suivantes, sauf si vous avez envie de tout recommencer :).
NOTE : Ceci n'a rien � voir avec l'installation
via LILO.
Copier le nouveau noyau sur une disquette :
==> cp arch/i386/boot/zImage /dev/fd0
ou
==> cat arch/i386/boot/zImage > /dev/fd0
Bien sur, il existe pléthore de manières de copier un noyau sur une disquette, mais la dernière, ma favorite, est un peu plus cryptique. Essayez de ne pas oublier le > sauf si vous adorez voir des fichiers binaires.
NOTE : Ceci n'a rien � voir avec l'installation
via LILO.
Une fois que le noyau est sur la disquette, il faut définir le r�pertoire racine comme étant sur le disque ZIP :
==> rdev /dev/fd0 /dev/sda1
Je ne suis pas sur que l'option suivante soit nécessaire, quoiqu'il en soit, je le fais. Pour définir le swap :
==> rdev -s /dev/fd0 /dev/sda2
Pour mon installation, j'ai utilisé :
La premi�re fois que j'ai tent� d'installer la Red Hat sur un disque ZIP, j'ai pens� qu'il aurait �t� plus simple de juste utiliser un disque de d�marrage (boot disk) de la Red Hat. Je me suis alors r�veill�. Je suis presque arriv� � cr�er un disque de d�marrage, mais m�me avec l'aide par e-mail de plusieurs personnes de chez Red Hat, j'ai commenc� � renoncer � tout ce projet lorsque j'ai d�couvert l'option --root du rpm.
J'ai trouvé quels étaient les paquetages nécessaires en compulsant un fichier que j'ai trouvé sur un miroir RedHat. Ce fichier peut être trouvé sur n'importe quel miroir RedHat dans :
redhat/redhat4.2/i386/RedHat/base/comps
Pour cette installation, j'ai voulut inclure le support du r�seau, mais, � cause de la La configuration du r�seau sous X de la RedHat, j'ai du configurer � la main, ou plutot, tenter de configurer, les scripts qui se trouvent dans le /etc/sysconfig (cf section 4.3.3.). J'ai d�cid� de ne pas installer de paquetage de d�veloppement, car le lecteur ZIP, en tout cas avec un noyau non patch�, est plutot lent pour compiler quoi que ce soit. J'ai aussi choisit de ne pas installer X, surtout pour des raisons d'espace disque disponible. Plus tard, j'essaierai de monter mon disque dur et de cr�er un lien symbolique avec /usr pour voir si j'arrive � faire fonctionner X.
Voici une liste des paquetages que j'ai install�s, dans l'ordre de leur installation. Ceux marqu�s d'une * ont �t� mis � jour suit � des errata de RedHat. Entre parenth�se, j'ai indiqu� le num�ro du paquet de mise � jour.
Par exemple NetKit-B-0.09-6 a �t� mis � jour par NetKit-B-0.99-8, et
apparait donc comme: *91) NetKit-B-0.99-6 (-8)
(Liste cr��e par la commande rpm --root /iomega -qa)
1) setup-1.7-2 2) pamconfig-0.51-2
3) filesystem-1.3-1 4) MAKEDEV-2.2-9
5) adduser-1.7-1 6) libc-5.3.12-18
7) SysVinit-2.64-8 8) ash-0.2-8
9) at-2.9b-2 10) libtermcap-2.0.8-4
11) bash-1.14.7-1 12) bc-1.03-6
13) bdflush-1.5-5 14) cpio-2.4.2-4
15) cracklib-dicts-2.5-1 16) tmpwatch-1.2-1
17) crontabs-1.5-1 *18) db-1.85-10 (-11)
19) dev-2.5.1-1 20) diffutils-2.7-5
21) etcskel-1.3-1 22) file-3.22-5
23) fileutils-3.16-1 24) findutils-4.1-11
25) grep-2.0-5 26) groff-1.10-8
*27) ld.so-1.7.14-4 (-5) 28) getty_ps-2.0.7h-4
29) gzip-1.2.4-7 30) mingetty-0.9.4-3
*31) initscripts-2.92-1 (93-1) 32) ed-0.2-5
33) info-3.9-1 34) ncurses-1.9.9e-4
35) libg++-2.7.1.4-5 *36) pwdb-0.54-3 (-4)
37) rootfiles-1.5-1 *38) pam-0.57-2 (-4)
39) redhat-release-4.2-1 40) less-321-3
41) mount-2.5l-2 42) zlib-1.0.4-1
43) rpm-2.3.11-1 44) e2fsprogs-1.10-0
45) sysklogd-1.3-15 46) tar-1.11.8-11
47) passwd-0.50-7 48) gawk-3.0.2-1
49) gdbm-1.7.3-8 50) gpm-1.10-8
51) hdparm-3.1-2 52) kbd-0.91-9
53) slang-0.99.37-2 54) newt-0.8-1
55) kbdconfig-1.4-1 56) ncompress-4.2.4-7
*57) sh-utils-1.16-4 (-5) 58) procinfo-0.9-1
*59) logrotate-2.3-3 (4-1) 60) lilo-0.19-1
61) losetup-2.5l-2 62) linuxthreads-0.5-1
*63) mkinitrd-1.6-1 (7-1) 64) mailcap-1.0-3
*65) man-1.4h-5 (j-1) 66) mt-st-0.4-2
67) modules-2.0.0-5 68) mailx-5.5.kw-6
69) net-tools-1.32.alpha-2 70) procmail-3.10-10
71) procps-1.01-11 72) psmisc-11-4
73) quota-1.55-4 74) readline-2.0-10
75) sed-2.05-6 76) setconsole-1.0-1
77) sendmail-8.8.5-4 78) shadow-utils-960530-6
79) stat-1.5-5 80) tcsh-6.06-10
81) termcap-9.12.6-5 82) textutils-1.22-1
83) time-1.7-1 84) timeconfig-1.8-1
85) util-linux-2.5-38 86) vim-4.5-2
87) vixie-cron-3.0.1-14 88) which-1.0-5
89) zoneinfo-96i-4 90) tcp_wrappers-7.5-1
*91) NetKit-B-0.09-6 (-8) *92) lpr-0.18-1 (19-1)
*93) bind-4.9.5p1-2 (9.6-1) *94) bind-utils-4.9.5p1-2 (9.6-1)
*95) wu-ftpd-2.4.2b12-6 (b15-1) 96) anonftp-2.3-3
97) zip-2.1-1 98) unzip-5.12-5
99) statserial-1.1-7 100) minicom-1.75-2
101) lrzsz-0.12.14-1 102) dip-3.3.7o-9
103) ppp-2.2.0f-3 104) portmap-4.0-3
105) perl-5.003-8 *106) traceroute-1.0.4.4bsd-2 (1.4a5-1)
*107) elm-2.4.25-7 (-8) 108) lynx-2.6-2
109) ncftp-2.3.0-5 110) pine-3.95-2
111) rdate-0.960923-1 112) apache-1.1.3-3
*113) nfs-server-2.2beta16-7 *114) nfs-server-clients-2.2beta16-7
(2.2beta16-8) (2.2beta16-8)
Et avec tout �a, j'ai encore 32Mo de libre!
Comme beaucoup d'utilisateurs de la RedHat (j'esp�re) le savent, certains paquetages peuvent pr�senter des trous de s�curit� ou quelque chose d'autre qui pose probl�me. Pour cette raison, RedHat diffuse des mises � jour pour certains paquetages. J'ai install� ceux que j'ai signal� comme mis � jour ci-dessus. Veuillez vous r�f�rer � la page web RedHat qui concerne les mises � jour sur: http://www.redhat.com/support/docs/rhl/rh42-errata-general.html
NOTE: avant les mises � jour de paquetages, il faut
lancer ldconfig comme d�crit � la section 3.3.1.1.
Avec rpm, utiliser l'option --root pour sp�cifier le dossier mont� comme la racine pour l'installation. J'ai découvert que plusieurs paquetages ne pouvaient pas être installés, en raison de scripts de préinstallation et/ou postinstallation qui ne s'exécutaient pas correctement à cause du répertoire racine différent. En conséquence, utiliser l'option --noscript :
==> rpm --root /iomega -i --noscripts PAQUETAGE.i386.rpm
Comme, j'en suis sur, beaucoup vont le voir, vous devriez avoir une erreur du style :
failed to open /iomega/var/lib/rpm/packages.rpm
error: cannot open /iomega/var/lib/rpm/packages.rpm
Bon, ben, il suffit de cr�er le r�pertoire /var/lib/rpm
==> mkdir /iomega/var; mkdir /iomega/var/lib; mkdir /iomega/var/lib/rpm
Si quelqu'un a d�j� essay� d'installer pamconfig, celui-ci se plaint de d�pendre de pam; alors, si l'on essaie d'installer pam, celui-ci se plaint d'avoir besoin de pamconfig! Ceci �tant une nouvelle version de l'histoire de la poule et de l'oeuf, m'a laiss� perplexe quelques temps, mais gr�ce � l'option --nodeps, on peut forcer l'installation de pamconfig; en outre, pam a plus de d�pendances en �chec que pamconfig.
==> rpm --root /iomega -i --nodeps --noscripts pamconfig-0.51-2
Une fois que le dernier paquetage a �t� parfaitement install�, malheureusement, le disque n'est pas enti�rement fonctionnel, pour ainsi dire. Ce que je veux dire, c'est que, si vous essayez de d�marrer maintenant avec la disquette, vous n'irez pas tr�s loin. D�s qu'init essaie de d�marrer, vous aurez deux adorables petites erreurs; chacune se plaignant de quelques fichiers qui auraient �t� l� si les scripts avaient �t� lanc�s.
Si vous essayez de d�marrer, vous avez donc deux messages d'erreurs. Le premier concerne l'absence du fichier /etc/ld/so.cache. Le second r�le � propos de libc.so.5.
Comme me l'ont signal� pas mal de lecteurs, mes pr�c�dentes instructions ne fonctionnaient pas comme pr�vu. Pour cr�er ce fichier, il faut lancer ldconfig lorsque le ZIP est encore mont�.
==> chroot /iomega /sbin/ldconfig
Merci � Javier Rodriguez pour cette solution.
Pour r�soudre le cas de l'absence de cette librairie, il faut cr�er un lien symbolique qui aurait du �tre cr�� par les scripts d'installation.
==> cd /iomega/lib; ln -s libc.so.5.3.12 libc.so.5
Merci � Darcy Boese pour cette solution.
De m�me qu'il a fallut lancer ldconfig en 4.3.1.1, il faudrait changer, cr�er le mot de passe de root pour ce nouveau syst�me :
==> chroot /iomega passwd root
NOTE: Ceci est just une configuration rapide, que je n'ai pas
�t� capable de tester pour voir si elle marche. En th�orie, elle
devrait, mais ne venez pas pleurer si
elle ne fonctionne pas.
En parcourant mon CD Red Hat 4.2, je suis tomb� sur quelque-chose de plut�t int�ressant; le code source du programme d'installation. Je l'ai trouv� dans /misc/src/install et une chose que j'ai trouv� utile a �t� le fichier net.c. L�-dedans, j'ai trouv� quels autres fichiers devaient �tre cr��s au lancement du programme d'installation. La plupart participent au support du r�seau (d'o� le nom net.c) mais, m�me si vous n'avez pas de carte r�seau, vous pouvez avoir � utiliser le localhost en r�seau (en plus, apache va r�ler s'il ne peut pas d�terminer de hostname). Ces fichiers comprennent :
/etc/hosts
/etc/HOSTNAME
/etc/resolv.conf
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
(ou tout autre p�riph�rique r�seau que vous auriez.)
Pour r�diger ce document, il m'a fallut le support r�seau pour ma carte fast-ethernet 3Com 3c595 (qui avait �t� utilis�e ces derniers mois sur une autre machine).
D'abord, il me fallait un nom, et comme j'entretiens mon propre serveur de noms (ce qui est une autre et longue histoire), j'ai moi-m�me donn� le nom : dash-dot.wig.org (J'aime bien comme �a sonne). Avoir un nom sans adresse IP est un peu vain, donc j'ai utilis� un num�ro r�seau r�serv� hors internet 192.168.10.0, que mon serveur de nom utilise aussi. M�me si le nom de machine est logiquement indiqu� dans /etc/HOSTNAME, Red Hat cherche ce nom dans /etc/sysconfig/network; alors allons-y : Extrait de mon /etc/sysconfig/network :
NETWORKING=yes
HOSTNAME=dash-dot
DOMAINNAME=wig.org
GATEWAY=
GATEWAYDEV=eth0
NS1=192.168.10.7
Ensuite, simplement, il faut recopier la m�me information, ici dans /etc/HOSTNAME,
/etc/resolv.conf, et /etc/hosts:
/etc/HOSTNAME:
dash-dot.wig.org
/etc/resolv.conf:
search wig.org
nameserver ns.wig.org
/etc/hosts:
127.0.0.1 localhost
192.168.10.99 dash-dot.wig.org dash-dot
192.168.10.7 ns.wig.org ns
Red Hat configure tous les periph�riques r�seau � partir des scripts trouv�s dans
/etc/sysconfig/network-scripts. La configuration de chaque p�riph�rique est habituellement
cr��e une premi�re fois par le programme d'installation, j'ai donc du cr�er ces fichiers
de config � la main. Ils commencent tous par ifcfg-XXX o� XXX est l'interface r�seau
qu'ifconfig va activer; par exemple ppp0, eth0, etc. Dans cet exemple, j'ai du
cr�er un fichier ifcfg-eth0 qui contient ceci :;
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
BROADCAST=192.168.10.255
NETWORK=192.168.10.0
NETMASK=255.255.255.0
IPADDR=192.168.10.99
Et pour finir, afin que tout aille bien apr�s �a, tant que l'on est dans
/etc/sysconfig/network-scripts, lancer juste :
==> ./ifup ifcfg-eth0 boot
Ceci va lancer le script qui configure l'interface r�seau, si cette interface est configur�e pour �tre lanc�e au d�marrage.
Pour plus d'informations, pri�re de se reporter au NET-3-HOWTO.
NOTE : Cette partie n'a pas �t� mise � jour.
Bon, d'abord, le plus jouissif : déterminer quels sont les fichiers qui sont nécessaires pour le disque système, et quels sont les paquetages que l'on veut (et que l'on peut) faire rentrer sur le disque ZIP.
J'ai pensé que le moyen le plus facile pour démarrer était d'installer directement la Slackware sur le lecteur ZIP. J'ai pensé à cette approche surtout parce que la Slackware est une distribution plus petite que la RedHat, et qu'il serait plus facile de supprimer ce que je ne voulais pas. Cela, et le fait que j'utilise de toute façon la distribution Slackware ont rendu ce choix logique.
Installer la Slackware sur un disque ZIP est facile, en tant que root, lancer le programme setup, et choisir /iomega comme partition d'installation. Configurer l'installation depuis la partition où se trouvent les sources de la Slackware (cdrom, disque dur, etc), sélectionner 'install' et suivre les instructions.
La plus grosse difficulté est de décider ce que l'on doit ajouter et ce dont on peut se passer. Bien évidemment, on a besoin de la série 'A' (qui fait a peu prés 8 Mo), le reste dépend de chacun.
J'ai essayé de ramener la Slackware à une taille raisonnable de 70 Mo, et cela inclut gcc/g++, perl, X11R6 (MAIS PAS TOUT!), sendmail, de la doc (moins les pages de man des outils de développement, mais avec tous les howto), et un assortiment d'autres bonnes choses, ce qui laisse environ 10 Mo de libre pour les fichiers utilisateurs. YMMV (note du traducteur : hein???). C'est selon votre choix.
La dernière chose que l'on doit faire avant de redémarrer est de cr�er le fichier fstab sur la partition qui va bient�t devenir root. Éditer le fichier /iomega/etc/fstab qui devra au minimum ressembler à ça:
/dev/sda1 / ext2 defaults 1 1
/dev/sda2 none swap sw
none /proc proc defaults 1 1
Sauver le fichier, et redémarrer à partir de
la disquette fraîchement préparée, et amusez-vous bien!
(Un grand merci à Mike pour m'avoir rappelé ce point très important et même crucial. - John)
NOTE : l'auteur de cette section me l'a envoy�e le 11 juin 1997
Apr�s avoir pass� quelques heures � me d�battre avec dpkg
, j'ai d�cid�
qu'il serait plus simple de modifier le disque de secours (rescue disk)
Debian pour qu'il reconnaisse le lecteur ZIP ppa. Cela s'est av�r� �tre tr�s
facile. Vous pouvez utiliser ce disque modifi� pour effectuer l'installation
de base normale du syst�me Debian. Une fois que vous avez install� le
syst�me de base vous pouvez utiliser une disquette de d�marrage pour
d�marrer le nouveau syst�me de base et compl�ter l'installation avec
dselect
. Pour utiliser cette technique, il faut construire deux noyaux
- un avec le support ppa et disque m�moire initial, et un autre sans le
support du disque m�moire.
Si vous voulez, vous pouvez sauter toutes les �tapes de la section 2 et laisser la proc�dure d'installation de Debian formatter le disque ZIP pour vous.
Le disque de secours Debian est un disque de d�marrage de type SYSLINUX, qui
utilise un formattage DOS et un lanceur (boot loader) sp�cial pour
emp�cher le chargement de MS-DOS. Ce type de disque est tr�s facile �
modifier pour fabriquer vos propres disques de d�marrage personnalis�s. Le
paquetage Debian ``boot-floppies'' contient un ensemble de scripts pour
automatiser la cr�ation de disques de d�marrage. Mais c'est tellement simple
que j'ai pr�f�r� le faire � la main. C'est s'�carter un peu de la
philosophie Debian, mais je suis au dessus de �a :). De br�ves instructions
se trouvent dans le fichier 'readme.txt
' de la disquette de
secours.
dd
(ou RAWRITE
sous DOS) pour cr�er la nouvelledisquette de secoursConsultez les docs d'installation de Debian si vous ne vous rappelez pas comment faire.
Construisez un nouveau noyau avec le support ZIP ppa (comme � l'�tape 3.3.1), mais s�lectionnez �galement les supports ``RAM disk'' et ``initial RAM disk''. Vous devez aussi s�lectionner le support pour les syst�mes de fichiers msdos, fat, minix, ext2fs et procfs.
Configurez �galement les modules que vous voulez avoir dans votre installation finale sur le disque ZIP.
Une fois la configuration du noyau effectu�e, compilez le avec :
==> make dep; make clean
==> make bzImage
Compilez les modules avec :
==> make modules
Vous les installerez plus tard.
NOTE : soyez bien sur d'utiliser 'make bzImage' et pas 'make zImage'.
==> fdmount fd0
ou
==> mount /dev/fd0 /mnt
ou
==> que sais-je :)
Copiez l'image du noyau (sur les plateformes i386 c'est le fichier
arch/i386/boot/bzImage
) dans le fichier 'linux
' de la
disquette.
`rdev.sh'
Ouvrez le script `rdev.sh'
du disque de secours avec votre �diteur
favori. Remplacez la derni�re ligne :
rdev /mnt/linux /dev/ram0
par
rdev /mnt/linux /dev/sda1
Il faudra aussi remplacer toutes les occurrences de /mnt/linux
par
le chemin appropri�. Comme je monte mes disquettes sous /fd0
, j'ai
d� changer /mnt/linux
en /fd0/linux
.
`rdev.sh'
modifi�==> ./rdev.sh
D�marrez � partir du disque de secours. Si tout se passe bien vous retrouverez
le processus d'installation � base de menu de la Debian, sauf qu'il sait
maintenant que votre disque ZIP ppa existe. Effectuez l'installation
normalement, comme s'il s'agissait d'un disque dur, mais montez
/dev/sda1
comme racine et choisissez /dev/sda2
comme swap.
Il y a une diff�rence par rapport au processus d'installation standard -- n'installez pas et ne configurez pas de modules chargeables. Vous installerez les modules que vous avez compil�s � l'�tape 7.3.2 plus tard.
Vous pouvez cr�er la disquette de d�marrage comme d�crit aux �tapes 3.3.1 � 3.3.2, ou, si vous pr�f�rez, utiliser simplement l'option ``Create Boot Disk'' pendant l'installation Debian. J'aime bien la seconde possibilit� car elle me permet d'avoir une autre disquette de d�marrage SYSLINUX dans laquelle je peux modifier le message de bienvenue pour d�crire la nature de ce disque de d�marrage personnalis� et ajouter des param�tres noyau. Vous pouvez m�me inclure des fichiers d'aide accessibles depuis les touches de fonctions. Vous pouvez �galement recompiler le noyau et modifier � la main la disquette pour enlever le support RAM disk. � vous de voir.
Ins�rez votre disquette de d�marrage et choisissez l'option ``Reboot'' du menu d'installation.
Quand le syst�me red�marre vous avez une installation de base Debian tout � fait utilisable (mais lente) depuis votre disque ZIP ppa. Continuez l'installation normalement. j'ai install� tous les utilitaires UNIX classiques, avec les documentations, make, gcc, les biblioth�ques (libraries), et divers utilitaires de manipulation de fichiers. Le r�sultat est un syst�me de d�marrage de secours tr�s puissant que je peux utiliser pour ``secourir'' :-) n'importe lequel des syst�mes de mon d�partement qui aurait un gros probl�me.
NOTE : vous devrez au moins installer ``make'' pour r�aliser l'�tape suivante.
Si vous avez install� make
� l'�tape pr�c�dente, vous devriez pouvoir
monter la partition du disque dur qui contient votre noyau, aller dans le
r�pertoire appropri� et lancer make modules_install
. Par exemple :
==> mount /dev/hda2 /mnt
==> cd /mnt/usr/src/linux
==> make modules_install
NOTE : vous n'aurez pas � modifier le fichier /etc/fstab, comme expliqu� �
l'�tape 5. Le processus d'installation Debian s'en est d�j� occup�.
Yahou, et snif. Apr�s avoir entass� 31 disques ZIP et un pack de batteries pour ZIP autonome, mon aventure suivante est de faire fonctionner le pcmcia sur mon transportable (NdT : Il faut bien que je m'amuse aussi).