Petit guide du d�veloppement multi-distributions

  Traduction fran�aise du Development for Multiple Linux Distributions
  mini-HOWTO

  Ed Hill

   <ed CHEZ eh3 POINT com>

   Adaptation fran�aise : Joan Goutte

   Relecture de la version fran�aise : Dorian Musso, Simon Depiets

   Pr�paration de la publication de la v.f. : Jean-Philippe Gu�rard

   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 fran�aise                                                   |
   |------------------------------------------------------------------------|
   | 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.                                     |
   +------------------------------------------------------------------------+

   R�sum�

   Ce document d�crit un bricolage rapide destin� � faciliter le
   d�veloppement et les tests de programmes tournant dans l'espace
   utilisateurs pour diff�rentes distributions Linux.

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

   Table des mati�res

   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 d�veloppement d'une application, il est parfois n�cessaire de
   programmer ou de tester des programmes sur diff�rentes distributions
   Linux. Ce petit guide trace les grandes lignes d'une utilisation �l�gante
   de chroot qui peut, dans bien des cas, �viter de red�marrer sous
   diff�rentes distribution Linux pour r�aliser des tests ou des
   d�veloppements.

   En quelques mots, l'astuce consiste � placer tous les fichiers d'une
   certaine distribution dans un simple r�pertoire et de faire un chroot^[1]
   vers l'int�rieur de ce r�pertoire. Vous vous retrouverez ainsi dans un
   environnement d'ex�cution restreint qui vous permettra de d�velopper,
   tester ou rechercher les erreurs de votre programme dans le contexte qui
   vous int�resse. Cette m�thode fonctionnera � condition que :

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

    2. votre application tourne principalement dans l'espace utilisateur (i.
       e. : ne soit pas un module du noyau) et ne d�pende 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
   Gu�rard pour la version fran�aise.

   Vous pouvez redistribuer et modifier ce document selon les termes de la
   Licence de documentation libre GNU (FDL) (version 1.1 ou toute version
   ult�rieure publi�e par la Free Software Foundation), sans section
   invariante, ni texte de premi�re ou de quatri�me 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'h�sitez pas � faire parvenir vos commentaires,
   corrections et suggestions d'am�liorations � <commentaires CHEZ traduc
   POINT org>.

2. Installation

   Nous supposerons que vous avez d�j� :

    1. une distribution Linux � principale � (ou � primaire �) install�e avec
       un noyau 2.4 ou sup�rieur ;

    2. une partition libre de 2 � 4 Go ;

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

   Partant de ces hypoth�ses, voici les grandes lignes de l'une des solutions
   permettant d'installer plusieurs distributions secondaires qui seront
   utilis�es pour des d�veloppements, des tests, ou d'autres choses :

    1. Premi�rement, cr�ez ou allouez une partition non utilis�e de votre
       disque dur qui soit assez grande (2 � 4 Go seront en g�n�ral
       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 d�marrage. 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 tr�s gourmandes
       en espaces telles que le serveur X.

    3. Red�marrez votre distribution Linux principale et montez la partition
       contenant la distribution fra�chement install�e. Copiez (de pr�f�rence
       en utilisant tar -cp ou une autre m�thode conservant les droits) tous
       les fichiers de la distribution secondaire vers une destination telle
       que /opt/distributions/NOM_DE_LA_DISTRIBUTION.

    4. R�p�tez les �tapes 2 et 3 pour toutes les distributions
       suppl�mentaires que vous souhaitez installer. Au bout du compte, vous
       devriez obtenir une structure de r�pertoires ressemblant � celle-ci :

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

       o� chaque r�pertoire contient la totalit� des fichiers issus de
       l'installation de chaque distribution.

3.  Utiliser les distributions secondaires

   Une fois les distributions secondaires install�es, les �tapes � suivre
   pour les utiliser sont :

    1. Il est important que la distribution Linux principale utilise un noyau
       Linux 2.4 ou plus r�cent, afin de profiter des possibilit�s de points
       de montage multiples qu'offrent ces noyaux. Pour de nombreuses t�ches,
       les syst�mes de fichiers /proc et /tmp devront �tre mont�s � 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 r�aliser un nouveau montage (au lieu de
       la copier) de l'arborescence des sources de la premi�re 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 interpr�teur 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 n�cessaire) cr�ez un utilisateur dans l'environnement
       restreint. Vous pouvez maintenant d�velopper, construire ou tester
       votre application dans cette distribution Linux � s�par�e � ! Notez
       que vous aurez �galement � d�finir la variable d'environnement DISPLAY
       si vous d�sirez utiliser des applications X.

   Bien ! Vous disposez maintenant d'un interpr�teur de commandes que vous
   pouvez, � toutes fins utiles, ex�cuter sous la distribution Linux
   secondaire de votre choix.

4. Remerciements

   Je ne suis pas � l'origine des id�es pr�sent�es 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 tr�s utiles et j'ai voulu documenter ces
   id�es pour les autres.

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

   ^[1] La commande chroot permet d'ex�cuter une commande ou un interpr�teur
   de commandes en utilisant un r�pertoire racine diff�rent. On parle d'une
   commande ex�cut�e dans un environnement d'ex�cution restreint.