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 disposez 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.

