            Petit guide du dveloppement multi-distributions

  Traduction franaise du Development for Multiple Linux Distributions
  mini-HOWTO

  Ed Hill

   <ed CHEZ eh3 POINT com>

   Adaptation franaise: Joan Goutte

   Relecture de la version franaise: Dorian Musso, Simon Depiets

   Prparation de la publication de la v.f.: Jean-Philippe Gurard

   Version : 0.9.1.fr.1.0

   2004-03-11

   +----------------------------------------------------------------+
   | Historique des versions                                        |
   |----------------------------------------------------------------|
   | Version 0.9.1.fr.1.0       | 2004-03-11      | JG, DM, SD, JPG |
   |----------------------------------------------------------------|
   | Traduction franaise                                           |
   |----------------------------------------------------------------|
   | Version 0.9.1              | 2002-08-14      | EH3             |
   |----------------------------------------------------------------|
   | Petite mise  jour pour l'utilisation de X11 (sockets). Small  |
   | update for using X11 (sockets).                                |
   |----------------------------------------------------------------|
   | Version 0.9                | 2001-12-03      | EH3             |
   |----------------------------------------------------------------|
   | Version initiale. Initial version.                             |
   +----------------------------------------------------------------+

   Rsum

   Ce document dcrit un bricolage rapide destin  faciliter le
   dveloppement et les tests de programmes tournant dans l'espace
   utilisateurs pour diffrentes distributions Linux.

   -------------------------------------------------------------------

   Table des matires

   1. Introduction

                1.1. Droits d'utilisation

                1.2. Commentaires et corrections

   2. Installation

   3. Utiliser les distributions secondaires

   4. Remerciements

