Cette section a été écrite par Ron Peters, rpeters@hevanet.com. Elle explique comment installer un serveur NFS en démarrant depuis une disquette. L'objectif initial était de partager par NFS un cédérom d'une autre machine pour installer Linux sur une machine sans lecteur de cédérom.
Ce document a pour but d'aider ceux qui auront le même problème que moi récemment. J'installais un serveur Linux sur une machine sans lecteur de cédérom et sans moyen d'en installer un, à part peut être un SCSI externe. Ce genre de situations sera sans doute de plus en plus rare et ce document perdra donc de son intérêt, mais j'aurais bien aimé l'avoir quand j'essayais d'installer ma machine.
Vu que la machine n'avait pas de lecteur de cédérom, j'ai pensé installer un serveur NFS pour Win95 afin de partager le lecteur de cédérom juste le temps d'installer ma machine et de la mettre sur le réseau. Je n'ai trouvé que deux produits (je ne citerai pas les noms mais l'un est un freeware et l'autre avait une licence limitée à 14 jours), l'un ne marcha pas ``clés en main'' et l'autre n'était pas capable de gérer les conventions de nommage Linux suffisamment bien pour mener à bien l'installation.
J'ai donc décidé d'essayer de redémarrer ma machine Win95 sous Linux avec les disquettes boot/root et d'utiliser une disquette supplémentaire pour installer un serveur NFS.
Cela a été remarquablement simple, la procédure est en fait probablement plus simple que de lire cette introduction. Cependant, je pense qu'il est intéressant de rassembler les information nécessaires dans ce document.
J'ai utilisé les disquettes boot/root fournies dans une des distributions de Slakware (InfoMagic developpers distributions). Le noyau utilisé sur les disquettes était un 2.0.34, et les programmes du serveur NFS venaient d'un serveur pour 2.0.30. J'ai toujours utilisé la méthode d'installation Slakware, non pas qu'elle soit plus facile ou meilleure ou pire, mais simplement qu'elle m'est familière et que je n'ai jamais pris le temps d'apprendre à en utiliser une autre.
Je ne pense pas qu'il puisse y avoir beaucoup de problèmes liés à la version du système. Je recommanderais simplement d'utiliser un système relativement récent, ce qui devrait être le cas si vous utilisez les disquettes boot/root de la distribution à installer.
Démarrez la machine qui sera serveur NFS depuis la disquette de démarrage et assurez-vous que la carte réseau est reconnue, de même que le lecteur de cédérom. Dans la suite je suppose que la carte réseau en question est eth0.
Une fois que le système est démarré, vous n'avez plus besoin des disquette boot/root, le système étant complètement installé en disque mémoire. Remplacez la disquette root par la disquette supplémentaire, et montez la :
mount /dev/fd0 /floppy
Ceci fonctionne pour une disquette avec un système de fichiers
ext2. J'imagine que la disquette pourrait utiliser un système de fichiers
MSDOS mais je n'ai pas essayé. Je suppose que cela serait plus simple que de
faire une image disque. Dans ce cas, il faudrait utiliser mount -t msdos
...etc
.
Montez le cédérom :
mount -t iso9660 /dev/hdc /cdrom
J'ai utilisé les périphériques disquette et cédérom, on peut en utiliser d'autres selon ce que l'on veut faire. Les points de montage /floppy et /cdrom doivent exister sur l'image de la disquette root. Si ce n'est pas le cas, créez-les, ou bien vous pouvez utiliser n'importe quels autres points de montage.
Il faut maintenant configurer le serveur NFS et le réseau. Il n'y a que quelques commandes à lancer, et quelques informations qu'il vous faudra rassembler auparavant (je donne ici des valeurs d'exemple) :
IPADDR:172.16.5.100 #L'adresse du serveur temporaire.
NETMASK:255.255.255.0 #Le masque de réseau (netmask).
BROADCAST:172.16.5.255 #L'adresse de diffusion sur le réseau
ETHNETWORK:172.16.5.0 #L'adresse réseau
GATEWAY:172.16.5.251 #Nécessaire seulement si vous avez une passerelle. Si c'est le cas, vous le savez. La plupart des réseau ``à la maison'' n'en ont pas.
Les commandes pour se connecter au réseau (utiliser les valeurs données ci-dessus) :
ifconfig eth0 inet IPADDR arp netmask NETMASK broadcast BROADCAST
route add -net ETHNETWORK netmask NETMASK eth0
Celle-ci uniquement si vous avez une passerelle et que vous devrez la traverser :
route add default gw GATEWAY netmask 0.0.0.0 eth0
Si tout va bien, vous êtes maintenant sur le réseau et devriez pouvoir faire
des ping
sur les autres machines.
Choisissez le répertoire à partager. Dans mon exemple, c'était
/cdrom/slakware
. Placez-le dans le fichier /etc/exports
:
echo "/cdrom/slakware" > /etc/exports
Allez dans /floppy/usr/bin
et lancez :
./rpc.portmap
./rpc.mountd
./rpc.nfsd
Normalement, le répertoire /cdrom/slakware
est maintenant
partageable. Démarrez votre machine (celle à installer) depuis les
disquettes boot/root (j'ai utilisé les mêmes qui ont servi à démarrer le
serveur) et commencez l'installation.
Quand il faut choisir le média source à utiliser, choisissez ``serveur
NFS''. Il vous demandera l'adresse IP du serveur, qui est celle que vous
avez appelé IPADDR pour le serveur. Il vous faut aussi donner le répertoire
à monter, qui est celui que vous avez indiqué dans le fichier
/etc/exports
du serveur.
Le volume NFS devrait maintenant être monté, surveillez l'apparition de messages d'erreur. Si tout va bien, continuez l'installation.
Je n'ai rien à dire à ce sujet pour le moment. Peut être si des gens utilisent cette procédure, on aura des choses à ajouter.
Voir si la disquette supplémentaire peut être au format DOS.
Vérifiez l'ordre dans lequel lancer les commandes rpc.* et si toutes sont nécessaires.