このページは大阪弁化フィルタによって翻訳生成されたんですわ。

翻訳前ページへ


1.1 Copyright

Ce HOWTO est © Hans de Goede, 1999.

Sauf indication contraire, les droits d'auteur des HOWTO Linux sont d騁enus par leurs auteurs respectifs. Les HOWTO Linux peuvent 黎re les clients utilisent le syst鑪e de fichiers racine du serveur. Ils y acc鐡ent bien s? en lecture seule.

2.1 Les choses ne peuvent pas 黎re aussi simples...

Quelques probl鑪es apparaissent rapidement.

Chaque station a besoin de sa propre copie d'un certain nombre de r駱ertoires

Une configuration linux doit avoir les acc鑚 en 馗riture sur les r駱ertoires suivants :

  1. /dev
  2. /var
  3. /tmp

pour 馗onomiser un peu de place : 1,5 Mo, 軋 fait beaucoup pour un ramdisk et 軋 ne fait pas tr鑚 propre sur un serveur.
  • devfs cr馥 automatiquement des entr馥s pour les devices d騁ect駸 et ajout駸, donc pas besoin de maintenance.
  • inconv駭ients :
      va alors automatiquement restaurer les liens symboliques nouvellement positionn駸 en appelant rc.devfs. Si on fait des changements sur /dev, il faut donc appeler rc.devfs soi-m麥e de cette fa輟n :
    /etc/rc.d/rc.devfs save /etc/sysconfig
  • Comme on peut le voir, il y a plusieurs moyens de r駸oudre ce probl鑪e d'acc鑚 en lecture-馗riture. Voici les options choisies pour le reste de ce Howto :

    Un acc鑚 en 馗riture sur /home semble n馗essaire...

    Mais ce n'est pas vraiment un probl鑪e puisque dans Avec une autre distribution, il suffira de cr馥r un r駱ertoire sysconfig, d駱lacer tous les fichiers de configuration qui ne peuvent 黎re partag駸, et ajouter les liens n馗essaires. De m麥e, /etc/rc.d/rc3.d (ou l'駲uivalent dans les autres distribs) peut pr駸enter des diff駻ences entre le serveur et les stations. Si on consid鑽e que toutes les stations lancent les m麥es services, on cr馥ra simplement un rc3.d pour les stations et un pour le serveur :

    1. cr馥r un /etc/rc.d/rc3.ws et un /etc/rc.d/rc3.server
    2. faire un lien de /etc/rc.d/rc3.d vers /etc/sysconfig/rc3.d
    3. faire un lien de /etc/sysconfig/rc3.d vers /etc/rc.d/rc3.xxx
    4. remplacer S99local dans rc3.ws par un lien vers /etc/sysconfig/rc.local pour que chaque station ait son propre rc.local
    sur quelle machine il tourne pour ne rien faire dans le cas du serveur.
  • /etc/mtab doit 黎re accessible en 馗riture :
  • 3.3 Export des syst鑪es de fichiers appropri駸 et configuration de bootp

    Export des syst鑪es de fichiers

    Pour les utilisateurs de knfsd : il n'est pas possible d'avoir plusieurs exports d'une partition avec des permissions diff駻entes. De m麥e, knfsd ne permet pas de changer de partition /etc/rc.d/init.d/inetd restart

    4. Ajouter des stations

    4.1 Cr馥r une disquette de d駑arrage (bootdisk) ou une bootprom

    Cr馥r un bootdisk

    M麥e si vous avez l'intention d'utiliser une bootprom, il est plus sage de tester d'abord avec un bootdisk. Pour le cr馥r :

    dd if=/<path-to-zImage>/zImage of=/dev/fd0

    Cr馥r une bootprom

    compresser les packetdrivers, la plupart des pilotes commerciaux 騁ant trop gros pour tenir dans une bootprom. La documentation de netboot est assez compl鑼e : on ne la reprendra pas ici. Avec elle, cr馥r une bootprom et d駑arrer une station devrait aller de soi. La page web de netboot : http://www.han.de/~gero/netboot/
  • etherboot, l'autre package libre Il propose quelques am駘iorations comme le dhcp.

    A propos des roms : la plupart des cartes peuvent recevoir des eproms de 28 pins. Celle-ci ont une taille maximale de 64 ko. Pour la plupart des cartes, on aura besoin de 32 ko avec netboot. Quelques drivers tiendront dans une rom de 16 ko mais la diff駻ence de prix est minime. Ces eproms sont standards (on y 馗rit avec un eprom burner ordinaire).

    4.2 Cr馥r un r駱ertoire station

    Il suffit de recopier le r駱ertoire qui sert de mod鑞e (template) en tapant :

    4.3 Ajouter les entr馥s dans /etc/bootptab et /etc/hosts

    Editer /etc/bootptab et ajouter une entr馥 pour une station de test, par exemple :


    nfsroot1:hd=/tftpboot:vm=auto:ip=10.0.0.237:\ 
    :ht=ethernet:ha=00201889EE78:\
    :bf=bootImage:rp=/tftpboot/10.0.0.237/root
     
    

    Remplacer nfsroot1 par le nom d'h?e de la station. Remplacer 10.0.0.237 par son adresse IP et 00201889EE78 par son adresse MAC.

    Si cela 馗houe, c'est qu'il ne tournait pas. Dans ce cas inetd le d駑arrera au moment voulu.

    4.4 D駑arrer la station pour la premi鑽e fois

    D駑arrez simplement la station depuis le bootdisk. Vous devriez avoir ainsi une station en mode texte, avec exactement la m麥e configuration que le serveur except駸 l'adresse IP et les services lanc駸. M麥e si vous comptez utiliser une bootprom, il est plus sage de tester d'abord avec un bootdisk.

    5. Bonus : d駑arrer depuis un cdrom

    La plupart des op駻ations ci-dessus sont valables pour d駑arrer depuis un cdrom. Comme je voulais 馮alement documenter cette fa輟n de booter,

  • /etc/mtab doit 黎re accessible en 馗riture :
    • Cr馥r un lien vers /proc/mounts et cr馥r un fichier vide sous /proc, comme d馗rit pr馗馘emment.
  • 5.2 Cr馥r une configuration de test

      configuration de test.
    1. D駑arrez sur la configuration de test.
    2. Compilez le noyau comme d馗rit dans la section 3.1, en suivant toutes les 騁apes. Les modifications pour devfs doivent 黎re faites ici aussi. A l'騁ape 3, ajoutez ce qui suit :
      • cr馥r l'utilisateur qui lancera les applications
      • mettre son r駱ertoire sous /var
      • installer l'application (si n馗essaire)
      • configurer l'application si n馗essaire
      • configurer l'utilisateur de telle fa輟n que l'application d駑arre automatiquement apr鑚 le login
      • mke2fs -q -i 1024 /dev/ram1 1024 mount /dev/ram1 /var -o defaults,rw cp -a /lib/var / #restore devfs settings, needs proc mount -t proc /proc /proc /etc/rc.d/rc.devfs restore /etc/sysconfig umount /proc
      • Copiez ce qui suit dans un script et ex馗utez-le : cela va cr馥r un r駱ertoire mod鑞e pour /var et des liens pour /tmp et /etc/mtab.
        #!/bin/sh
        echo tmp
        rm -fR /test/tmp
        ln -s var/tmp /test/tmp
        
        ###
        echo mtab
        touch /test/proc/mounts
        rm /test/etc/mtab
        ln -s /proc/mounts /test/etc/mtab
        
        ###
        echo var
        mv /test/var/lib /test/lib/var-lib
        mv /test/var /test/lib
        mkdir /test/var
        ln -s /lib/var-lib /test/lib/var/lib
        rm -fR /test/lib/var/catman
        rm -fR /test/lib/var/log/httpd
        rm -f /test/lib/var/log/samba/*
        
      • Maintenant, d駑arrez sur la partition de test : elle sera en lecture seule comme un cdrom. Si quelque chose ne fonctionne pas, red駑arrez sur la partition de travail et r駱arez puis r馥ssayez. On peut aussi remonter / en lecture-馗riture, r駱arer puis red駑arrer directement sur la partition de test. Pour remonter / :
        mount -o remount,rw /

    5.3 Cr馥r le cd

    Cr馥r une image de d駑arrage (image de boot)

    D'abord, d駑arrer sur la partition de travail. Pour cr馥r un cd amor軋ble, nous aurons besoin d'une image d'une disquette de d駑arrage. Mais copier par dd une zimage ne suffit pas parce que, au tout d饕ut du chargement de celle-ci, un pseudo lecteur de disquette est cr鳬 et le chargeur du syst鑪e ne s'y retrouve plus dans le cas d'un cd amor軋ble. Donc nous utiliserons plut? syslinux.

    1. r馗up駻er boot.img sur un cdrom redhat
    2. monter boot.img quelque part par loopback en tapant :
      mount boot.img somewhere -o loop -t vfat
    3. enlever tout ce qui est dans boot.img sauf :
      • ldlinux.sys
      • syslinux.cfg
    4. copier le noyau de la partition de test vers boot.img
    5. Si /etc/mtab est un lien vers /proc/mounts, le d駑ontage ne va pas automatiquement lib駻er /dev/loop0 donc il faut le lib駻er en tapant :
      losetup -d /dev/loop0

    Cr馥r l'image iso

    Maintenant que nous avons l'image de boot et une installation qui peut d駑arrer sur un montage en lecture seule, il est temps de cr馥r une image iso du cd :

    1. copier boot.img sur /test
    2. aller dans le r駱ertoire ou vous voulez stocker l'image (en prenant garde qu'il y ait assez de place sur la partition)
    3. g駭駻er l'image :
      mkisofs -R -b boot.img -c boot.catalog -o boot.iso /test

    V駻ifier l'image iso

    1. monter l'image en loopback en tapant :
      mount boot.iso somewhere -o loop -t iso9660
    2. v駻ifier que le contenu est correct
    3. d駑onter boot.iso :
      umount somewhere