1. Introduction

   Lors du dveloppement d'une application, il est parfois ncessaire
   de programmer ou de tester des programmes sur diffrentes
   distributions Linux. Ce petit guide trace les grandes lignes d'une
   utilisation lgante de chroot qui peut, dans bien des cas, viter
   de redmarrer sous diffrentes distribution Linux pour raliser
   des tests ou des dveloppements.

   En quelques mots, l'astuce consiste  placer tous les fichiers
   d'une certaine distribution dans un simple rpertoire et de faire
   un chroot^[1] vers l'intrieur de ce rpertoire. Vous vous
   retrouverez ainsi dans un environnement d'excution restreint qui
   vous permettra de dvelopper, tester ou rechercher les erreurs de
   votre programme dans le contexte qui vous intresse. Cette mthode
   fonctionnera  condition que :

    1. la version du noyau de la distribution  principale  (ou
        primaire ) que vous excutez soit (un minimum) compatible
       avec la distribution  secondaire , c'est--dire la
       distribution excute en environnement restreint ;

    2. votre application tourne principalement dans l'espace
       utilisateur (i. e. : ne soit pas un module du noyau) et ne
       dpende pas intimement d'un dispositif particulier du noyau
       (i. e. : du comportement de /proc).

  1.1. Droits d'utilisation

   Copyright  2001 Ed Hill III.

   Copyright  2004 Joan Goutte, Dorian Musso, Simon Depiets et
   Jean-Philippe Gurard pour la version franaise.

   Vous pouvez redistribuer et modifier ce document selon les termes
   de la Licence de documentation libre GNU (FDL) (version 1.1 ou
   toute version ultrieure publie par la Free Software Foundation),
   sans section invariante, ni texte de premire ou de quatrime de
   couverture. Une copie de cette licence est accessible sur
   http://www.gnu.org/copyleft/fdl.html
   [http://www.gnu.org/copyleft/fdl.html].

   Permission is granted to copy, distribute and/or modify this
   document under the terms of the GNU Free Documentation License,
   Version 1.1 or any later version published by the Free Software
   Foundation; with no Invariant Sections, with no Front-Cover Texts,
   and with no Back-Cover Texts. A copy of the license is available
   at http://www.gnu.org/copyleft/fdl.html
   [http://www.gnu.org/copyleft/fdl.html].

  1.2. Commentaires et corrections

   Ce document a t traduit dans le cadre du projet traduc.org
   [http://www.traduc.org]. N'hsitez pas  faire parvenir vos
   commentaires, corrections et suggestions d'amliorations 
   <commentaires CHEZ traduc POINT org>.

2. Installation

   Nous supposerons que vous avez dj :

    1. une distribution Linux  principale  (ou  primaire )
       installe avec un noyau 2.4 ou suprieur ;

    2. une partition libre de 2  4 Go ;

    3. suffisamment d'espace disque pour l'installation des
       distributions secondaires (et pour les travaux de
       dveloppement et de test en dcoulant).

   Partant de ces hypothses, voici les grandes lignes de l'une des
   solutions permettant d'installer plusieurs distributions
   secondaires qui seront utilises pour des dveloppements, des
   tests, ou d'autres choses :

    1. Premirement, crez ou allouez une partition non utilise de
       votre disque dur qui soit assez grande (2  4 Go seront en
       gnral suffisants) pour faire une installation de base de
       l'une des distributions Linux secondaires.

    2. Installez la distribution secondaire sur cette partition mais
       ne l'ajoutez pas  votre configuration de dmarrage. Notez que
       cette installation a seulement besoin d'inclure les paquets
       que votre application (ou votre essai) exige. Par exemple, il
       est possible que vous puissiez vous passez d'installer des
       applications trs gourmandes en espaces telles que le serveur
       X.

    3. Redmarrez votre distribution Linux principale et montez la
       partition contenant la distribution frachement installe.
       Copiez (de prfrence en utilisant tar -cp ou une autre
       mthode conservant les droits) tous les fichiers de la
       distribution secondaire vers une destination telle que
       /opt/distributions/NOM_DE_LA_DISTRIBUTION.

    4. Rptez les tapes 2 et 3 pour toutes les distributions
       supplmentaires que vous souhaitez installer. Au bout du
       compte, vous devriez obtenir une structure de rpertoires
       ressemblant  celle-ci :

 /opt/distributions/redhat_6.2/
                    suse_7.2/
                    mandrake_8.1/
                    debian-potato/
                    slackware_8.0/

       o chaque rpertoire contient la totalit des fichiers issus
       de l'installation de chaque distribution.

3.  Utiliser les distributions secondaires

   Une fois les distributions secondaires installes, les tapes 
   suivre pour les utiliser sont :

    1. Il est important que la distribution Linux principale utilise
       un noyau Linux 2.4 ou plus rcent, afin de profiter des
       possibilits de points de montage multiples qu'offrent ces
       noyaux. Pour de nombreuses tches, les systmes de fichiers
       /proc et /tmp devront tre monts  nouveau dans la
       distribution secondaire en utilisant :

 mount --bind /proc /opt/distributions/redhat_6.2/proc
 mount --bind /tmp /opt/distributions/redhat_6.2/tmp

    2. Aussi, il peut tre utile de raliser un nouveau montage (au
       lieu de la copier) de l'arborescence des sources de la
       premire distribution dans la distribution secondaire :

 mount --bind /home/UTILISATEUR/src/PROJET \
     /opt/distributions/redhat_6.2/home/UTILISATEUR/src/PROJET

    3. Connectez-vous sous le compte root et faites :

 xhost +localhost chroot /opt/distributions/redhat_6.2 /bin/bash

       pour obtenir un interprteur de commandes (shell) dans l'une
       des distributions secondaires. Notez que la commande xhost
       n'est utile que si vous avez l'intention d'utiliser des
       applications X.

    4. Enfin (si ncessaire) crez un utilisateur dans
       l'environnement restreint. Vous pouvez maintenant dvelopper,
       construire ou tester votre application dans cette distribution
       Linux  spare  ! Notez que vous aurez galement  dfinir
       la variable d'environnement DISPLAY si vous dsirez utiliser
       des applications X.

   Bien ! Vous disposer maintenant d'un interprteur de commandes que
   vous pouvez,  toutes fins utiles, excuter sous la distribution
   Linux secondaire de votre choix.

4. Remerciements

   Je ne suis pas  l'origine des ides prsentes dans ce petit
   guide. Elles ont t recueillies dans des messages de Ben Reed (de
   OpenNMS [http://www.opennms.org/]) pour l'une des listes de
   discussions du groupe d'utilisateurs de Linux TriLUG
   [http://www.trilug.org/]. J'ai trouv que ces informations
   pouvaient tre trs utiles et j'ai voulu documenter ces ides pour
   les autres.

   --------------

   ^[1] La commande chroot permet d'excuter une commande ou un
   interprteur de commandes en utilisant un rpertoire racine
   diffrent. On parle d'une commande excute dans un environnement
   d'excution restreint.

