Ce mois-ci Linux+DVD
fête ses 5 ans !
L
e printemps est enfin arrivé ! En cette période de recon-
naissance et de joie, notre magazine Linux+DVD fête ses
5 ans sur le marché français ! Je vous invite à découvrir
dans ce numéro d'anniversaire notre dossier spécial sur
le traitement des photos sous Linux. S'il vous arrive de rater des
photos ou si vous avez envie de retoucher ou de changer l'ambiance
de vos photos, le dossier sur Gimp et Phatch est pour vous ! Vous
y trouverez un guide expliquant comment transformer les photos en
dessin artistique, retoucher une photo « ratée » ou apporter les chan-
gements sur plusieurs photos d'un seul clic. Bon apprentissage dans
une bonne ambiance assuré !
Dans ce 50ème numéro de Linux+DVD, vous trouverez également
plein d'articles sur la programmation, le multimédia et la sécurité. Dans
la rubrique Programmation je vous encourage à découvrir l'article sur
un outil puissant, Typo3. Vous allez apprendre comment développer une
extension Typo3 mais également comprendre les bonnes raisons de le
faire. Le tutoriel MPI pour Python, quant à lui, a pour but de vous in-
troduire dans le monde de la programmation parallèle en Python. Dans
notre rubrique Sécurité vous aurez l'occasion d'apprendre comment
configurer et utiliser vsFTPd. L'auteur de l'article sur la sécurisation
de l'information et du système d'information s'adresse aux néophytes
désirant s'instruire pour savoir comment rétablir et garantir la sécurité
de l'information et du système d'information. Pour les débutants, nous
avons également préparé un article sur le logiciel de messagerie Evo-
lution. Vous découvrirez ainsi la simplicité de cet outil complet. Et ne
manquez surtout pas notre article sur les noms de domaine ! En effet,
il est indispensable de nos jours de comprendre leur fonctionnement et
de savoir bien choisir son nom de domaine. Conseils et astuces dans
l'article d'Aymeric Lagier.
Linux+DVD fête ses 5 ans ! À cette occasion, nous avons préparé
des concours avec des prix pratiques ! Cherchez-les sur notre site web
: www.lpmagazine.org ainsi qu'au sein du magazine. Livres sur la pro-
grammation et la sécurité, sacoches et abonnements annuels à saisir !
Les gagnants seront élus parmi les votes sur notre site Internet. N'hési-
tez donc pas à participer au vote et à donner votre avis.
Je voudrais profiter de l'occasion pour remercier nos partenaires
qui sont sponsors de nos concours : Editions Dunod, Eni et également
PortDesigns.
Aneta Mazur
Rédaction Linux+DVD
www.lpmagazine.org 3
Sommaire
Dans ce numéro
6 Actus
Julien Rosal
Si vous avez besoin de traiter vos images en masse, rien de pus
simple que de vous familiariser avec un logiciel de graphisme
libre Phatch ! Son interface simple et ses actions principales
8 Mandriva
Fabrice Facorat
vous permettront de redimensionner, réorienter ou inscrire du
texte sur vos photos en quelques minutes ! Voici une aubaine à
ne pas rater pour ceux qui ont en marre des commandes Image-
9 Debian Magick !
Julien Rosal
Dossier
Focus
4 Linux+ 3/2009
Sommaire
Sécurité
www.lpmagazine.org 5
NE WS
Actus
news Section dirigée par : Julien Rosal news@lpmagazine.org
6 Linux+ 3/2009
NE WS
Actus
Section dirigée par : Benjamin Jean news@lpmagazine.org news
http://www.ja-psi.fr
www.lpmagazine.org 7
Actus
mandriva Section dirigée par : Fabrice Facorat linux@lpmagazine.org
8 Linux+ 3/2009
Actus
Section dirigée par : Julien Rosal linux@lpmagazine.org debian
Un administrateur au top
Sécurité en attente
L'équipe chargée des mises à jour de
D ebian, comme les autres distributions atop signifie advanced top ou si vous voulez sécurité pour la future version Debian
testing nommée Squeeze (L'extraterrestre
Linux a besoin d'être administrée et la version frenchies : Top Avancée. Donc savoir
à trois yeux) a annoncé que le support des
pour cela il faut des outils performants et sim- utiliser la commande top n'a pas été du temps mises à jour ne débutera pas directement
ples d'utilisation qui renseignent l'administra- perdu car atop est son digne successeur. après que la distribution Lenny devienne
teur sur les points essentiels de son serveur. Assez de long discours, voilà ce que dit la officiellement la version stable de Debian.
Une annonce qui semble assez logique car
Jusque là tout va bien, je n'ai dit qu'une gé- description Debian à propos du package atop :
l'équipe est certainement la plus expérimen-
néralité presque évidente, reste maintenant Atop est un moniteur en mode texte plein écran, tée pour les mises à jour sous Lenny et il
à assumer et peut être même vous aider à ad- similaire à la commande top, mais qui ne mon- semble normal qu'elle accompagne la dis-
ministrer votre machine... tre que les processus et ressources systèmes tribution stable encore pour quelque temps.
N'oublions pas que la sortie d'une version
Vaste débat que l'administration de votre actifs, et n'affiche que les différences depuis le
de Debian est toujours très attendue
machine, il faudrait bien plus qu'un simple arti- dernier intervalle. À intervalle régulier, il affi- et donc il serait dommage que cette sortie
cle pour ne serait-ce que faire une introduction che l'activité du système concernant l'utilisa- soit gâchée par une mise à jour mal réalisée.
convenable sur le sujet. Bref, assez parlé, il est tion du processeur en mode utilisateur et systè- Pour ceux qui ont l'habitude d'utiliser la ver-
sion testing de Debian, il est donc conseillé
temps de travailler un peu. me, de l'évolution de la mémoire virtuelle et ré-
de rester quelque temps avec la version
Dans ce rôle d'administrateur, il y a un sidente, des priorités, des utilisateurs, des états stable (qui sera donc Lenny) afin d'éviter
outil en ligne de commande bien pratique et des codes de sortie. Le niveau d'activité des de réels problèmes sur votre machine, mais
qui se nomme top. Si vous ne connaissez pas, processus est aussi affiché pour les processus après vous faites comme vous voulez, on
vous aura prévenu.
ouvrez une console et tapez simplement top et qui se sont terminés lors du dernier intervalle
validez, vous allez visualiser en temps réel des de temps, afin d'avoir un aperçu complet de Debian vs Android
informations sur votre système telles que : la consommation d'éléments comme le temps Vous avez entendu parler d'Android, le
système d'exploitation de Google disponible
CPU.
pour les plateformes mobiles et notam-
• Utilisation du CPU, Le package atop n'est pas installé par dé- ment sur le fameux HTC G1. Et bien il
• Utilisation de la RAM, faut sur votre Debian (à contrario de top) il faut y a des petits malins qui ont réussi à ins-
• Liste des tâches qui sont actuellement donc l'installer en tapant la commande : apt- taller Debian sur ce téléphone. Ils ont fait
même mieux que ça car Debian ne s'installe
gérées par le noyau, get install atop. Ensuite c'est assez simple,
pas à la place d'Android mais juste à côté.
• Temps depuis le dernier redémarrage de dans une console tapez atop et l'application Ceci à un double avantage car on garde
votre système. va s'ouvrir en mode texte. Ensuite l'utilisation toutes les possibilités offertes par les servi-
n'est pas très compliquée, voici quelques com- ces de téléphonie tout en ajoutant des fonc-
tions super sympas grâce à la puissance des
Des informations intéressantes qui peuvent mandes de base :
dépôts Debian. Bref une configuration bien
déjà aider à faire un diagnostic lors d'un dys- sympa à tester pour avoir le plaisir de trim-
fonctionnement quelconque d'une machine. • touche [h] : accès à l'aide, baller Debian dans sa poche ;) Pour ceux
Un des avantages de la commande "top" c'est • touche [shift] + [c] : tri par utilisation du qui veulent en savoir plus, je vous invite
à vous rendre sur la page de Jay Freeman :
qu'elle fonctionne en mode texte et donc on CPU,
http://www.saurik.com/id/10. Désolé mais
peut l'utiliser à distance via ssh et une console • touche [shift] + [m] : tri par utilisation de encore une fois la page est in english...
putty par exemple. la ram,
Ça bouge chez Debian
La commande top mais il y a mieux ! Et oui, • touche [shift] + [d] : tri par utilisation du
Le monde Debian n'est pas un monde
depuis la version Etch de Debian, un nouvel outil disque, figé et les mouvements de personnel
a été ajouté dans les dépôts, il s'agit de la com- • touche [q] : quitter l'application. (bénévole) en sont le meilleur exemple.
mande atop. Vous avouerez qu'ils ne se sont pas Manoj Srivastava, secrétaire à long terme
du projet Debian, a décidé de démission-
foulés pour trouver le nom. Plus sérieusement, Bien entendu il y a bien d'autres fonctionnali-
ner de ce poste. Cette décision fait suite
tés mais je vous laisse les découvrir en lisant aux critiques reçues lors de la conduite
l'aide, qui malheureusement est en langue de du Lenny release GR. Ce n'est pas le seul
Shakespeare. Comme pour la commande top, à quitter son poste car Anthony Towns
a démissionné de son poste de membre du
un des gros avantage c'est qu'encore une fois
Comité technique de Debian qu'il a oc-
la commande est disponible en mode console cupé pendant trois ans. Anthony Towns
et donc vous pourrez surveiller votre système a déclaré vouloir du sang neuf dans ce co-
à distance. mité. Suite à cette démission, Bdale Gar-
bee, l'actuel président de la commission
Voilà désormais vous êtes mieux armés pour
technique, a annoncé que Russ Allbery
administrer votre serveur Debian, n'oubliez pas et Don Armstrong ont été ajoutés
que top ou atop sont certainement vos meilleu- à la commission technique. Bref beau-
res armes de diagnostic lors d'un plantage. En coup de mouvement mais remercions les
personnes qui sont parties pour le travail
quelques secondes vous saurez quel processeur
colossal qu'elles ont effectué et souhaitons
vous met la pagaille sur votre machine et vous bonne chance aux personnes qui les rem-
pourrez le killer sans ménagement, sans pitié, placent.
L'interface command ligne de atop sans regret... Vous êtes un vrai guerrier.
www.lpmagazine.org 9
Sur le DVD
DVD
G entoo 2008.0 est la nouvelle mouture Contrairement à Ubuntu, si vous voulez le Tableau 1. Le schéma de partitionnement
de la distribution Gentoo. Elle a comme dernier environnement gnome, vous n'êtes pas device taille fs type
nom de code : It's got what plants crave, que obligé de migrer, vers la nouvelle version 8.10. sda1 100Mo ext2 /boot
l'on pourrait traduire par : ce dont les usines Un autre point important qui fait la force (et la sda2 1024Mo - swap
ont besoin. faiblesse pour certains) de Gentoo : c'est une dis-
sda3 Le reste ext3 /
tribution source. Ce qui signifie que quand vous
Nouveautés installez un logiciel avec Gentoo, vous récupérez handbook/handbook-x86.xml. J'ai repris le même
Cette version 2008.0 apporte de nombreuses les sources du logiciel et vous les compilez. Cela fil conducteur et une partie des exemples, afin que
améliorations par rapport à la version 2007.0. apporte une gestion très fine des dépendances, et vous puissiez vous y référer en cas de doute.
En particulier : permet d'optimiser les programmes pour votre
architecture. Par contre, cela demande plus de Configurer le réseau
• un nouvel installeur avec un meilleur sup- temps que d'installer un programme binaire. Le plus simple est d'utiliser dhcp pour confi-
port des partitions étendues et logiques, Gentoo supporte un grand nombre de platefor- gurer le réseau. En supposant que votre carte
• l'environnement graphique XFCE qui mes matérielles : x86, amd64, ppc, sparc, arm, réseau est reconnue comme eth0 :
remplace gnome, afin de préserver de la ia64…
place sur le live-cd, net-setup eth0
• le kernel 2.6.24, ce qui apporte un Logiciels disponibles
meilleur support du matériel, et le support La grande majorité des logiciels disponibles sur devrait suffire à configurer votre carte. Pour
de nouveaux matériels, les autres distributions le sont également sur s'assurer que le réseau est bien configuré, vous
• gcc version 4.1.2, Gentoo. Ainsi, gnome est disponible en version pouvez utiliser ifconfig.
• glibc version 2.6.1, 2.24, kde en version 4.2, xfce en version 4.4.3 Si jamais vous ne pouvez pas utiliser dhcp
• portage 2.1.4.4. et xorg-x11 en version 7.4. Des milliers de logi- pour configurer le réseau, le mieux est de confi-
ciels sont disponibles grâce à portage, et des gurer le réseau à la main. Vous pouvez tenter :
Particularités milliers d'autres grâce aux overlays (arbres non-
Bien que Gentoo 2008.0 soit la nouvelle version officiels). Les logiciels sont disponibles dans leur ifconfig eth0 192.168.0.100 netmask
de Gentoo, on ne peut pas parler de changement dernière version sur Gentoo quelques semaines 255.255.255.0 broadcast 192.168.0.255
majeur. En effet, contrairement à d'autres distri- après leur sortie, en fonction de la popularité route add default gw 192.168.0.1
butions comme Ubuntu, Fedora ou Mandriva, il du logiciel et de l'emploi du temps des déve- echo nameserver monserveurdns >>
n'y pas de version majeure. Il n'y pas de cycle loppeurs, qui font un travail remarquable. /etc/resolv.conf
de sortie sur 6 mois. Les mises à jour sont dis-
ponibles en continu. Les utilisateurs de Gentoo Installation Évidemment, il faut adapter à votre réseau, en
2007.0 qui mettent à jour leur machine réguliè- Bien qu'un installeur graphique soit disponible particulier remplacer monserveurdns par celui
rement ont les mêmes logiciels que ceux sur le sur le live-cd, nous allons procéder à une installa- de votre FAI.
live-cd. D'autres distributions adoptent le même tion classique ; car l'installeur graphique ne fonc-
mode de fonctionnement ; par exemple Arch tionne pas. Je me suis basé sur le manuel Gen- Partitionner le disque
Linux propose des mises à jour en continu. too pour la suite : http://www.gentoo.org/doc/fr/ Nous allons utiliser cfdisk, et créer 3 partitions :
une pour /boot, une pour la swap et une dernière
qui servira de partition principale. Le fonction-
nement de cfdisk est assez intuitif. Nous allons
considérer le schéma de partitionnement suivant
(voir Tableau 1). Bien évidemment, ce choix
est discutable, adaptez le à vos besoins/envies.
Note : (sda1 = /dev/sda1), nous allons utiliser la
libata du kernel, pour gérer les disques. Même si
vous avez un disque IDE, il sera reconnu comme
/dev/sdX.
Ensuite il faut formater le disque, on utilise
mke2fs :
mke2fs /dev/hda1
mke2fs -j /dev/hda3
Figure 1. Gentoo 2008.0 écran d'accueil mkswap /dev/hda2 && swapon /dev/hda2
10 Linux+ 3/2009
Sur le DVD
DVD
Pour finir, il faut monter les partitions : Une fois le checksum vérifié : Installer le système
Il faut d'abord choisir les miroirs pour récupé-
mount /dev/sda3 /mnt/gentoo tar xvf portage-latest.tar.bz2 rer les sources :
mkdir /mnt/gentoo/boot
mount /dev/sda1 Il est temps de configurer vos options de mirrorselect -i -o >> /mnt/gentoo/
/mnt/gentoo/boot compilation. Cela ce fait en éditant le fichier etc/make.conf
/etc/make.conf (donc /mnt/gentoo/etc/make. mirrorselect -i -r -o >> /mnt/gentoo/
N.B. : Attention ne montez jamais une partition conf) : nano -w /mnt/gentoo/etc/make. etc/make.conf
directement sur /mnt, cela pourrait freezer le conf.
système (j'ai déjà eu ce problème). Il est capital de bien choisir les bonnes Il faut ensuite copier les informations sur le
options, car si vous choisissez les mauvaises réseau dans le nouvel environnement : cp -L
Récupérer le stage3 options, au pire votre système sera inutilisable, /etc/resolv.conf /mnt/gentoo/etc/.
Placez vous dans la racine de votre nouvelle au mieux plus lent. Enfin, nous allons monter /proc et /dev sur
installation : cd /mnt/gentoo. Pour vous donner une idée, jetez un œil sur le nouvel environnement :
Nous allons récupérer le stage3 depuis un /etc/make.conf.example. Nous allons nous inté-
miroir français : resser à la variable CFLAGS. Le plus important mount -t proc none /mnt/gentoo/proc
est de bien choisir le -march. Pour un pentium mount -o bind /dev /mnt/gentoo/dev
links http://www.gentoo.org/main/en/ 4 on peut mettre :
mirrors.xml Nous pouvons alors entrer dans le nouvel envi-
CFLAGS="-march=pentium4 -O2 -pipe - ronnement en faisant un chroot :
Choisissez un miroir proche de chez vous, fomit-frame-pointer"
et télécharger le stage3. Par exemple : CXXFLAGS="${CFLAGS}" chroot /mnt/gentoo /bin/bash
env-update
http://ftp.first-world.info/releases/ Pour un athlon-xp on peut utiliser : source /etc/profile
x86/2008.0/stages/stage3-x86-
2008.0.tar.bz2 CFLAGS="-march=athlon-xp -O2 -pipe Il est utile de mettre à jour l'arbre portage :
-fomit-frame-pointer" emerge --sync.
Je vous invite à vérifier le checksum. Nous CXXFLAGS="${CFLAGS}" Regardez attentivement le message de
allons maintenant détarer le stage3 : tar xfvp fin, car il peut être nécessaire de mettre à jour
stage3-x86-2008.0.tar.bz2. Si vous ne savez pas quoi utiliser, -march=i686 à portage : emerge --oneshot portage.
est un bon choix. Nous sommes prêts, à choisir notre profil.
Récupérer Portage Ensuite vous pouvez modifier (ou créer) la Un profil correspond à un ensemble de USEs,
Nous allons procéder de la même manière variable MAKEOPTS : MAKEOPTS="-j2". nous verrons ce que sont les USEs plus tard, et
que pour le stage3. Mais nous devons d'abord Cela correspond au nombre de threads que vous permet de bloquer/débloquer certains logi-
nous placer dans notre /usr : cd /mnt/gentoo/ nous allons utiliser pour compiler. En général, ciels. Nous allons considérer que nous utilisons
usr. on peut utiliser la règle suivante pour choisir le notre machine en desktop ; et non en serveur web
Cette fois nous allons télécharger depuis : nombre de threads : ou autre.
http://ftp.first-world.info/snapshots/portage- Normalement, le profil par défaut est très
latest.tar.bz2. MAKEOPTS="-j{nb de cœurs + 1}". bien pour ce que nous voulons faire. Il est possi-
ble d'en changer en changeant le lien symbolique
de votre profil :
www.lpmagazine.org 11
Sur le DVD
DVD
Il faut éditer le fichier make.conf pour choi- genkernel/x86/kernel-config-2.6 Il faut indiquer à grub où trouver notre
sir ses USEs : nano -w /etc/make.conf. genkernel all noyau, pour cela éditez le fichier /boot/grub/
Par exemple, si vous avez l'intention d'ins- grub.conf :
taller gnome : USE="gtk gnome -qt3 -qt4 Vérifiez la présence du noyau et de l'initrd :
-kde alsa X" est un bon début. nano -w /boot/grub/grub.conf
Pour kde on peut mettre : USE="-gtk - ls /boot/kernel* /boot/initramfs*
gnome qt4 qt3 kde alsa X". Par exemple, pour notre noyau :
Nous allons ajouter le support du français au Configurer le système
système. Il faut éditer le fichier /etc/locale.gen. Pensez à renseigner le fstab : nano -w /etc/ default 0
fstab. timeout 10
en_US.UTF-8 UTF-8 Pour notre schéma de partitionnement : title Gentoo Linux
fr_FR.UTF-8 UTF-8 root (hd0,0)
/dev/sda1 /boot ext2 noatime 1 2 kernel /boot/kernel-2.6.27-gentoo-r8
Utilisez locale-gen pour générer les locales. Pour /dev/sda2 none swap sw 0 0 root=/dev/sda3
configurer l'heure, il suffit de copier le fichier /dev/sda3 / ext3 noatime 0 1
vous concernant dans /etc/localtime. Exemple Ensuite un simple grub-install suffit pour ins-
pour Paris : Ensuite, configurez le réseau : taller grub sur le disque :
12 Linux+ 3/2009
Sur le DVD
Fedora 9
S’il vous est impossible de lire le DVD alors qu’il n’a pas de défaut
apparent, essayez de le lire dans un autre lecteur.
3/2009
www.lpmagazine.org 10
Pour tout problème concernant le DVD, écrivez-nous à l’adresse : dvd@lpmagazine.org
Dossier
Dossier Gimp
Comment rattraper
une photo <ratée> avec Gimp
Arnaud Bullou
Il vous est arrivé un jour de rater une photo alors que vous teniez à tout prix
à mémoriser un événement ? Rien de plus simple maintenant ! Cet article vous
apprendra les techniques pour retoucher et modifier une photo. Il montre comment
utiliser certaines fonctionnalités et outils pour obtenir des effets ou une amélioration
importante de vos photos.
L
e premier objectif de cet article est de vous
linux@software.com.pl
14 Linux+ 3/2009
Dossier
Dossier Gimp
www.lpmagazine.org 15
Dossier
Dossier Gimp
16 Linux+ 3/2009
Dossier
Traitement des photos sous Gimp
Transformez
vos photos en dessins
Cédric Gémy
Envie de changer l’ambiance de vos photos favorites ? Voulez-vous obtenir
un résultat inspiré de Van Gogh ? Sans être doué en dessin, vous allez
pouvoir transformer vos photos en dessin à l’aide d’un logiciel gratuit et simple
d’utilisation. Voyons ensemble, comment le faire avec des résultats très
convaincants.
I
l s'agit d'un logiciel de retouche photo, de dessin,
linux@software.com.pl
18 Linux+ 3/2009
Dossier
Traitement des photos sous Gimp
Il est ainsi plus simple d'effectuer certai- Nous allons utiliser de manière quasi sys-
Ce qu'il faut savoir... nes opérations sans avoir à réaliser trop tématique dans nos manipulations les filtres
de déplacements avec la souris. Ce mode de Détection de bord. En recherchant la limite
Peu de choses, mais avoir des notions
est particulièrement pratique, entre les couleurs, ces filtres permettent de dé-
préalables de calque peut être un plus. Car
• notons qu'en cours de manipulation, si le limiter les bordures entre les objets et de tracer
même si nous rappelons leur fonctionne-
menu n'est pas trop utilisé il est possible par des contours plus ou moins épais selon l'algo-
ment, leur mise en œuvre pourra deman-
un clic droit sur l'image de faire apparaître rithme choisi et les réglages propres à ce choix.
der du temps aux grands débutants.
ce même menu des images, localement sur Certaines fois, appliquer une détection de bord
la zone de travail. Le menu par clic-droit puis inverser les couleurs peut suffire à créer un
Dans GIMP, chaque fenêtre ou boîte de dia- est particulièrement intéressant si vous déci- effet de dessin! Selon le résultat attendu et les
logue dispose de sa propre barre de menus (ac- dez de travailler en mode Plein Écran [F11]. caractéristiques de la photographie on appli-
cessible par le petit triangle en haut à droite des Vous pouvez alors définir dans les préfé- quera une détection de bord appropriée. Dans
fenêtres), dont les items sont relatifs à la fonction rences (Édition>Préférences) dans la rub- nos expérimentations, nous préciserons de
de la fenêtre. Pour clarifier : on ne trouvera pas rique Fenêtre d'image>Apparence que le laquelle il s'agit et ses attributs.
dans la barre de menus de la boîte à outils des op- menu principal et que les règles ne seront Le menu Couleurs est également souvent
tions relatives à la taille de l'image, en revanche pas visibles. L'essentiel étant de se con- sollicité pour le genre de transformations qui
il y sera possible d'accéder à l'aide, à la gestion centrer sur la photo. nous concernent. Les réglages entre autres de
des fichiers... teinte-saturation, de luminosité-contraste, de ba-
Pour retoucher une photographie, il n'est Cette diversité de présentation et de modalité lance des couleurs et désaturer sont régulièrement
pas nécessaire de créer un nouveau document. d'accès à ces mêmes menus, confère à GIMP la utilisés dès le stade de préparation de l'image,
Glisser les photos depuis votre navigateur de fi- qualité d'adaptation aux divers types d'utilisa- puis tout au long de la transformation pour ajus-
chier vers la fenêtre d'image ou la boite à outils tion et un grand confort de travail. ter l'image à nos besoins. La commande Inverser
de Gimp ou utilisez simplement Fichier>Ouvrir Sans décrire l'intégralité des menus des du menu Couleurs est très utilisée après les dé-
(certains s'en prennent à Gimp en disant que images, il nous semble judicieux de présenter tections de bord, pour donner un aspect dessiné
son interface est compliquée). Avec le logiciel brièvement, pour les transformations qui nous (ne pas la confondre avec la commande Inverser
GIMP, il est possible d'ouvrir plusieurs images concernent le menu Filtres (voir Figure 2). Non du menu Sélection qui consiste à choisir d'agir
en même temps, chacune sera affichée dans une que ce menu soit essentiel, mais nous y pas- sur l'inverse de la sélection courante). Les op-
fenêtre séparée, permettant par exemple de les serons en effet à plusieurs reprises dans ces tions du menu couleur sont connues pour amé-
comparer ou d'emprunter des éléments à l'une pages. liorer les images, mais ici nous les utilisons de
pour les mettre dans une autre. Lorsque l'on applique un filtre à une image façon plus créatives : Désaturer, Courbes (voir
ou à un calque (les calques seront détaillés plus Figure 3).
Menus de la fenêtre image bas), on entend que l'image passe à travers un
Les éléments que nous allons utiliser le plus algorithme (formule mathématique décrivant une Comment revenir en arrière
souvent se trouvent dans les menus de la fenêtre action systématisée) et ressort modifiée. Ces fil- si vous vous trompez?
image. Ces menus sont accessibles sous plu- tres permettent d'appliquer des effets de diver- Il est possible d'annuler une action effectuée sur
sieurs formes : ses natures sur l'image ou le calque. Il existe GIMP de plusieurs manières, soit dans le Menu
une grande quantité de filtres : certains floutent Édition puis Annuler soit par le raccourci clavier
• de manière assez classique dans la barre l'image, d'autres au contraire la rendent plus nette,
des menus de la fenêtre, certains permettent de simuler des éclairages arti-
• en activant le triangle gris situé dans le ficiellement ou encore de détecter des contours.
coin supérieur gauche de la fenêtre d'image, La partie supérieure de ce menu concerne la
sous le menu Fichier de la barre, à l'inter- gestion des actions réalisées à l'aide des filtres.
section des règles. L'avantage de cet accès, Il est ainsi possible de répéter le filtre, mais égale-
c'est qu'il permet d'obtenir le menu des ima- ment d'en afficher la boîte de dialogue, de revenir
ges en fenêtre indépendante par une mani- sur les filtres récemment utilisés et enfin de réini-
pulation extrêmement simple; il suffit de tialiser les filtres à leur valeur par défaut.
cliquer sur la ligne de pointillés de ce menu. La boîte de dialogue du filtre sélectionné
s'affiche en temps réel et permet de visualiser le
résultat de la transformation, sous la forme d'une
Concernant les photographies fenêtre d'aperçu. On peut parfois déplorer que ces
aperçus soient trop petits, mais ils ont l'avantage
Les photos de cet article sont exploitées
de s'adapter rapidement aux modifications de
avec l'autorisation de Thierry Laroche,
réglages. Si les modifications ne s'affichent pas, il
hormis celle servant de base à la figure 10
faut vérifier que la case Aperçu soit bien cochée.
qui est de Lucie Norroy. Comme vous le
Viennent ensuite diverses galeries de filtres,
verrez, elles ne manquent pas de vigueur.
en effet pour chaque galerie, il y a un menu pro-
Mais sachez que toute photo peut être uti-
pre, comme on peut le voir, par exemple dans la
lisée, assurez-vous cependant de choisir
figure 2, la galerie Artistique dispose de plusieurs Figure 1. L'interface de Gimp est basée sur des
des photos suffisamment contrastées.
effets. outils et leurs paramètres
www.lpmagazine.org 19
Dossier
Traitement des photos sous Gimp
feuille de papier calque, en tout cas pour com- ment de feuilles où l'on peut prendre la dernière
prendre une partie de ses fonctions, nous con- et la mettre à n'importe quel endroit de la pile)
seillons de le visualiser ainsi. Chacune de ces ancrer un calque flottant et supprimer. Ces ac-
feuilles peut être, entre autres, une feuille trans- tions sont accessibles par des icônes.
parente, auquel cas ce calque apparaîtra rempli Dans la partie déroulante de cette boîte de
d'un damier gris et noir. Notons que l'image dialogue, sont visibles les calques et leur posi-
originale est nommée par défaut Arrière plan tion. De même que l'on ne peut dessiner sur deux
mais possède les mêmes fonctionnalités que les feuilles en même temps, on n'agit que sur le
autres calques, sauf cas particulier, mais ne peut calque que l'on a sélectionné (à moins de l'avoir
cependant être supprimée tant qu'un autre cal- verrouillé à un autre). Pour sélectionner un cal-
que n'a pas été créé. Un calque peut également que, il suffit de cliquer sur celui-ci. Il apparaîtra
contenir un texte, en effet la création d'une zone alors en surbrillance. Lorsque l'on effectue un
Figure 2. Le menu Filtre offre de nombreuses
de texte dans GIMP entraîne automatiquement grand nombre de manipulations, il est préférable
options : Photocopie, Laplace amélioré, Tisser
la création d'un calque indépendant. Si l'on de vérifier assidûment que le calque sélectionné
[Ctrl] + [Z], ceci est valable pour l'annulation reste sur le principe des feuilles de calques, qui, est bien celui sur lequel on veut agir.
d'une ou deux actions. Si l'on désire revenir en cela-dit, ne résume pas toutes les fonctions et Lorsque l'on ouvre une image avec GIMP,
arrière de plusieurs étapes, la fenêtre Histori- utilités des calques dans GIMP, il paraît aisé de elle apparaît automatiquement dans la boîte de
que d'annulation (Menu Édition) est bien plus comprendre que les calques sont indépendants dialogue des calques. La première étape de
utile, de plus, cette fenêtre présente un aperçu les uns des autres. Cette indépendance permet chacune de nos manipulations est de dupliquer
de chaque étape. Il est donc possible de réaliser une grande précision dans le travail, puisqu'il l'image d'origine soit par un clic droit sur elle,
plus concrètement quel fut l'effet d'une étape an- est possible de modifier un élément ou d'agir soit à l'aide de l'icône dupliquer mentionné pré-
térieure. Il faut cependant faire attention, si l'on sur un aspect de l'image sans en modifier l'in- cédemment. Ce calque se nomme par défaut
applique une modification quelconque à partir tégralité. copie d'arrière plan mais il vous est possible
d'une étape à laquelle on est revenu, toutes les On obtient la fenêtre de gestion des calques de la renommer à votre convenance en double-
opérations situées entre ce moment choisi et la par le raccourci [Ctrl] + [L]. C'est l'un des plus cliquant sur son nom.
dernière image obtenue auront disparu! utiles, connaissez le par cœur. La fenêtre Cal- Comme on l'aura vu plus haut, les deux
ques possède ses propres réglages (voir Figure utilités les plus évidentes des calques sont de
Les calques 4). On trouve dans la partie supérieure de la permettre de ne pas commettre d'erreur irréver-
Il n'est pas toujours évident de saisir les fonc- fenêtre les divers modes de fusion des calques sible sur l'image originale et de pouvoir mani-
tions et l'utilité des calques, cependant lorsque et d'application du masquage , le réglage de puler un élément indépendamment des autres.
l'on se penche un peu sur leur fonctionnement l'opacité, le verrouillage des calques. On re- Cependant les calques offrent de multiples
et que l'on pratique GIMP, il semble naturel de trouve certaines actions propres à la gestion des possibilités, entre autres par leurs modes de
les utiliser tant ils permettent de travailler dans calques dans la partie inférieure de la fenêtre rendu situés dans le menu Mode. Les modes de
le détail. Le calque comme son nom l'indique dont, dupliquer, créer un nouveau calque, faire fusion font partie des fonctions impressionnan-
peut s'apparenter à la classique et palpable monter ou descendre (à l'image d'un empile- tes et déroutantes : hormis quelques uns bien
20 Linux+ 3/2009
Dossier
Traitement des photos sous Gimp
vous connaissez tout ce qu'il faut pour la réaliser. Figure 6a) créez un nouveau calque puis teignez
Au travail ! le en noir (outils pot de peinture de la boîte
à outils, la sélection de couleur se fait en cliquant
Expérimentations sur l'icône représentant deux couleurs dans des
Dans le but de créer une base de travail à partir rectangles). Ce calque est disposé en deuxième
d'une photographie, voici quelques formules position. Si les traits sont trop intenses, il est
que nous utilisons fréquemment. Toutes nos possible de leur donner un peu de légèreté en
Figure 5. Les modes de fusion
manipulations impliquent qu'un calque de copie baissant l'opacité du calque du dessin. Dans ce
prévisibles dans certains contextes (Multiplier, de l'image originale a été fait et que c'est sur lui cas de figure, le mode de rendu du dessin pourra
Ecran, Différence, couleur, Diviser..) les calculs que l'on agit. Appliquez un flou (Filtres>Flou) être Multiplier. Créez également un nouveau
effectués sont trop complexes pour être décrits. avant d'effectuer une Détection de bord (l'appli- calque et appliquez un Filtre>Artistique>Tisser.
Il faut les prendre comme des sources d'inspira- cation du flou avant cette étape permet d'élimi- Modifiez l'opacité des divers calques si besoin et
tions hasardeuses (voir Figure 5). ner les petits éléments qui lors d'une détection les modes de rendu du premier calque de la pile.
Les modes de rendu modifient l'apparence de bord peuvent parasiter l'image). Appliquez En appliquant le mode Lumière dure, les traits
de l'image finale en agissant sur les effets pro- ensuite une détection de bord dont l'algorithme ressortent et le grain du papier également, pour
duits par le type de superposition des calques. est à définir selon l'épaisseur du trait choisi (La- un résultat brut donnant du dynamisme au trait
Contrairement aux filtres, on ne peut appliquer place donne généralement des liserais plus fins (voir Figure 6b). Pour obtenir un effet de craie
qu'un mode de rendu par calque, cependant il que Sobel par exemple). À cet instant l'image sèche, il nous a suffit d'appliquer un mode de
peut modifier complètement l'apparence de apparaît comme une sorte de négatif dont les rendu Lumière douce (voir Figure 6c), pour un
l'image finale. Par exemple, le mode différence, contours seraient des traits plus ou moins lu- effet de craie grasse ou estompée, le mode ap-
peut donner un résultat proche du négatif en mineux. L'étape suivante consiste à rendre ce pliqué a été Fusion de grain auquel nous avons
revanche le mode multiplier permet de faire ap- négatif positif. (Menu Couleurs puis Inverser). rajouté un flou (Menu Filtres). Regardez bien la
paraître sur l'image finale la texture des calques Cette base a les traits d'un dessin au crayon gris Figure 6d.
inférieurs sans atténuer le calque supérieur. Ce quoique encore trop nette pour être vraie.
mode de rendu est utilisé si l'on ne veut pas À partir d'une image en noir et blanc pas La peinture en noir et blanc
passer par le réglage de l'opacité. En effet, ré- trop contrastée inversez les couleurs (Menu À partir de la même photographie avec ses
duire l'opacité permet effectivement de laisser Couleurs puis Inverser) on obtient une image zones d'ombres et de lumières bien marquées, il
transparaître le calque inférieur, cependant, ce en négatif. Puis dans les filtres artistiques, ap- a été possible de s'orienter vers deux techniques
réglage aura tendance à créer un voile et à dimi- pliquez l'effet peinture à l'huile. Cette image de peinture. Tout d'abord la peinture de type goua-
nuer l'intensité des couleurs. devient alors une base pour réaliser plusieurs che, sur toile. Dans le menu Filtres>Détection
effets de dessins, comme par exemple : en ra- de bord, choisir Néon puis dans le menu Cou-
C'est bien beau mais joutant un filtre artistique tissé (flou de 7 en x et leurs choisissez Inverser avant d'appliquer un
ça sert à quoi ? y,193 pour azimuth, 54 d'élévation, ainsi qu'une flou (Filtres>Flou>...). Si la photo est en cou-
Et bien voilà, tout l'art de Gimp est une combi- profondeur de 5. On obtient un effet craie sur leur vous pouvez l'utiliser tout de même en
natoire de petites actions que vous aurez à or- canson. En revanche, si cette photographie en désaturant pour obtenir un noir et blanc (Menu
donner. Regardez bien la Figure 5a, parce que noir et blanc est bien contrastée, il est possible Couleurs>Désaturer). Vous obtenez une image
en peu de manipulations d'obtenir une base de permettant de s'orienter vers la peinture noire
craie blanche sur fond noir en augmentant les mais également sur l'encre de chine. Créez
contrastes (Menu Couleurs puis luminosité- ensuite 3 calques (un blanc, un gris et un beige :
contraste et enfin une détection de bord Con- choisissez la couleur de premier plan puis
tours à masque assez faible. cliquez sur l'icône de nouveau calque et Choi-
sissez Couleur de Premier plan dans la fenêtre.
Des techniques Recommencez pour chaque couleur). Puis
de craie par les modes Menu Filtre>Artistique, appliquer l'effet Tisser
de rendu des calques avec peu d'élévation. Le réglage de l'opacité des
Figure 5a. Calque de fond dupliqué, puis copie En utilisant cette même base, il est possible d'af- calques a été fait selon l'aperçu. Ici le mode de
passée dans Couleurs>Inversion de valeur en Mode finer la texture puis par la sélection d'un mode de rendu est Multiplier.
Diviser. Par dessus un simple calque coloré en rendu du calque de préciser la technique de des- Pour un effet d'aquarelle en noir et blanc,
jaune clair auquel on a appliqué l'effet Tisser sin à laquelle on veut faire référence. Ici, (voir augmentez en premier lieu les contrastes de
www.lpmagazine.org 21
Dossier
Traitement des photos sous Gimp
Fusain estompé et Gravure Figure 7. Variantes appliquées (a, b) pour la peinture en noir et blanc
Sur une photographie de sentier bucolique, nous
avons obtenu un dessin qui pourrait être du fu-
sain. Après une détection des bords (menu Fil-
tres) dont l'algorithme choisi ici est Néon, (vous
pouvez également jouer sur le niveau d'entrée
de couleurs dans le menu Couleurs>Niveaux).
Dupliquez ce calque en y appliquant un flou.
Puis passez-le en mode Multiplier. Il aurait Figure 8. Ne jamais se laisser surprendre négativement, toujours tout positiver, même si vous obtenez un
été possible également d'inverser les couleurs négatif
22 Linux+ 3/2009
Dossier
Traitement des photos sous Gimp
Entre Bande
À propos de l'auteur dessinée et croquis Sur le réseau
Pour créer, à partir d'une photographie un des-
Formateur, graphiste et consultant de- sin au crayon à papier, nous avons eu quelques • Site officiel de Gimp :
puis 1999, Cédric GEMY contribue régul- exemples. Mais il est encore possible de trouver http://www.gimp.org,
ièrement aux logiciels de PAO libre. des variations. • Base des extensions à Gimp, dans la-
Il est en particulier administrateur du ma- Ici, appliquez une détection des bords La- quelle vous trouverez plusieurs scripts
nuel utilisateur d'Inkscape et a travaillé place de quantité de 2, en Mode Etaler. Puis, transformant mes photos dans l'esprit
avec Scribus sur l'interface et l'impor- inverser les couleurs (dans menu Couleurs> de cet article :
tation d'image. Il a actuellement publié Inverser). Il est possible de modifier le niveau http://registry.gimp.org,
deux livres sur Gimp dont l'un est libre de gris (Image>Mode>Niveaux de gris). Créez • Site de l'auteur, graphiste et formateur
et l'autre publié aux éditions Eyrolles un calque blanc en arrière plan. Le mode du en logiciels de graphisme libres :
ainsi qu'un ouvrage sur Inkscape et mul- calque est Normal mais l'opacité du premier http://www.cgemy.com.
ticonférencier au LibreGraphicsMeeting calque est diminuée. Allez plus spécifiquement :
et coordinateur du thème graphisme Pour orienter l'ensemble vers l'esprit bande http://cgemy.com/index.php/Articles/
aux rencontres Mondiales du Logiciel dessinée, utilisez à nouveau une détection des • Site de Thierry Laroche, photographe.
Libre 2009 et vient de s'associer avec bords de type Contour, algorithme Sobel. Puis, Le droit d'auteur est une forme de
différents contributeurs pour fournir des inversez les couleurs. Dans le menu Filtres> licence, merci de le respecter et de ne
services de personnalisation sous l'ap- Artistiques, utilisez Bande-Dessinée. Le calque pas reproduire les photos sans autori-
pellation CreationLibre. peut être dupliqué puis mis en mode multiplier. sation. :
Après plusieurs manipulations, il est facile http://lapromenadedugraindesable.blo
Pour ajouter de la sélection, choisissez de réaliser que les fonctionnalité de base com- gspot.com/.
le deuxième mode du lasso ou maintenez la me les filtres, les calques, sont indispensables
touche [Maj] enfoncée pendant que vous tra- tant ils sont cités. Ils permettent une infinité de vous vous laissez aller à faire des variations sur
cez le contour de la sélection que vous voulez possibilités que seule l'expérimentation permet cette base; soit vous savez au préalable ce que
ajouter. de parcourir. Gimp fit partie de ces outils qui vous voulez faire de l'image et comment. Gé-
Ici a été appliqué un flou sur la ligne de a peu d'assistant, c'est même un reproche néralement, avec la pratique c'est le cumul des
raccord entre le premier et le deuxième plan que lui font beaucoup de personnes. Mais la deux qui vous apportera satisfaction. Ah oui
à l'aide de la goutte d'eau, mais vous pouvez contrepartie, c'est une entière liberté d'agir, un défit, la même chose avec Krita ou Blender.
aussi faire un effet de barbouillage à l'aide du et n'est-ce pas à cela que sert un logiciel libre ? Chiche !
doigt, toujours dans la boîte à outils. Évidemment, vous avez deux possibilités : soit
PUBLICITÉ
www.lpmagazine.org 23
Dossier
Photos sous Phatch
Traitez gratuitement
vos photos sous Phatch
Cédric Gémy
Phatch est un logiciel de graphisme libre. Sa grande force est d'être facile
d'utilisation et d'effectuer pas moins de 35 différentes actions sur vos photos.
Son interface simple et efficace permet un gain de temps considérable pour
traiter des images en masse.
P
hatch est une application plate-forme qui tire son
linux@software.com.pl
24 Linux+ 3/2009
Dossier
Photos sous Phatch
www.lpmagazine.org 25
Dossier
Photos sous Phatch
chive à télécharger et à décompresser : puis nous allons utiliser trois fonctions : Redimen-
simplement dans un terminal, placez vous dans sionner, Ombrage et Sauvegarder. EXIF, IPTC
le dossier décompressé puis tapez python
setup.py install comme de coutume avec • Organisez votre travail en créant un dos- L'EXIF (Exchangeable image file format)
ce langage. Ensuite, vous devrez être en me- sier et en y plaçant une image qui servira et IPTC (International Press Telecommu-
sure d'exécuter Phatch en tapant phatch dans le à faire un test. Cela évitera éventuellement nications Council Information Interchange
terminal ou d'y accéder dans votre menu d'ap- d'abîmer votre photo en cas d'erreur. Model) sont des formats connus pour auto-
plication, sous-menu graphisme peut être sous • Cliquez sur l'action Redimensionner, puis sur riser la mémorisation d'un grand nombre de
l'intitulé Photo Batch Processor. Appliquer. Vous verrez alors tous les para- données non visuelles à l'intérieur des ima-
Pour WINDOWS autant dire que ce n'est mètres possibles qu'offre cette action, lar- ges. Ces données informatives, par ailleurs
pas aussi simple d'installer Phatch. Vous devez geur, hauteur, résolution, etc. C'est de cette appelées métadonnées, permettent de
télécharger Python (http://python.org/), wxPython manière que vous allez pouvoir paramétrer renseigner l'utilisateur sur les conditions de
(http://www.wxpython.org/download.php), à votre guise et en détail l'action en question. la prise de vue de manière à appliquer des
Python Imaging Library (http://www.python Nous avons dit combien ? 200 px de large. traitements en studio après-coup. De nom-
ware.com/products/pil/) et les extensions Python Cliquez sur le 50 dans le champ largeur, breux formats d'images acceptent l'EXIF
Win32 (http://python.net/crew/mhammond/win32/ remplissez le par 200, puis à côté, dérouler dont bien sûr le JPEG et le RAW, les deux
Downloads.html). Vous aller avoir besoin d'un % pour choisir px. Vérifiez que Conserver formats les plus utilisés en photo même si le
logiciel d'archivage comme 7zip pour décom- les proportions indique bien vrai pour éviter RAW est plus un terme générique qui ne fait
presser l'archive tar.gz. PourMac OS X c'est la les déformations. La hauteur sera donc ainsi référence à aucun standard de fait.
même procédure sauf qu'il ne faut pas installer automatiquement adaptée en fonction des
python Win32 Extensions. En passant par mac- proportions de la photo d'origine. les images alors à quoi bon provoquer des
ports, vous pourrez éventuellement avoir des fa- • Nous allons ensuite appliquer la seconde actions si ce n'est ni pour les voir, ni les
cilités d'installation de python et de ses différents action : Ombre. Pour ce faire cliquez à nou- enregistrer (à moins que vous ne souhai-
modules. veau sur le +, la liste d'actions s'ouvre à nou- tiez tester la résistance de votre ordinateur
veau et de la même manière vous pouvez et de doubler votre facture d'électricité). Donc
Utilisation de Phatch appliquer le second traitement. Les para- la sauvegarde est l'action nécessaire en fin
Une erreur courante est de penser que Phatch mètres de l'ombrage vont apparaître dans de liste d'actions qui permet à Phatch d'enre-
ouvre les images ou les photos directement. Le notre liste d'actions en dessous de redimen- gistrer les modifications et de vous permet-
logiciel permet avant tout de créer des listes d'ac- sionner. Vous pouvez laisser les paramètres tre de les utiliser par la suite.
tions. Les images sont traitées sans être ouver- par défaut, nous décrirons ensuite. Observez
tes ce qui décharge le serveur graphique d'avoir cependant qu'il s'agit surtout de gérer la po- L'action Sauvegarder est considérée comme
à gérer leur affichage et accélère d'autant la sition de l'ombre par rapport à l'image ainsi une action à part entière, mais elle a la parti-
rapidité du traitement. En contrepartie, il est que sa couleur. cularité de devoir être nécessairement présente.
indispensable de savoir auparavant les effets • Lorsque vous avez terminé votre liste d'ac- Cette action n'est pas appliquée automatique-
que l'on souhaite appliquer sur les photos ou tions et que vous souhaitez l'appliquer, sou- ment puisqu'il est important de déterminer
les images, éventuellement en faisant quel- venez vous d'ajouter l'action Sauvegarder. comment les fichiers résultants seront nommés
ques tests avant de l'appliquer à toute votre Si vous avez oublié l'action sauvegarder, et dans quel dossier ils seront ajoutés. Il nous
bibliothèque de plusieurs milliers de photos. un message le signalera très simplement semble donc important de nous attarder quel-
Car n'oubliez pas que Phatch permet de sauver (voir Figure 2). En effet, nous avons déjà ques instants sur cette action.
et ouvrir les listes d'actions, lesquelles s'ap- mentionné que Phatch n'ouvre ni n'affiche Parmi ces options, vous trouverez :
pliqueront à autant de photos que vous le souhai-
tez. Cela peut sembler abstrait mais une fois le
fonctionnement du logiciel compris, son utili-
sation devient un jeu d'enfant.
Lorsque vous lancez Phatch, il démarre
par défaut avec une liste vide, laquelle montre
la Figure 1. C'est indiqué en gros, vous ne pou-
vez pas vous tromper, il suffit de cliquer sur le
bouton + pour faire apparaître la liste d'actions
disponibles. Dans cette nouvelle fenêtre le lo-
giciel montre ses capacités (arrondir, ombre,
redimensionner, sauvegarder, etc.). Si vous
cliquez sur le volet déroulant en haut, où est
marqué sélectionner, vous verrez apparaître,
en choisissant « tout », de nombreuses autres
actions possibles. Nous reviendrons sur la
description de toutes les actions plus loin dans
cet article. Pour prendre en main, rien de mieux
qu'un petit exemple. Pour illustrer notre propos, Figure 3. Le paramétrage de l'action Sauvegarder
26 Linux+ 3/2009
Dossier
Photos sous Phatch
• La possibilité de modifier le nom des fi- tes, comme la possibilité de sauver les méta- Fait intéressant : vous avez la possibilité de
chiers d'images traitées (soit en gardant le données Exif et Iptc après le traitement. Vous désactiver des actions, le temps d'un traitement.
même nom soit en passant sous un format êtes invité à ne pas cocher l'option écraser les Double cliquez simplement sur l'action en
<année><mois><jour><heure>). images, cela pourrait avoir pour conséquence question. Une croix remplacera l'icône corres-
• La possibilité intéressante de choisir le de perdre vos photos de base, celles-ci se- pondant à celle-ci et vous aurez tout le loisir de
type de format des images traitées. De raient remplacées par les images traitées, au la réactiver de la même façon ensuite. Mais si
la même manière en conservant le même cas où vous vous tromperiez de fichier ou vous souhaitez définitivement supprimer une
format que les images non traitées (option dossier. Vous pourrez toujours les supprimer action, le signe - fera votre affaire.
type), ou en les transformant en un panel manuellement par la suite.
de format (bmp, jpg, jepg, png, tif etc). Cliquez ensuite sur Lot, votre liste d'ac- Les principales actions
Phatch en gère une assez grande quantité tions est à présent appliquée, et toutes vos de Phatch
donc vous aurez le choix. images sont traitées et se trouvent dans le Commençons tout d'abord par arrondir les an-
• Dernier point, vous aurez aussi la possi- dossier indiqué lors du paramétrage de l'ac- gles de l'image.
bilité de changer (ou toujours de garder tion Sauvegarder (voir Figure 3). Définir l'en-
par défaut) la résolution des images de registrement passe par la définition du dossier Arrondir
sortie ( 72dpi, 144dpi, 300 dpi), essentiel source et du dossier de destination. Il est Par défaut, tous les coins sont affectés, avec un
si vos images se destinent à un processus possible d'écraser les images existantes. Vous rayon de 2% (en pourcentage de la largeur glo-
imprimé. Et quelques paramètres comme aurez compris que l'ordre des actions est très bale de la photo donc si elle est redimensionnée
la qualité et la taille des images jpg sont important. L'action sauvegarder se place à 200px, l'arrondi par défaut ne sera que de 4
tout aussi essentiels dans le cas d'une pu- évidemment en dernier parce que Phatch doit pixels) et la couleur d'arrière plan est blanche.
blication web permettant aux lecteurs de effectuer les autres actions avant d'enregistrer. Bien entendu, chaque valeur est susceptible
ne pas attendre des heures que votre page Aussi, ayez cela en tête si vous créez des élé- d'être modifiée. Concernant le Rayon : quatre
s'affiche. ments visuels. Par exemple si vous exécutez valeurs allant de 1 à 10 sont prédéfinies, cepen-
l'action Ajouter du texte avant de redimension- dant on peut saisir la valeur de son choix et mo-
Lorsque toutes ces actions sont ajustées à votre ner, le texte sera réduit proportionnellement ! difier l'unité si le pourcentage vous parle peu.
goût, vous pourrez exécuter la liste d'actions. L'ordre des actions n'aura pas le même effet Pour chaque coin, indépendamment, on peut
Pour cela vous trouverez dans la barre des tâches dans un sens ou dans un autre. Pour modifier choisir la forme de l'arrondi. Et oui car l'arrondi
trois petits engrenages qui correspondent à Exé- l'ordre, vous avez deux petites flèches en haut, n'est pas nécessairement arrondi : il peut aussi
cuter l'action. Une nouvelle fenêtre apparaît : dans la barre des commandes, permettant d'en être en forme carrée (c'est-à-dire non modifiée
dans un premier temps, sélectionnez la source, pousser une vers le haut ou vers le bas. par rapports aux angles normaux de la photo)
soit dossier, soit fichier(s) En général, lors d'un Un des grands plus de Phatch est de pouvoir et en forme de croix (c'est-à-dire un petit carré
test, vous choisirez fichier et il faudra alors par- sauvegarder cette liste d'actions et la nommer à l'angle tronquant l'image). Pour la couleur de
courir vos dossiers à la recherche de votre image à votre guise, pour pouvoir la reprendre et l'ap- l'arrière plan, cliquez simplement sur le chemin :
test (voir Figure 3). Ensuite, ou quand vous aurez pliquer à un nouveau lot ultérieurement. Pour vous obtiendrez une palette de couleur de type
une bonne pratique de l'outil, vous choisirez dos- cela cliquez sur Fichier>Enregistrer, choisissez roue GTK que les utilisateurs de Gimp con-
sier, cliquerez sur Parcourir le dossier et sélec- votre dossier et nommez votre liste d'actions, naissent bien. Un grand choix de couleurs sont
tionnerez celui qui contient vos images sources. l'extension sera .phatch. Fichier>Ouvrir vous prédéfini. Celles-ci peuvent aisément être mo-
Phatch vous permet de sélectionner uni- permettra évidemment de reprendre cette liste. difiées grâce à une roue chromatique et l'outil
quement les formats que vous souhaitez trai- Nous verrons ultérieurement comment réuti- pipette qui permettra de capturer n'importe
ter, cochez tous ceux que vous souhaitez. liser cette liste sans avoir à relancer Phatch quelle couleur à l'écran d'un simple clic. Si
Quelques options en dessous sont intéressan- systématiquement. vous œuvrez dans un flux web, vous aurez peut-
être une valeur hexadécimale correspondant
à une couleur de fond de page que vous pourrez
saisir dans le champ dédié.
De même comme le montre la capture
d'écran (voir Figure 4), on peut choisir la cou-
leur en rentrant les données de teinte, de satura-
tion, de valeur. Et en jouant sur les couleurs
rouge, vert et bleu. Il est possible de rentrer
directement le nom de la couleur. Pour finir
avec l'option arrondir, vous pouvez jouer sur la
transparences qui est réglée par défaut à 100%.
Mais attention ce réglage est trompeur : la trans-
parence ne semble pas s'appliquer seulement
aux arrondis, mais à l'ensemble de l'image. De
plus; une valeur de 100 indique que l'image se-
ra opaque alors qu'une valeur minimale qu'elle
sera parfaitement transparente donc invisible
Figure 4. Bords arrondis, ombre puis au passage une mise en noir et blanc et le tour est joué ! (à quoi bon appliquer tous ces effets dans ce cas).
www.lpmagazine.org 27
Dossier
Photos sous Phatch
28 Linux+ 3/2009
Dossier
Photos sous Phatch
tions. Ces actions sont classées en catégories nez un bord blanc de 2%. Si vous ne sélection-
Terminologie (ajouter un filigrane, couleurs, bordure, fichier, nez pas le bord, l'ombre risque d'être mal défi-
filtre, taille, transformer). Vous pouvez choisir nie. Enfin, ajoutez l'action Texte, modifiez selon
• CMJN : Mode colorimétrique uti- une catégorie précise ou sélectionner tous pour votre choix le contenu du texte, la police et la
lisé pour l'impression. Pratique dans voir apparaître toutes les fonctions du logiciel. taille. Il est ici en blanc, de police Déjà vu sans
Phatch puisque que Gimp est réputé, A noter que, dans toutes les catégories la fonc- Bold, d'une taille de 2cm avec une orientation
à tort, manquer de cette possibilité. tion sauvegarder est présente afin de la rappeler normale. La Figure 3 montre le résultat de cette
• Python : Langage de programmation à nos bons souvenirs. liste d'actions.
objet clair, simple d'apprentissage, très Les actions supplémentaires qu'offre
utilisé dans les logiciels de graphisme Phatch fonctionnent de la même manière que Utilisation des droplets
libre. Certains autres logiciels de des- celles qui viennent de vous être présentées. Nous venons de découvrir le fonctionnement de
sins comme Skencils sont compléte- Une fois la manipulation comprise, toutes Phatch et l'ensemble de ses possibilités. Nous
ment développés en Python. les actions fonctionnent sur le même schéma. savons créer une liste d'actions et l'exécuter pour
• RVB : Rouge, Vert, Bleu se dit des ima- Parmi les actions supplémentaires de Phatch un ensemble de photos. Mais nous restons dans
ges composées d'un mélange de ces vous y trouverez la possibilité de convertir l'obligation de lancer à chaque fois l'exécution
trois couleurs, en général prévues pour vos modes de couleurs (de RVB à CMJN par de Phatch, ce qui n'est pas le plus efficace quand
être affichées par transfert lumineux exemple très intéressant car il évite d'avoir l'on doit modifier des photos se trouvant dans des
(écrans, projection). à installer des plug-ins particulier à Gimp), Co- dossiers aux emplacements variés sur le disque
• Résolution : Chiffre déterminant la den- lorier vos photos, changer les contrastes (évi- dur. Pour simplifier cette tâche, Phatch utilise un
sité des détails sur une superficie don- demment si vous êtes persuadé que les photos système de droplet. Nous avons mentionné la
née. Cette densité est généralement se ressemblent de ce point de vue par exemple possibilité de créer un droplet comme une fonc-
redéfinie pour augmenter la qualité des si elles ont été prises dans le même contexte), tion majeure apportée par Phatch par rapport
images en impression professionnelle. appliquer des effets, des nuances de couleurs, à d'autres outils. Le droplet est une liste d'actions
• Scheme : langage de programmation changer la luminosité et bien d'autres possibi- enregistrée en tant que script sous la forme d'un
interprété directement par Gimp pour lités. Bref, il suffit alors d'essayer, de combiner fichier et représenté par une simple icône pré-
l'exécution de son type de script pour obtenir ce que vous souhaitez. sente sur le bureau. Pour appliquer un droplet,
nommé script-fu. il suffit de glisser cette icône sur un dossier
Un autre exemple contenant des images et l'ensemble du contenu
le filigrane est bien connu puisqu'il sert sou- Comme nous l'avons vu, Phatch permet de trai- se voit appliquer les actions définies dans la liste.
vent sur les sites web à marquer les photos ter un grand nombre de photos et d'y appliquer Surtout, un droplet lancé applique les actions
de manière à rendre leur exploitation plus des actions et des paramètres. Voici un autre enregistrées sans démarrer l'interface graphique
difficile par des inconnus peu scrupuleux (voir exemple très simple: pour mettre la photogra- du logiciel ce qui permet d'alléger d'autant le tra-
Figure 7). phie en noir et blanc, ajoutez l'action nuance de vail et d'accélérer le traitement. Vous y gagnerez
gris et laissez la quantité par défaut (100). En- donc à deux points de vue. Phatch permet l'utili-
Autres fonctions suite, ajoutez l'action Arrondir : chaque coin est sation de deux sortes de droplet. Soit Phatch se
Les fonctions expliquées précédemment sont arrondi, puis sélectionnez un arrière plan blanc. réduit en une image flottante qui reste au dessus
les plus couramment utilisées sous Phatch. Ces Après cette action, placez l'ombre : la couleur de toutes les fenêtres, soit l'on peut lui faire créer
fonctions principales sont celles présente dans est à choisir. Sur cet exemple, le gris est plus un fichier lié à une liste d'actions enregistrées.
le menu déroulant qui s'affiche automatique- clair que celui proposé par défaut (référence de
ment lorsque l'on clique sur le bouton +. Mais la couleur #8a7e7e). L'ombre de la photo a un Phatch réduit en droplet,
cependant il est possible d'utiliser d'autres fonc- décalage vertical et horizontal de 2%. Sélection- le premier type de droplet
Pour appliquer une liste d'actions à des photos, il
faut exécuter puis rechercher ses photos. Grâce
au droplet, après avoir défini votre liste d'actions,
vous avez la possibilité de transformer Phatch en
droplet, naviguer dans vos dossiers pour trouver
vos photos et les glisser sur le droplet pour les
transformer. Cette méthode plus visuelle, permet
de vous assurer que vous allez bien agir sur les
photos voulues et dans le cas de plusieurs dos-
siers à transformer, elle fera gagner du temps. La
première chose à faire est de créer ou charger une
liste d'actions (il n'est pas nécessaire que la liste
d'actions soit enregistrée pour utiliser ce type de
droplet). Ensuite il faut sélectionner le mode
droplet dans le menu affichage ou utiliser le rac-
courci clavier [Ctrl] + [D]. Phatch se réduit à une
Figure 6. La fenêtre de sélection de couleur offre plusieurs méthodes de sélection dont la pratique pipette, image flottante représentant le logo du logiciel.
placée sous la roue Cette image reste en continu au dessus des autres
www.lpmagazine.org 29
Dossier
Photos sous Phatch
une déjà sauvegardée. Puis sélectionnez dans vérifier, ajoutons une action. Dans le menu
À propos de l'auteur le menu fichier->exporter...->Droplet de liste déroulant des catégories d'actions se trouve
d'actions.... Il vous est alors demandé dans un transpose. Il contient l'action de conditionnal
Formateur, graphiste et consultant depuis premier temps d'enregistrer la liste d'actions, transpose.
1999, Cédric GEMY contribue régulière- comme si vous aviez fait un simple enregis- Vous pouvez maintenant retourner toutes
ment aux logiciels de PAO libres. Il est en trer sous (cette action est obligatoire pour le les photos qui ne sont pas dans le bon sens con-
particulier administrateur du manuel utilisa- fonctionnement du droplet). Puis de choisir un tenues dans un dossier sans risquer de retourner
teur d'Inkscape et a travaillé avec Scribus dossier cible pour l'enregistrement du droplet celles qui sont déjà sous le bon angle.
sur l'interface et l'importation d'image. Il a proprement dit. (le droplet aura le même nom Le peu d'extensions disponibles vient du
actuellement publié deux livres sur Gimp que la liste d'actions). Ensuite par simple glis- fait que les mainteneurs de Phatch implémen-
dont l'un est libre et l'autre publié aux sement d'un dossier ou de photos sur l'icône du tent directement dans le logiciel la plupart
éditions Eyrolles ainsi qu'un ouvrage sur droplet, le programme affiche une fenêtre de des extensions lors de la diffusion de chaque
Inkscape et multiconférencier au Libre- paramètres (voir partie sur exécuter dans l'ar- nouvelle version.
GraphicsMeeting et coordinateur du thème ticle) après validation des paramètres Phatch
graphisme aux rencontres Mondiales du s'occupe de transformer vos photos et de les Pour conclure
Logiciel Libre 2009 et vient de s'associer enregistrer selon les paramètres définis dans la Phatch sous une interface simple et efficace,
avec différents contributeurs pour fournir liste d'actions qui lui est liée. permet un gain de temps considérable pour
des services de personnalisation sous Si la liste d'actions liée au droplet est traiter des images en masse. On pourra cepen-
l'appellation CreationLibre. modifiée, le droplet se met à fonctionner en dant regretter quelques détails : il est néces-
suivant la nouvelle liste d'actions. Si le droplet saire de savoir auparavant ce que l'on souhaite
fenêtres (pour déplacer le droplet cliquez dessus est déplacé dans un autre dossier, il continue réaliser sur les photos car aucun aperçu n'est
avec le bouton gauche et glissez-le où vous a fonctionner normalement. disponible et ceci peut être considéré comme
voulez.) Vous pouvez désormais explorer vos Si le fichier de la liste d'actions liée au dro- un obstacle par certains grands débutants. De
dossiers à la recherche des photos à transformer plet est supprimé, déplacé ou a changé de nom, plus, certains paramétrages peuvent se révéler
tout en gardant Phatch visible. Désormais vous le droplet ne fonctionnera plus. complexes et demandent quelques connais-
pouvez glisser des fichiers ou des dossiers sur sances supplémentaires comme celles rela-
le droplet. Le droplet produit alors la liste Extensions tives à la résolution. De plus il semble que
d'action que vous aviez chargée auparavant Les développeurs Python ont la possibilité de Phatch ne puisse pas agir sur ses propres
dans Phatch. créer des plugins afin d’enrichir l’offre des ac- ajouts, par exemple, si vous ajoutez un texte,
Il est possible d'avoir plusieurs droplets tions déjà disponibles. Certaines pourront être vous ne pourrez ombrer spécifiquement ce
Phatch en même temps, ouvrez plusieurs ins- intégrées sur les prochaines versions. Nous texte. Cependant une fois le logiciel pris en
tances de Phatch, chargez vos listes d'actions et ne verrons pas comment écrire des exten- main et le fonctionnement compris, les uti-
transformez les en droplet. Il est indiqué sur le sions dans cet article mais comment ajouter lisateurs y trouveront un outil véritablement
devant de l'image du droplet le nom de la liste celle que vous pourrez trouver. Les exten- utile et avantageux qui leur évitera d'être
d'actions qu'il utilise. sions se présentent sous la forme d'un fichier confrontés à des scripts compliqués à la Gimp
Mon_extensions.py. La première chose a faire qui demandent une implication beaucoup plus
Le second type de droplet est de télécharger une extension à partir d'in- grande de la part de l'utilisateur.
Le second type de droplet possible avec phatch ternet. Pour cela, on se rend sur le site de la Ont contribué à cet article sous la direction
se présente comme un simple fichier dans un documentation officielle dans la rubrique de Cédric Gémy : Kevin, Emeline, Maëlan,
dossier qui vous permettra par sélection-> extensions (http://photobatch.wikidot.com/ex- Marion, Jessica et Xavier. Merci à tous pour
glisser de réaliser une liste de tâches enre- tensions). Au moment d'écrire ces lignes, une vos efforts et d'avoir fait naître cet article.
gistrée auparavant avec l'interface graphique seule extension est disponible. Il s'agit du con-
de Phatch. Pour réaliser la liste d'actions, il ditionnal transpose, cette extension permet de
suffit de glisser un dossier ou une photo sur faire des rotations d'images si la hauteur est
l'icône, Phatch n'a plus besoin d'être ouvert. plus grande que la largeur (utile quand l'on a Sur Internet
Dans un premier temps il va falloir créer une pris des photos en mettant son appareil à la
• http://photobatch.stani.be/ – site officiel
liste des actions à effectuer, ou en reprendre verticale). Nous allons expliquer comment im-
de Phatch, pour se tenir à jour des évo-
plémenter une extension à travers l'exemple de
lutions, avoir accès à la documentation
celle-ci. La première chose à faire est de télé-
ou au téléchargement
charger l'extension. Dans cet exemple, j'ai en-
• http://python.org/ – le minimum pour
registré le fichier dans mon dossier personnel.
faire tourner Phatch se trouve là.
Maintenant il va falloir copier ce fichier dans
• http://www.river-valley.tv/conferences/
le dossier actions de Phatch. Nous allons pas-
lgm2008/media/0101-Stani/ – Démons-
ser par un terminal de commande mais vous
tration de Phatch lors du Libre Graphics
pourriez très bien le réaliser à l'aide votre ex-
Meeting 2008
plorateur de document. cp ~/Bureau/condi-
• http://www.creationlibre.net/batch – In-
tionaltranspose.py ~/.phatch/actions/.
formations complémentaires et exem-
Si tout s'est bien passé, l'extension est implé-
ples d'utilisation et d'implémentations
Figure 7. L'effet simulant le filigrane mentée dans Phatch. Lançons Phatch pour
30 Linux+ 3/2009
Focus
Noms de domaine
Le fonctionnement
des noms de domaine
Aymeric Lagier
Le choix du nom de domaine s'avère parfois déterminant dans le business ou pour
une entreprise. Pourquoi les noms de domaine ont-ils toujours le vent en poupe?
Comment ne pas se tromper dans le choix et comment bien protéger le nom de
domaine? Toutes les réponses dans cet article.
L
e nom de domaine est le nom permettant d'iden-
linux@software.com.pl
tifier un site web sur la toile. Comme vous le Cet article explique...
savez sûrement un site web est stocké sur un
serveur (machine physique) relié à internet. Le fonctionnement des noms de domaines.
Cette machine est identifiée sur internet par son adresse IP
(Internet Protocol). Pour rappel une adresse IP est codée sur Les différentes extensions
32bits et se représente sous la forme (a.b.c.d où a, b, c, d sont Il faut différencier 2 types de noms de domaine :
des nombres compris entre 0 et 255) par exemple l'adresse
IP du site de Linux+ (http://www.lpmagazine.org) a pour IP • les domaines de premier niveau géographiques (ou
208.101.53.76. ccTLD en anglais pour Country Code Top-Level Do-
Imaginez devoir retenir l'adresse IP de tous vos sites main). Ces noms de domaine sont limités à 2 caractères
préférés, impossible! Pour cela nous avons le protocole DNS et représentent un pays, par exemple .fr pour la France
(Domain Name System) qui fait correspondre une adresse IP (voir le tableau 1 pour une liste détaillée).
et un nom de domaine. En résumé lorsque vous tapez http: • les domaines de premier niveau génériques (ou gTLD
//www.lpmagazine.org vous interrogez en réalité un serveur en anglais pour Top-Level Domain). Ces domaines re-
d'adresse IP 208.101.53.76. groupent des sites internet traitant de mêmes domaines,
Le nom de domaine est également utilisé dans les adres- par exemple .gov pour les sites gouvernementaux (voir
ses email, lorsque que vous louez un nom de domaine, vous le Tableau 2 pour une liste détaillée).
pouvez lui associer des adresses email. Prenons l'exemple du
domaine linux.fr, les adresses email associées seront donc du Vous ne pouvez pas mettre tous les caractères dans un nom
format nom@linux.fr. Nous parlerons dans ce cas de DNS de domaine, vous devez respecter un format spécifique. Les
MX (Mail eXchange). seuls caractères utilisés sont les lettres de l'alphabet (a à z),
32 Linux+ 3/2009
Focus
Noms de domaine
à un certain nombre d’acteurs de posséder leurs Aujourd’hui, la plupart des entreprises fran-
Ce qu'il faut savoir... propres noms de domaine et le développement çaises possèdent un .fr. Ainsi, la totalité des
de nouvelles technologies (comme l’Internet des valeurs du CAC 40 et 69 % des plus grandes en-
Cet article ne requiert aucune connais- objets par exemple). treprises françaises ont enregistré leurs noms en
sance. Avec une croissance nette de 36 % sur .fr. L’enregistrement d’un nom de domaine en .fr
2007-2008, l’extension .fr, gérée par l’AFNIC coûte en moyenne 22.5 euros HT/an, avec un prix
les chiffres de 0 à 9 ainsi que le tiret (-). Le nom – Association française pour le nommage inter- en baisse de 13 % sur un an. Quand aux montants
de domaine ne peut également pas dépasser 72 net en coopération –se porte bien. sur le second marché, c'est-à-dire la revente de
caractères. Vous ne pouvez également pas dis- Cette extension a d’abord connu un dévelop- noms de domaine, ils affichent des prix largement
poser du nom de domaine que vous souhaitez. pement relativement lent par rapport à d’autres supérieurs : le montant moyen d’une transaction
Comme vous vous en doutez sûrement, un nom extensions, du fait de règles d’attribution mettant d’un .fr s’élevait à 2 547 dollars en 2007 selon
de domaine doit être unique sinon il y aurait l’accent sur l’identification des titulaires et le les chiffres de la place de marché Sedo. A titre
des conflits. L'organisme chargé de la gestion « droit au nom ». Mais avec l’assouplissement d’exemple, le plus élevé sur la période janvier-
des noms de domaine est l'ICANN (Internet des procédures en mai 2004 –suppression de août 2008 fut Voitures.fr, cédé 78 935 dollars.
Corporation for Assigned Names and Numbers), l’obligation de prouver des droits sur un nom
chaque nom de domaine est enregistré chez eux. pour pouvoir l’enregistrer –puis l’ouverture aux WHOIS
Pour les noms de domaine de premier niveau particuliers en juin 2006, elle rattrape aujourd’hui Il existe un outil de recherche permettant d'ob-
géographiques, l'ICANN délègue l'attribution son retard, comme l’attestent les 1 342 845 noms tenir des informations sur un nom de domaine.
des noms de domaine à d'autres organisations na- de domaines sous .fr recensés en février 2009. Elles peuvent avoir plusieurs utilités mais la
tionales. L'AFNIC (Association française pour le En outre, avec chaque année plus de 300 000 principale est de connaître le titulaire d'un nom de
nommage Internet en coopération) ne gere pas la nouveaux noms de domaine en .fr déposés et un domaine pour ensuite le racheter. Pour consulter
vente des .fr, re et .tf, ce sont les bureaux d’enre- taux de renouvellement de 84 %, l’extension .fr le WHOIS d'un site vous pouvez vous rendre sur
gistrement qui exercent ces fonctions. représente plus de 50 % de la croissance nette le site http://www.cnil.fr/index.php?id=273 et en-
de l’ensemble du marché. Ces chiffres prouvent trer le nom de domaine dont vous souhaitez avoir
Détails sur un marché en pleine le phénomène de préférence dont bénéficie en les informations. Le service WHOIS est totale-
expansion France le .fr par rapport aux autres extensions. ment publique, certaines informations comme le
Avec près de 76 millions de noms de domaine
Tableau 1. Liste des principaux noms de domaine de premier niveau géographiques
déposés, le marché mondial des noms de do-
maine est dominé par le .com. Loin derrière, trois extensions pays extensions pays
extensions affichent entre 11.5 et 12 millions de .eu Europe .pl Pologne
noms enregistrés, à savoir des extensions essen- .at Autriche .com.pl Pologne
tiellement nationales, très bien placées, en raison .co.at Autriche .com.pt Portugal
de conditions d’enregistrements particulièrement .be Belgique .pt Portugal
libérales et d’un marché intérieur très actif : le
.bg Bulgarie .ro Roumanie
.de (Allemagne, 12 millions), le .cn (Chine, 11
.com.cy Chypre .ru Russie
millions) et le .uk (Royaume Uni, 6 millions).
Le .fr arrive lui en seizième position, avec 1.3 .cz République tchèque .rs Serbie
millions de noms de domaine enregistrés. .dk Danemark .sk Slovaquie
Le marché français des noms de domaine, .de Allemagne .si Slovenie
lui, se porte bien, comme en atteste son taux de .ee Estonie .es Espagne
croissance de l’ordre de 20 % sur 2007-2008.
.fi Finlande .com.es Espagne
Près de 30 % des noms de domaine déposés dans
.fr France .se Suède
l’hexagone sont en .fr, contre 47 % environ pour
le .com dont la part de marché s’effrite, avec une .gr Grèce .ch Suisse
baisse de 1.4 % sur une année contre une hausse .hu Hongrie .ua Ukraine
de près de 4 points pour le .fr. Derrière, viennent .co.hu Hongrie .co.uk Royaume-Unie
ensuite le .net (7.7 % du marché français), le .eu .is Islande .com.br Brésil
(5.5 %), le .org (5.2 %), le .info ( 3.6 %) et le .biz .ie Irelande .ca Canada
(1.4 %).
.it Italie .us Etats-Unis
Même si pris dans son ensemble, le marché
.lv Lettonie .cn China
français des noms de domaines semble relative-
ment moins développé par rapport à d’autres .li Liechtenstein .hk Hong Kong
pays, la tendance actuelle semble être à une forte .lt Lituanie .in Inde
dynamique dans les prochaines années. En effet, .lu Luxembourg .co.in Inde
d’ici peu, le marché mondial des noms de do- .com.mt Malte .co.il Israël
maine va connaître des mutations importantes : la
.me Monténégro .jp Japon
création de nouvelles extensions génériques pré-
.nl Pays-bas .tw Taiwan
vues par l’Icann – l’organisme chargé d’allouer
les espaces internet - qui devraient permettre .no Norvège .com.tw Taiwan
www.lpmagazine.org 33
Focus
Noms de domaine
[whois.nic.fr] dom-nb: 36
%% source: FRNIC
%% This is the AFNIC Whois server.
%% registrar: eMARKMONITOR Inc. dba MARKMONITOR
%% Rights restricted by copyright. type: Isp Option 1
%% See http://www.afnic.fr/afnic/web/mentions-legales- address: Emerald Tech Center
whois_en address: 391 N. Ancestor Place
%% address: ID 83704 BOISE
%% Use '-h' option to obtain more information about country: US
this service. phone: +1 208 389 5740
%% fax-no: +1 208 389 5771
%% [128.121.95.55 REQUEST] >> google.fr e-mail: ccops@markmonitor.com
%% website: http://www.markmonitor.com
%% RL Net [##########] - RL IP [####......] liste-r: N
%% registered: 10/01/2002
source: FRNIC
domain: google.fr
identified: N role: MARKMONITOR CCOPS
ref-id: [INFORMATION NOT AVAILABLE] address: MarkMonitor
holder: GOOGLE INC address: 10400, Overland Road Pmb 155
address: 54-56, avenue Hoche address: 83709 Boise
address: 75017 Paris address: US
country: FR e-mail: ccops@markmonitor.com
phone: +33 6 50 33 00 10 admin-c: MC239-FRNIC
e-mail: dns-admin@google.com tech-c: MC239-FRNIC
admin-c: TT599-FRNIC nic-hdl: NA25-FRNIC
tech-c: NA25-FRNIC mnt-by: OLIVIERLEMARCHAND
zone-c: NFC1-FRNIC changed: 13/04/2006 ccops@markmonitor.com
nsl-id: NSL4386-FRNIC source: FRNIC
liste-r: N
mnt-by: FR-NIC-MNT person: Tu Tsao
mnt-lower: FR-NIC-MNT address: Google France
registrar: eMARKMONITOR Inc. dba MARKMONITOR address: 38, avenue de l'Opera
anniversary: 06/01 address: 75002 Paris
created: 27/07/2000 country: FR
last-update: 12/06/2008 phone: +33 6 50 33 00 10
status: ACTIVE e-mail: dns-admin@google.com
source: FRNIC liste-r: N
nic-hdl: TT599-FRNIC
ns-list: NSL4386-FRNIC mnt-by: OLIVIERLEMARCHAND
nserver: ns1.google.com changed: 24/02/2009 ccops@markmonitor.com
nserver: ns2.google.com source: FRNIC
nserver: ns3.google.com
nserver: ns4.google.com
nom, le numéro de téléphone peuvent donc gêner page il vous est possible de masque d'un clique • Serveurs DNS (dans la base Internic),
à la protection de la vie privée. La visibilité de votre nom, votre adresse et votre téléphone/fax. • Date de dernière modification,
l'adresse email dans le WHOIS peut poser des Exemple d'informations disponibles : • Adresse du propriétaire du nom de do-
problèmes de spamming (envoi de courriers maine :
indésirables). Pour remédier à ce problème, les • Version du serveur Whois, – Votre adresse, email, téléphone et
registrars (site web où vous louez votre nom • Nom de domaine – Exemple (google.com), autres informations personnelles,
de domaine) proposent des outils permettant de • Registrar (organisme s'occupant de la ges- – Utile si vous êtes intéressé par un nom
masquer certaines informations pour préserver tion de nom de domaine) – Organisme ayant de domaine déjà pris par quelqu'un
votre vie privée. Prenons l'exemple d'OVH, dans vendu le nom de domaine (OVH, Amen, d'autre. Vous pouvez ainsi contacter
le panneau d'administration de votre nom de do- etc...), son propriétaire,
maine, vous avez une option Masquer le whois • URL du serveur Whois de ce registrar, – Adresse de l'administrateur du nom de
dans la partie Domaine & DNS.Une fois sur la • URL du site du registrar, domaine,
34 Linux+ 3/2009
Focus
Noms de domaine
• Adresse du contact technique du nom de Certains sites proposent des noms de do- des fichiers .htaccess pour éviter le duplicate
domaine, maine gratuits, certes ils ne seront pas en .fr ou content pour les navigateurs.
• Date de modification, création, et expiration .com mais plutôt en .fr.st par exemple. Ce type Attention également au cybersquatting,
du nom de domaine – Quand devez-vous re- de service peut être intéressant si vous n'avez technique consistant à acheter un nom de do-
nouveller votre abonnement pour votre nom pas beaucoup de moyens mais en contrepartie maine d'une marque ou autre dans le but de
de domaine, votre site comportera de la publicité souvent le revendre bien plus cher que le tarif habituel
• Serveurs DNS (dans la base du registrar) envahissante ce qui peut vous nuire. En effet d'un nom de domaine (environ 7euros par an).
– Adresse permettant de faire le lien entre les visiteurs préfèrent de loin les sites sans pu- Il existe actuellement une jurisprudence contre le
votre hébergement et votre nom de domaine. blicité. Pour un site professionnel préférez donc cybersquatting, ce qui n'était pas le cas il y a quel-
un nom de domaine payant. ques années. Sachez tout de même que : Le pro-
Source : AFNIC. Il est maintenant temps d'acheter et de confi- priétaire d'une marque qui a toléré cinq ans l'usage
Voici par exemple la sortie pour le nom de gurer votre nom de domaine. Attention avoir un d'une marque identique ou proche de la sienne ne
domaine de google.fr (voir Listing 1). nom de domaine ne signifie pas avoir un espace peut plus agir en contrefaçon.
sur internet. Avant de commander votre nom de Pour information, le nom de domaine vodka.
Acquérir un nom de domaine domaine il faut que vous possédiez un espace com a été acheté par un milliardaire russe pro-
Avant d'acheter un nom de domaine, il faut choi- web. Vous pouvez choisir n'importe quel regis- ducteur de Vodka pour la modique somme de 3
sir quel nom de domaine vous souhaitez. Il faut trar, le processus reste le même. Sachez tout de millions de dollars.
savoir que votre nom de domaine aura un rôle très même qu'un nom de domaine ne peut être acheté
important sur vos potentiels visiteurs. Votre nom que pour une durée comprise entre 1 et 10 ans. Conclusion
de domaine doit donc avoir un rapport avec le Suivez simplement la procédure décrite par le re- Vous avez découvert à travers cet article le fonc-
sujet de votre site. Les experts du référencement gistrar. Une fois que vous avez accès au panneau tionnement d'un nom de domaine. Comment
affirment que le nom de domaine joue sur 30% d'administration de votre nom de domaine, il faut bien le choisir et comment le protéger. Si vous
du référencement naturel de votre site sur les le relier à votre hébergeur. Pour cela renseignez souhaitez ne faire qu'un petit site personnel, il
moteurs de recherche. Prenez donc de préférence vous auprès de votre hébergeur pour obtenir les 2 n'est évidemment pas obligatoire d'acheter tous
contenant un ou deux mots-clés. Par exemple il adresses DNS nécessaires. Ces 2 adresses doivent les noms de domaine en rapport avec le votre
préférable de choisir programme-tv.fr que my- être renseignées dans l'espace d'administration du car la concurrence sera très faible. Au contraire
website.fr pour un site proposant le programme nom de domaine. Après un délai d'environ 24 pour un site professionnel, n'attendez pas que
tv. Votre nom de domaine ne doit également pas heures, votre site web sera disponible via votre le site soit un succès pour acheter les variantes,
être trop long (environ 2 mots) sinon vos visiteurs nom de domaine. des petits malins y auront sûrement pensé avant
ne retiendront pas le nom de domaine de votre vous. Pour le choix, la première chose à prendre
site et ne reviendront sans doute pas. Concernant Protéger votre nom de domaine en compte est de prendre un nom de domaine
l'extension maintenant, éviter les extensions non Lorsque vous avez un nom de domaine, prévoyez en rapport avec le sujet de votre site.
communes dans votre pays. Par exemple un toutes les variantes/erreurs pour le nom de do-
internaute lambda français à l'habitude de taper maine, par exemple, si votre domaine est auto-
des noms de domaine en .fr ou en .com, il est mobile.com, achetez également automobiles.com,
beaucoup moins habitué au .info, .org, .biz. Faci- otomobile.com et ce dès le lancement de vo- À propos des auteurs
litez donc au maximum la mémorisation de votre tre site. Imaginez que votre site connaisse un
nom de domaine par les internautes. Dans l'esprit succès énorme, votre concurrent peut acheter Aymeric Lagier est étudiant à l'ESI – Ecole
des internautes, le .fr leur apporte une certaine automobiles.com et il récupérera tous les visi- Supérieure d'informatique – SUPINFO.
confiance. Le .com aura par contre une meilleur teurs souhaitant visiter votre site mais ayant fait Il développe en PHP depuis plus de 4 ans
portée internationale. une faute d'orthographe. Il est donc conseillé de et s'intéresse de très près aux nouvelles
Une fois votre nom de domaine choisi, il prendre votre nom de domaine au pluriel, avec technologies.
faut que vous vous assuriez qu'il soit disponible. des tirets et sans tirets et avec des fautes d'ortho- Site Web : http://www.aymericlagier.com
Pour ceci rendez-vous sur cette adresse http:// graphe. Rediriger ensuite tous les noms de do- Contact : aymeric.lagier@supinfo.com
www.123domaine.com/domainchecker.php. maine sur votre nom de domaine principal avec L’AFNIC – association française pour le
Tableau 2. Liste des principaux noms de domaine de premier niveau génériques nommage internet en coopération, c’est :
extensions Signification de l'extension extensions Signification de l'extension • une association à but non lucratif (loi de
.aero Aéronautique .jobs Jobs (ressources humaines) 1901) fondée en 1997,
.asia Asie .mil Militaire • l’organisme en charge de la gestion du
.biz Business .mobi Mobile .fr et du .re,
• un budget annuel de 7 millions d’euros,
.cat Catalan .museum Muséum
• un effectif de 50 personnes,
.com Commercial .name Nom de personne
• 1.3 million de noms de domaine,
.coop Coopérative .net Networks (réseau)
• en lien avec 950 bureaux d’enregistre-
.edu Éducation .org Organisations ments,
.gov Gouvernement .pro Professionnel • un siège social implanté à Montigny
.info Information .tel numéro de téléphone Le Bretonneux,
.int International .travel Voyage • un site web : www.afnic.fr.
www.lpmagazine.org 35
Programmation
MPI pour Python
M
essage Passing Interface (MPI) est une
linux@software.com.pl
36 Linux+ 3/2009
Programmation
MPI pour Python
parallèle en Python est extrêmement aisé, ce Lorsque Open MPI est installé, nous pouvons
Listing 1. Hello World.
qui rend naturellement mpi4py intéressant pour passer à l'installation de mpi4py. Son installa-
l'apprentissage du calcul parallèle. D'autre part, tion requiert la présence d'une version de Python
#!/usr/bin/env python une programmation subtile en Python permet de > 2.3 qui est en général disponible avec toutes
""" conserver des performances intéressantes lors de les récentes distributions linux. Il est également
Parallel Hello World !!! l’exécution, tout en diminuant le temps consacré nécessaire d'avoir une installation du module
""" au développement. Dans le monde scientifique, python Cython (http://www.cython.org/).
from mpi4py import MPI une des applications de Python est le post-trai-
tement de données résultant de longs calculs. Si Voici l'installation de mpi4py :
nprocs = MPI.COMM_WORLD.Get_size() ces données ont elles-mêmes été parallélisées, De même que pour OpenMPI l'installation se
rank = MPI.COMM_WORLD.Get_rank() c’est-à-dire écrites sur plusieurs disques en même fait dans ~/local :
procnm = MPI.Get_processor_name() temps, une parallélisation du post-traitement peut
print ("Hello, World!! I am process être souhaitable. svn checkout http://
%d of %d on %s."%(rank, nprocs, mpi4py.googlecode.com/svn/trunk/
procnm)) Installation mpi4py-dev
Comme le module mpi4py est un emballage des cd mpi4py-dev
librairies C de MPI, son utilisation requiert tout python conf/cythonize.py
Listing 2. Utilisation des fonctions send et recv. d'abord l'installation d'une librairie C. Il existe python setup.py install --prefix=$HOME/
une diversité d'implémentation de MPI. En gé- local
#!/usr/bin/env python néral, le choix d'une implémentation dépend de
""" l'architecture sur laquelle elle va fonctionner. Ci- mpi4py est maintenant installée dans le ré-
""" dessous, nous proposons d'utiliser Open MPI, qui pertoire suivant : ~/local/lib/python2.5/
from mpi4py import MPI est parfaitement adaptée à la plupart des systèmes site-packages/mpi4py.
import sys Linux communicant via une interface Ethernet. Pour que Python trouve automatiquement
def iprint(rank,msg): En fonction de la distribution Linux, il est possi- mpi4py :
msg = "[%d] : %s\n"%(rank,msg) ble d'installer Open MPI à partir d'un paquet. Par
sys.stdout.write(msg) exemple, sous Ubuntu, la commande suivante est export PYTHONPATH=~/local/lib/
rank = MPI.COMM_WORLD.Get_rank() suffisante : python2.5/site-packages/
nprocs = MPI.COMM_WORLD.Get_size()
if rank==0: apt-get install openmpi-bin,openmpi-
data = 3.14 common,openmpi-dbg,openmpi- Le script helloworld.py (Listing 1.) présente un
MPI.COMM_WORLD.send(data, dev,openmpi-libs0 cas très simple de l'utilisation de mpi4py. Dans
dest = 1) cet example, chaque processeur affiche un Hello
elif rank==1: Installation de Open MPI World suivi d'informations qui lui sont propres.
data = MPI.COMM_WORLD.recv L'installation se fait dans ~/local : Quoique ça ne soit pas tout à fait le but,
(source = 0) mentionnons tout d'abord que le script peut
else: mkdir -p $HOME/local s'exécuter en utilisant un seul processus, com-
data = None wget http://www.open-mpi.org/ me tout autre script Python. Dans ce cas, MPI
iprint(rank,data) software/ompi/v1.2/downloads/openmpi- n'est pas explicitement utilisée.
1.2.9.tar.gz
récemment, plusieurs essais d'emballage de tar -xzf openmpi-1.2.9.tar.gz python ./helloworld.py
MPI pour le langage interprété Python ont vu cd openmpi-1.2.9
le jour. Le module le plus abouti est incontesta- ./configure --prefix=$HOME/local Si tout fonctionne bien, le programme retourne :
blement mpi4py, écrit par Lisandro Dalcin. Ce make Hello, World!! I am process 0 of 1 on mycom-
travail a fait récemment l'objet d'une thèse dé- make install puter.
fendue à l'université de Santa Fe, Argentine. Le ce qui indique bien que seul le processus
module mpi4py est actuellement soutenu par le Les répertoires suivants sont créés et remplis: zéro existe, sur un total de 1 processus. Pour
projet Scipy (Scientific Python) ce qui garantit
son développement futur. Si la structure du ~/local/bin/ Listing 3. Communication d'un object créé à
module est exemplaire, sa faiblesse principale ~/local/lib/ partir d'une classe.
est le manque de documentation. Le but de cet ~/local/include/
article est de pallier à ce manque en présentant ~/local/share/ class MyClass:
quelques exemples simples qui permettront au def __init__(self):
lecteur de se lancer sans peine dans l'utilisation Pour utiliser les exécutables dans ~/local/bin/ self.p = 1
de MPI pour Python. et les librairies dans ~/local/lib def setpower(self,p):
Quel est l'intérêt de faire du calcul parallèle self.p = p
en Python ? Une des forces du langage Python export PATH=$HOME/local/bin:$PATH def fct(self,x):
réside dans sa simplicité. Comme nous le verrons export LD_LIBRARY_PATH=$HOME/local/ return x**self.p
dans les exemples suivants, écrire un programme lib:$LD_LIBRARY_PATH
www.lpmagazine.org 37
Programmation
MPI pour Python
faire fonctionner le script sur deux processus, par mettre en mémoire le module MPI de des machines distantes reliées par une interface
on le lance via la commande mpiexec de Open mpi4py. Aux lignes (8), (9) et (10), les trois va-de communication (Ethernet par exemple). Pour
MPI. Le nombre de processus désiré est spéci- riables rank, nprocs et procnm sont initialisées configurer un réseau, reportez-vous au manuel de
fié en ligne de commande avec l'option -np : à partir de fonctions liées au module MPI. Open MPI. Lorsque vous disposez d'un réseau,
vous pouvez lancer divers processus sur diverse
mpiexec -n 2 python ./helloworld.py • Get_size() retourne le nombre de proces- machines avec la commande :
sus (nprocs) lancés par mpiexec.
et l'on obtient (l'ordre des lignes peut être in- • Get_rank() retourne le rang du processus mpiexec -n 2 -machinefile machines.mpi
versé) : courant. Le rang est un entier qui est en ./helloworld.py
quelque sorte l'identificateur du processus
Hello, World!! I am process 0 of 2 on et permet de le distinguer des autres pro- Il est important que chaque machine possède
mycomputer. cessus lancés par mpiexec. La valeur du une même installation de Open MPI et de
Hello, World!! I am process 1 of 2 on rang est donc un entier entre 0 et nprocs-1. mpi4py, de plus, il faut qu'elles aient toutes
mycomputer. • Get_processor_name() retourne le nom accès au fichier ./helloworld.py.
de la machine sur laquelle le processus est
Ici, deux processus ont été créés durant le temps exécuté. Les fonctions principales
d'exécution du script. Si la première ligne du de communication
script contient explicitement le chemin de Avec la dernière ligne, chaque processus imprime Les fonctions de communication de mpi4py sont
l'exécutable python et que le fichier est défini
les informations qui lui sont propres. Il est bien identiques à celles de MPI, ce qui permet de se
comme exécutable, il n'est pas nécessaire d'in-
sûr tout à fait possible de relancer la même com- référer à la documentation officielle de MPI. Par
clure python dans la ligne de commande. La mande en remplaçant 2 processus par un entier contre, elles sont implémentées comme métho-
ligne suivante suffit : plus grand, même si le nombre de processeurs (ou des d'un communicateur. Sans entrer dans les
de cœurs) disponibles est inférieur à cet entier. détails, un communicateur est un objet Python
mpiexec -n 2 ./helloworld.py Dans ce premier exemple, aucune commu- qui représente un réseau de communication entre
nication n'a été faite entre les différents proces- différents processus. Par défaut, lors de la mise
Pour comprendre l'exécution du script, nous seurs. Nous allons voir maintenant comment les en mémoire du module mpi4py, le communica-
pouvons parcourir le programme ligne après processus peuvent échanger des informations teur MPI.COMM_WORLD est automatiquement ini-
ligne. À la ligne (6), le programme commence entre eux. À noter : pour lancer des processus sur tialisé. Cette approche en terme d'objet présente
l'avantage de pouvoir très facilement diviser ou
Listing 4. Communication d'un object crée à partir d'une classe (suite). fusionner un réseau de communication.
Nous présenterons 2 types de fonctions de
#!/usr/bin/env python communication qui se distinguent de part leur
type de communication :
from mpi4py import MPI
import sys • Les communications point à point : un
processus échange une information avec
def iprint(rank,msg): un autre processus.
msg = "[%d] : %s\n"%(rank,msg) • Les communications collectives : plusieurs
sys.stdout.write(msg) processus échangent une ou plusieurs in-
formations.
rank = MPI.COMM_WORLD.Get_rank()
nprocs = MPI.COMM_WORLD.Get_size() Il existe un troisième type de communication,
appelé communication à sens unique (One-side
myobject=None communication ou RMA) : un processus peut
directement accéder à la mémoire d'un autre
if rank==0: processus, sans passer par une communication
point à point. Ce mode de communication est
myobject = myclass.MyClass() nouveau dans le standard MPI-2 et permet, s'il
myobject.setpower(2) est utilisé correctement, d'améliorer sensible-
ment l'échange d'informations. Nous ne l'abor-
derons cependant pas plus en détail ici.
myobject = MPI.COMM_WORLD.bcast(myobject,root=0) Ci-dessous, nous présentons un échantillon
choisi des fonctions les plus couramment utilisées.
if rank > 1:
myobject.setpower(3) Les communications point à point:
send/recv – les fonctions send et recv per-
data = myobject.fct(2) mettent la communication entre un processus
iprint(rank,data) i et un autre j. Le premier envoie des données en
utilisant la fonction send et le deuxième reçoit
38 Linux+ 3/2009
Programmation
MPI pour Python
ces données avec la fonction recv. L'exemple Dans cet exemple, c'est le processus 0 qui se alltoall – finalement, comme son nom
sendrecv.py (Listing 2) propose un exemple charge de la récupération. Pour tous les autres l'indique, avec la commande alltoall, chaque
simple d'utilisation de ces deux fonctions. processus, la variable list_of_data est instan- processus envoie une donnée à chaque autre
En exécutant la commande : ciée à la valeur None. Pour que tous les pro- processus.
cessus reçoivent la même liste list_of_data,
mpiexec -n 4 ./sendrecv.py il suffit de remplacer la commande gather par data = MPI.COMM_WORLD.alltoall(data)
allgather.
nous obtenons: allreduce – il est possible de réduire La variable data doit initialement être une
la liste précédente à un seul élément en liste. Chacun des éléments de la liste sera
[3] : None combinant les éléments entre eux avec la envoyé au processus dont le rang correspond
[0] : 3.14 fonction allreduce, qui prend comme argu- à son indice.
[1] : 3.14 ment supplémentaire une opération. Dans
[2] : None l'exemple suivant : La communication d'objets:
Dans les exemples précédents, nous n'avons
Dans cet exemple, le processus 0 envoie la va- sum_data = MPI.COMM_WORLD.allreduce(d pas vraiment précisé la nature des variables
riable data au processus 1. Pour tous les autres ata,MPI.SUM) échangées par les fonctions de communication.
processus, cette variable reste inchangée et vaut mpi4py offre l'avantage par rapport aux librai-
None. Le réseau de communication est le ré- le processus 0 récupère la somme des varia- ries MPI pour C, C++ ou Fortran de permettre
seau initialisé par défaut : MPI.COMM_WORLD. bles data distribuées sur tous les processeurs. de transmettre n'importe quel objet Python,
Sendrecv – avec la commande sendrecv, Comme précédemment, avec allreduce, tous sans en spécifier le type. Chaque objet est tout
il est possible de spécifier explicitement pour les processus reçoivent le même résultat. d'abord sérialisé à l'aide du module Python
chaque processus un destinataire et un expédi-
teur. Par exemple : Listing 5. Calcul du nombre Pi.
www.lpmagazine.org 39
Programmation
MPI pour Python
pickle. Il est ensuite transmis sous forme (k=0) i = 1,4,7 L'intérêt du calcul parallèle est ici assez
de chaîne de caractères. Cette dernière est (k=1) i = 2,5,8 évident. Sur un processeur Intel Dual Core
finalement retransformée en objet lors de sa (k=2) i = 3,6,9 à 2.4 GHz, le calcul de la série, pour n=1e8
réception. Si cette procédure offre beaucoup prend environ 33.19 secondes alors qu'il se
de souplesse, le prix à payer est un temps de La somme de ces trois suites calculées in- réduit à 18.49 lorsque qu'il est lancé sur 2
transmission légèrement plus long. dividuellement est équivalente à calculer processus, soit un gain net de 1.8. La diffé-
L'exemple suivant (Listing 3 et 4.) illus- 9 termes de la suite (1). La parallélisation rence avec un gain de 2 vient du fait qu'il faut
tre la communication d'un objet créé à par- du calcul de pi revient alors à faire calculer tenir compte du temps perdu pour transmet-
tir d'une classe appelée MyClass, définie dans chaque sous-suite par un processus indépen- tre les paramètres et récupérer les résultats.
le fichier myclass.py. Le script principal est dant et de sommer l'ensemble des résultats. Plus la durée du calcul effectif sera long par
le fichier "bcast.object.py". Dans ce cas précis, si le nombre d'éléments rapport au temps de calcul (n plus grand par
Lors de l'exécution du script, seul le pro- de chaque suite est grand, le gain de temps exemple), plus le gain sera important (ici,
cessus 0 importe le module myclass. Dans la de calcul est quasiment divisé par le nombre il tendra vers 2). Il est donc important de
foulée, il crée un objet myobject à partir de de processus (en supposant que chaque pro- toujours bien peser le temps de communi-
cette classe. L'objet est transmis à tous les au- cessus puisse bénéficier d'un processeur ou cation nécessaire, par rapport au temps de
tres processus par la commande d'un cœur libre). calcul. C'est une des règles d'or du calcul
pi.py propose une implémentation de parallèle.
myobject = MPI.COMM_WORLD. cette méthode. La fonction comp_pi se charge
bcast(myobject,root=0) de calculer une sous-suite k. Ici, k devient Conclusion
simplement le rang du processus. Elle prend Dans certains domaines scientifiques, la
Chaque processus possède alors une copie également comme argument le nombre d'élé- programmation parallèle est depuis long-
de cet objet qu'il peut modifier à sa guise. ments n de la suite complète (1) et le nombre temps indispensable. Avec l'essore des pro-
Lorsque la rapidité de transmission est un de processus qui participent au calcul. Les cesseurs multi-coeurs, elle va devenir in-
facteur critique, il est possible de transmet- indices i sont alors simplement donnés par contournable dans tous les domaines. Com-
tre des tableaux numpy, en évitant de pas- la liste: me nous l'avons vu dans cet article, le mo-
ser par le module pickle. La transmission dule python mpi4py permet une excellente
s'effectue alors quasiment à la même vites- xrange(rank+1,n+1,nprocs) introduction aux principes de base de la
se que son équivalent en C, C++ ou For- programmation parallèle. Il s'avère en outre
tran. Le programme commence par initialiser les être un outil indispensable et efficace pour
variables rank et nprocs. Le processus 0 est un développement rapide de logiciels paral-
Un exemple plus complexe : ensuite chargé de lire les paramètres du cal- lélisés.
le calcul du nombre Pi cul. Dans cet exemple, le seul paramètre est
Pour illustrer l'intérêt du calcul parallèle, le nombre d'éléments de la série que nous
nous terminons cet aperçu de MPI pour avons stocké dans le fichier piparam.txt.
Python en présentant un algorithme simple Lorsque le processus 0 a lu le fichier et ex- À propos des auteurs
qui permet d'estimer la valeur du nombre trait la valeur du paramètre, il le transmet
Pi (Listing 5). Le calcul est effectué sur à tous les autres processus en utilisant la Yves Revaz est docteur en astrophysi-
plusieurs processeurs, ce qui, comme nous fonction bcast : que. Il occupe actuellement un poste de
le verrons, permettra de diminuer le temps chercheur à l'Ecole Polytechnique de
de calcul. n = MPI.COMM_WORLD.bcast(n, root=0) Lausanne (EPFL). Il est spécialisé dans
L'algorithme est basé sur la suite arith- la simulation de systèmes dynamiques
métique suivante qui converge vers le nom- Le calcul principal s'effectue ensuite en auto-gravitants exigeant l'utilisation de
bre Pi: seulement deux lignes. D'une part, chaque codes massivement parallélisés. Il est
processeur invoque la fonction comp_pi: également l'auteur de pNbody (http://
pi ~= 4/n Sum_i 1/ obswww.unige.ch/~revaz/pNbody/), une
( 1 + ( h*(i-0.5) )**2 ) mypi = comp_pi(n, rank, nprocs) boite à outils python permettant la mani-
(1) pulation en parallèle de gros systèmes
puis la somme des sous-suite est retournée au N-corps.
Ici, l'indice i va de 1 à n. Plus n est grand, processus 0 par la fonction reduce qui somme Lisandro Dalcin est chercheur assis-
plus grande sera la précision sur le résultat. les résultats de chacun des processus: tant à INTEC (Argentine). Il a recemment
Il est facile de voir que cette suite peut être obtenu sa thèse de doctorat dans l'appli-
divisée en np sous-suites, où l'indice i de pi = MPI.COMM_WORLD.reduce(mypi, cation de méthodes numériques en dyna-
chaque sous-suite va de k+1 à n+1, par pas root=0, op=MPI.SUM) mique des fluides. C'est le développeur
de np, où k indique le numéro de la suite, de principal de mi4py mais également de
0 à np-1. Le résultat est finalement donné par le pro- petsc4py et slepc4py (tout trois ébergés
Plus concrètement, pour np=3 et n=9, cessus 0 à la dernière ligne. Dans cet exem- par google code). Il est également actif
les indices des sous-suites sont respecti- ple, nous avons utilisé également la fonction dans le développement de PETSc (http://
vement : Wtime() qui permet de mesurer la durée www-unix.mcs.anl.gov/petsc).
du calcul.
40 Linux+ 3/2009
Programmation
Développement d'extensions sous Typo3
Développer une
extension Typo3
Maxime Fauquemberg
Typo3 est connu comme un puissant outil de gestion de contenu mais
c'est aussi un environnement de développement complet et puissant
– illustration avec les bases de la création d'un plugin. Découvrez toutes les
pistes documentaires pour avancer dans le développement de ses propres
extensions Typo3 !
E
n intervenant sur des projets Typo3 existant je
linux@software.com.pl
découvre assez souvent des extensions qui n'ont Cet article explique...
purement et simplement aucune raison d'exister
– commençons donc par les mauvaises raisons • Les bonnes et les mauvaises raisons d'écrire une
d'écrire une extension : extension.
• Comment utiliser l'extension kickstarter pour initier
• Gérer des menus : il existe tout ce qu'il faut en Typo une extension.
Script pour créer des menus – du plus simple au plus • La communication entre typoscript et PHP.
complexe. Dans le pire des cas vous aurez peut être une • La gestion du cache sous typo3.
facétie graphique à traiter via une userfunc (dans un
contexte professionnel ceci doit m'arriver une fois par de formation dispensée par des professionnel expéri-
an ! ) Donc avant de tenter d'écrire un plugin gérant un mentés. Autre cas de figure l'éclair de génie : vous avez
menu : aller lire ou relire la TSREF. découvert un moyen beaucoup plus intelligent de gérer
• Réinventer la roue : ceci peut paraître étonnant, mais une fonctionnalité native et vous vous préparez à le
sur de nombreux projets Typo3 j'ai découvert avec ef- coder dans un plugin ... prenez donc une heure ou deux
froi des modules gestion de templates, de cache ou d'ac- pour laisser votre ego se reposer – profitez en pour lire
cès aux données ... Tout ceci existe dans Typo3 ! Dans un peu de documentation ( inside typo3 par exemple
la plupart des cas ces expériences malheureuses étaient cité plus bas) ensuite soit vous découvrirez peut être
dues à une méconnaissance du produit. Songez donc que vous venez de découvrir une innovation importan-
avant de vous lancer dans un développement spécifique te à apporter au produit mais, et le plus souvent, vous
à vous documenter sur les fonctionnalités du produit – il vous rendrez compte que vous apprêtiez à commettre un
existe une abondante littérature sur le sujet et une offre grosse ânerie !
42 Linux+ 3/2009
Programmation
Développement d'extensions sous Typo3
ce que fait votre extension – ceci sera utile si - Field name sera le nom de la colonne en base
Ce qu'il faut savoir... à terme vous décidez de publier cette extension. et Field Title l'étiquette affichée dans le back of-
Pressez update après avoir complété les infor- fice. Pour ce qui est du type de bien nous allons
• Avoir de solides bases en PHP.
mations. Nous allons avoir besoin d'une table choisir le Field Type selector box et le configurer
• Savoir utiliser le CMS typo3 : gestion
en base de données pour stocker nos annonces avec notre type de bien comme sur Figure 4.
de contenu, création de gabarits, instal-
– pour l'ajouter il suffit de presser sur le signe + Dès que nous ajoutons un champ, un empla-
lation et configuration d'extensions...
à droite de new database tables. On donne un nom cement vide apparaît en dessous – nous allons
• Des notions de développement objet.
à notre table – qui est automatiquement préfixé donc procéder ainsi pour chacun des champs
par le nom de notre extension (voir Figure 3). voulus.
• Privatisez une extension communautaire Arrivé à ce stade nous allons définir une Les différents types de données dans le
: vous avez trouvé une extension commu- structure de données simple pour qualifier nos kickstarter sont les suivants :
nautaire qui correspond pour partie à vos annonces – il nous faudrait les champs suivants,
besoins mais pour ajouter une fonctionna- pour tous les enregistrements : • string input : un champ de saisie simple
lité ou modifier une fonction existante vous sans contrôle particulier,
avez décidé d'emprunter le code de cette • type de bien : maison, appartement ou • string input advanced : le même que
extension et de l'adapter dans votre propre fonds de commerce, le précédent avec la possibilité d'ajouter
plugin. Même si ce cas de figure peut se • ville, des contrôles via JavaScript dans le back
présenter – en principe vous devriez pouvoir • prix, office,
vous en sortir avec les outils de personnali- • description du bien avec enrichissement • Textarea : un champ texte multiligne sans
sation internes au plugin – ou en étendant la html possible, mise en forme particulière,
classe d'origine, nous verrons un peu plus • photos avec zoom en popup, • Textarea with rte : une zone de saisie
bas comment faire ceci. • code postal, en HTML avec le composant htmlarea,
• superficie. • checkbox : une case à cocher seule – per-
Quelles sont les bonnes raisons alors ? Déjà met par exemple de traiter un champ boo-
de ne pas être dans un des trois cas de figure et uniquement pour les maisons : léen,
cités ci-dessus ! Et ensuite d'avoir une vue • checkbox 4/10 in a row : une série de
précise du besoin auquel on veut répondre • jardin : oui / non, case à cocher – attention dans la mesure
et la manière dont on veut le traiter – ce qui • nombre de niveau. ou typo3 stocke la valeur saisie dans une
n'est en fait pas très révolutionnaire en matière seule colonne de la base de données, la
de développement. pour les appartements : saisie est considérée comme une valeur
binaire. Par exemple quatre cases cochées
L'extension exemple : • étage, seront évaluées comme 1111 et stockées
annonces immobilières • concierge : oui / non. en base sous la forme décimale 15 – lors
L'exemple que je choisis généralement pour de la restitution il faudra bien sur opérer
présenter les bases du développement de plu- et pour finir les fonds de commerce : la conversion dans l'autre sens. Ce type
gin Typo3 est celui de la gestion d'annonce im- de champs n'est bien sûr pas adapté à une
mobilière pour le site d'une agence par exem- • chiffre d'affaire annuel, recherche SQL sur l'une des valeurs.
ple. L'exemple vaut ce qu'il vaut, et il existe • type de commerce autorisé : liste d'activité. • Link : un lien interne ou externe.
sans doute des extensions communautaires qui • Date / date and time : format de date
répondraient au besoin, mais il permet en fait En dessous du formulaire de description nous stocké en base sous forme de timestamp.
d'illustrer la plupart des concepts à connaître pouvons saisir le premier champ type de bien • Integer : un nombre entier,
pour développer sous Typo3. Le principe est
simple, il faut que l'agent immobilier puisse Listing 1. Le contenu du dossier d'une extension
saisir des offres de vente ou de location, et
que ces offres puissent décrire des maisons, 987846 -rw-r--r-- 1 www-data www-data 78 2009-02-08 18:29 ChangeLog
appartements ou fonds de commerce et com- 987725 drwxr-xr-x 2 www-data www-data 4096 2009-02-08 18:02 doc
prennent 987861 -rw-r--r-- 1 www-data www-data 1464 2009-02-08 18:29 ext_emconf.php
Typo3 dispose d'un outil interne pour ini- 987848 -rw-r--r-- 1 www-data www-data 124 2009-02-08 18:29 ext_icon.gif
tier le développement d'extensions : le kicks- 987849 -rw-r--r-- 1 www-data www-data 362 2009-02-08 18:29
tarter. Depuis le module extension manager ext_localconf.php
– installez si nécessaire l'extension kickstarter 987851 -rw-r--r-- 1 www-data www-data 1120 2009-02-08 18:29 ext_tables.php
– vous disposez ensuite dans le menu dérou- 987852 -rw-r--r-- 1 www-data www-data 841 2009-02-08 18:29 ext_tables.sql
lant d'une entrée make new extension . Nous 987853 -rw-r--r-- 1 www-data www-data 135 2009-02-08 18:29
allons d'abord donner un nom à notre exten- icon_tx_immo_annonces.gif
sion et la décrire brièvement (voir Figure 2). 987854 -rw-r--r-- 1 www-data www-data 1711 2009-02-08 18:30 locallang_db.xml
Extension key : saisir une chaîne sans es- 987844 drwxr-xr-x 3 www-data www-data 4096 2009-02-08 18:02 pi1
pace ni caractères spéciaux – ce sera la clef de 987847 -rw-r--r-- 1 www-data www-data 82 2009-02-08 18:29 README.txt
nommage de notre extension. La partie general 987855 -rw-r--r-- 1 www-data www-data 4990 2009-02-08 18:29 tca.php
info est destinée à fournir une description de
www.lpmagazine.org 43
Programmation
Développement d'extensions sous Typo3
• selector box : une liste déroulante avec • database relation : permet de créer une • la relation simple : la table source stocke
des données statiques, relation entre deux tables de la base de les identifiants des enregistrements en re-
• radio boutons : des boutons radio (choix données. Typo3 gère deux types de rela- lation dans une liste d'éléments séparés par
unique ), tions : des virgules,
• mm relation : utilise une table de corres-
Listing 2. Le TCA ou table configuration Array contient la définition de l'interface pondance qui contient les identifiants de
chaque ligne en relation.
... • Files : permet de télécharger des fichiers
"typebien" => Array ( comme nos images par exemple.
"exclude" => 1,
"label" => "LLL:EXT:immo/locallang_db.xml: Une fois tous les champs créés nous devons
tx_immo_annonces.typebien", préciser comment va se comporter notre table
"config" => Array ( – en haut du formulaire de création de table
"type" => "select", nous indiquons – cf illustration – que le champ
"items" => Array ( contrôlant qui rechargera l'interface est le
Array("LLL:EXT:immo/locallang_db.xml: champ type de bien (voir Figure 5).
tx_immo_annonces.typebien.I.0", "0"), Nous verrons un peu plus loin comment
Array("LLL:EXT:immo/locallang_db.xml: affiner notre structure de données notamment
tx_immo_annonces.typebien.I.1", "1"), à travers la personnalisation du table configu-
Array("LLL:EXT:immo/locallang_ ration array ou TCA - Pour l'heure nous allons
db.xml:tx_immo_annonces.typebien. ajouter un plugin d'affichage des données avant
I.2", "2"), de considérer l'édition des fichiers que le kicks-
), tarter aura généré.
"size" => 1,
"maxitems" => 1, Le plugin d'affichage
) Tout comme pour ajouter une table, pour ajou-
), ter un plugin d'affichage il suffit de presser le
... signe + à droite de front end plugins - on donne
un titre à notre plugin – c'est ce titre que verra le
contributeur lors de l'insertion du contenu dans
Listing 3. Définition par défaut de la gestion des types dans le TCA la page. Le bas de la page est une longue liste
à choix unique permettant de définir quelle sera
"types" => Array ( la position de notre composant dans le backend
"0" => Array("showitem" => "hidden;;1;;1-1-1, typebien, de Typo3 – le choix par défaut – dans la liste
ville, prix, description;;;richtext[paste|bold|italic|underline|formatbl des plugins – étant le plus adapté nous reste-
ock|class|left|center|right|orderedlist|unorderedlist|outdent|indent|lin
k|image]:rte_transform[mode=ts], photos, codepostal, superficie, jardin, Listing 5. La fonction principale de notre plugin
nombredeniveau, etage, concierge, ca_annuel, tcommauth")
), function main($content,$conf)
{
$this->conf=$conf;
Listing 4. Le TCA modifié pour afficher trois types différents
debug($conf,"variable conf");
"types" => Array ( $varget = t3lib_div::
"0" => Array("showitem" => "hidden;;1;;1-1-1, typebien, ville, _GET($this->prefixId);
prix, description;;;richtext[paste|bold|italic|underline|formatblock| $template = $this
class|left|center|right|orderedlist|unorderedlist|outdent|indent|link| ->cObj->fileResource($this
image]:rte_transform[mode=ts], photos, codepostal, superficie, jardin, ->conf['template']);
nombredeniveau"), if($uid) {
"1" => Array("showitem" => "hidden;;1;;1-1-1, typebien, ville, $content = $this->detail_
prix, description;;;richtext[paste|bold|italic|underline|formatblock|clas annonce ($uid,$template);
s|left|center|right|orderedlist|unorderedlist|outdent|indent|link|image]: }else {
rte_transform[mode=ts], photos, codepostal, superficie, etage, concierge"), $content = $this->liste_
"2" => Array("showitem" => "hidden;;1;;1-1-1, typebien, ville, annonce ($template);
prix, description;;;richtext[paste|bold|italic|underline|formatblock|class| }
left|center|right|orderedlist|unorderedlist|outdent|indent|link|image]:rte_ return $this->pi_wrapInBase
transform[mode=ts], photos, codepostal, superficie, ca_annuel, tcommauth"), Class($content);
), }
44 Linux+ 3/2009
Programmation
Développement d'extensions sous Typo3
www.lpmagazine.org 45
Programmation
Développement d'extensions sous Typo3
plugin.tx_immo_pi1.template =
fileadmin/immo/template.html
La valeur apparaît désormais dans notre debug Figure 4. Configuration d'une liste d'options avec le
Figure 3. Création d'une table avec le kicktstarter du tableau de conf en front office. Nous allons kicktstarter
46 Linux+ 3/2009
Programmation
Développement d'extensions sous Typo3
À propos de l'auteur
L'auteur, Maxime Fauquemberg, est le res-
ponsable technique et gérant d'Oblady
www.oblady.com.
De formation littéraire il s’est après
une brève expérience dans la presse ra-
pidement consacré aux nouveaux médias
Figure 5. Ajout de la gestion des types pour notre table annonce en collaborant d’abord à des projets de
cdrom éducatifs. Puis pendant plusieurs
années il a dirigé des projets web pour
différentes sociétés de service. Il a fondé
en 2002 Oblady société experte en solu-
tion de gestion de contenu open source
et pionnière dans l’utilisation de Typo3 en
France. Oblady vient notamment de sig-
ner la refonte du site http://www.lesin
rocks.com sous Typo3.
www.lpmagazine.org 47
Sécurité
Protocole vsFTPd
Configurer vsFTPd
sous Linux – seconde partie
Christian Aubin
Il existe plusieurs serveurs FTP. vsFTPd est pour sa part conçu dans l’optique
d'une sécurité maximale. En effet, contrairement aux autres serveurs FTP,
aucune faille de sécurité n'a jamais été décelée dans vsFTPd.
C
ommençons tout d'abord par l’installation de
linux@software.com.pl
48 Linux+ 3/2009
Sécurité
Protocole vsFTPd
www.lpmagazine.org 49
Sécurité
Protocole vsFTPd
50 Linux+ 3/2009
Sécurité
Protocole vsFTPd
#Le port d’écoute par défaut est le 21. Vous pouvez #chown_uploads=YES
#imposer un autre port si vous le souhaitez. La ligne #chown_username=whoever
#listen_port n’apparait pas forcément dans le fichier de #L’emplacement des fichiers logs (journaux
#configuration initial. Ne vous inquiétez pas, il écoute #évènementiels).
#bien le 21. Tapez l’option si vraiment vous voulez xferlog_file=/var/log/vsftpd.log
#attribuer un autre numéro de port. #Si vous le souhaitez, vous pouvez avoir votre journal
listen_port=21 #évènementiel au format xferlog.
#Nombre de clients simultanés : #xferlog_std_format=YES
max_clients = 5 #Vous pouvez changer la valeur du time out par défaut,
#Spécifie le nombre max de clients autorisés à se #en cas de session lente à l’ouverture.
#connecter depuis la même adresse source. #idle_session_timeout=600
max_per_ip = 4 #Vous pouvez changer la valeur par défaut pour le time
#Vsftpd est en standalone. Le démarrage du serveur #out de la connexion Data.
#n’est donc géré par aucun superserveur de type intetd #data_connection_timeout=120
#ou xinetd. #Pour définir sur votre système un utilisateur unique
listen=YES #que le serveur FTP peut utiliser comme un utilisateur
# Même chose mais pour IPV4. #totalement isolé et non privilégié.
#listen_ipv6=YES #nopriv_user=ftpsecure
#Accorder l’accès “anonyme”? #Permettre au serveur la reconnaissance des requêtes
#(La configuration par défaut est “oui”. Par sécurité, #asynchrones d'ABOR. Non
#j’ai indiqué non. #recommandé pour la sécurité (le code est non-
anonymous_enable=NO #insignifiant).
#A décommenter pour que les users locaux puissant se #async_abor_enable=YES
connecter au FTP. #Par défaut, le serveur autorisera le mode ASCII.
local_enable=YES #Mais en fait, il l’ignorera. Pour que le serveur gère
#A décommenter si on veut que l’utilisateur puisse #réellement l’ASCII, décommentez les lignes suivantes.
#écrire dans un fichier/dossier. # Prenez garde car sur certains serveurs FTP,
write_enable=YES #l'utilisation d'ASCII permet une attaque par déni de
#Définir un umask. Par défaut, 077. Ici, 022, ce qui #service (Attaque DOS), via la commande "SIZE /big/file"
#laisse des droits en 644 sur les fichiers. #Cela #dans le mode ASCII. vsFTPd a "prévu" cette attaque
#nous donnera, si nous faisons un ls –l, sur le fichier #et s’en est toujours protégé en reportant la taille du
#uploadé des droits en : -rw-r--r--. #fichier brut.
local_umask=022 #ASCII mangling is a horrible feature of the protocol.
#Pour que l’utilisateur anonyme puisse faire du #ascii_upload_enable=YES
#téléversement (upload) : décommenter. #ascii_download_enable=YES
anon_upload_enable=YES #Configurer la bannière qui apparait sur le client, à la
#A décommenter si vous souhaitez que le user anonyme #connexion de l’utilisateur distant.
#puisse créer de nouveau répertoires. ftpd_banner=Welcome to Christian FTP service!
#anon_mkdir_write_enable=YES #Vous pouvez spécifier un fichier d'adresses
#Active les messages de répertoires perçus par #électroniques anonymes rejetées. Apparemment utile
#l’utilisateur distant. #dans la lutte contre les attaques DoS.
dirmessage_enable=YES #deny_email_enable=YES
#Active l’enregistrement des téléchargements/ #Spécifie l’emplacement du fichier banned_emails (dans
#téléversements. #/etc/vsftpd)
xferlog_enable=YES #banned_email_file=/etc/vsftpd.banned_emails
#Pour être sûr que la connexion des données – au moins #Vous pouvez restreindre les utilisateurs locaux dans
#initialement – passera par le port 20 #leur répertoire $HOME via ce fichier.
#(ftp-data). Si on choisit la solution des ports #Par défaut, est considéré comme étant sur NO.
#éphémères (Cf. plus loin), YES ne sera pas #chroot_local_user=NO
#obligatoire. #Vous pouvez spécifier une liste d’utilisateurs locaux à
connect_from_port_20=YES #chrooter dans leur $HOME. Si
#Si vous voulez, vous pouvez prendre des dispositions #chroot_local_user est sur YES, alors la liste des
#pour que les dossiers anonymes téléversés aient #users figurant dans ce fichier ne sera pas
#pour propriétaire un utilisateur différent. #chrootée par défaut. Seuls ceux qui n’y figureront pas
#Attention ! L'utilisation "de la racine" pour les #seront chrootés.
#dossiers téléversés n'est pas recommandée ! chroot_list_enable=YES
www.lpmagazine.org 51
Sécurité
Protocole vsFTPd
52 Linux+ 3/2009
Sécurité
Protocole vsFTPd
En remplaçant undef par define. vous servira à recharger votre fichier de con-
D’autre part, s’il vous manque des biblio- figuration.
thèques, vous pourrez vous référer au fichier S’il est démarré, en faisant un netstat,
vsf_findlibs.sh contenu dans le tar. vous verrez le port 21 parmi les ports ouverts.
Puis, naturellement, il faudra que vous Sinon, cela signifie que votre fichier de configu-
sauvegardiez le fichier modifié avant de faire ration n’est pas bon.
votre make.
Dernière chose. Sous Debian, vous Conclusion
avez la possibilité de vérifier les versions Mais… et maintenant ? Avant d’ouvrir des accès,
des paquetages installés sur votre machine. il convient de comprendre les tenants, les abou-
Récupérez le paquetage apt-show-versions tissants, de savoir ce que l’on fait et comment.
et lancez la commande en question. C'est Et il convient surtout de s’assurer de ne pas lais-
rapide, simple et efficace. Sinon, vous pou- ser des failles de sécurité que l’on pourrait facile-
vez aussi bien faire un dpkg –get-selec- ment combler. C’est donc ce que nous verrons au
tions, suivi d'un dpkg -l sur le paquetage prochain numéro. Puis, par la suite, nous verrons
qui vous intéresse (voir Listing 6). comment créer les utilisateurs de vsFTPd.
Le fichier vsftpd.conf
Rendez-vous, à présent, dans le fichier de con-
figuration, situé dans /etc. À propos de l'auteur
Par sécurité, faites d’abord une sauvegarde
L'auteur, Christian AUBIN, travaille de-
du fichier vsftpd.conf en vsftpd.conf.old. Puis,
puis près d'un an dans une société d'hé-
ouvrez le fichier :
bergement de serveurs. Dédié au sup-
port, il a pour rôle d'apporter au client
#vim /etc/vsftpd.conf
des solutions techniques aux problèmes
susceptibles de survenir dans le cadre de
Mon fichier de configuration ressemble à ce
toute activité liée à l'administration de ré-
qui suit. J’ai traduit les commentaires de façon
seaux distants. Concrètement, son rayon
à ce que vous puissiez comprendre les fonc-
d'action s'étend de la surveillance des
tions incluses dans le fichier.
systèmes à l'aide aux administrateurs
Vous pourrez trouver d’autres options
dans le plus strict respect du classique
intéressantes dans le man du vsftpd.conf (cf.
SLA (Service level Agreement).
la commande apropos vsftpd (si nécessaire,
www.lpmagazine.org 53
Sécurité
Sécurisation de l'information
La sécurisation
de l'information
et du système d'information
Régis SENET
La sécurité des systèmes d’information (SSI) est l’ensemble des moyens
techniques, organisationnels, juridiques et humains nécessaires et mis en place
pour conserver, rétablir et garantir la sécurité de l'information et du système
d'information.
D
’une manière générale le système d’infor- que lié à leur système d’information. Des sommes de l'ordre
linux@software.com.pl
mation concerne l’ensemble des moyens de plusieurs milliards de dollars US ont été avancées suite
(organisation, acteurs, procédures et systèmes à des dommages causés par des programmes malveillants
informatiques) nécessaires à l’élaboration, au comme le ver Code Red. D'autres dommages substantiels,
traitement, au stockage, à l’acheminement et à l’exploitation comme ceux liés au vol de numéros de cartes de crédit, ont
des informations. été déterminés plus précisément. Outre les aspects financiers,
De nos jours, l’essentiel du système d’information est des bris de sécurité informatique peuvent causer du tort à la
porté par le système informatique et la notion de sécurité vie privée de l’entreprise en divulguant des informations con-
informatique recouvre pour l’essentiel la notion de sécurité fidentielles qui entre de mauvaises mains pourraient s’avérer
des systèmes d’information (SSI). être très dangereuses pour l’entreprise.
Les évolutions récentes et rapides de l’informatique ont Certaines menaces peuvent nuire à l'image même du pro-
contribué à l’accélération des échanges d’informations. Les priétaire du système d'information. Des techniques répandues
entreprises se trouvent désormais confrontées au contrôle ef- de defacing permettent à une personne mal intentionnée de
ficace de la confidentialité, de l’intégrité et de la disponibilité mettre en évidence des failles de sécurité sur un serveur web.
de ces informations. Véritable point vital, le système d’infor- Ces personnes peuvent aussi profiter de ces vulnérabilités
mation est donc naturellement devenu la proie de multiples pour diffuser de fausses informations sur son propriétaire.
attaques qui menacent l’activité économique des entreprises La sécurité du système d’information fait donc appel
et requièrent la mise en place d’une politique de sécurité. à différentes techniques dont :
Certaines menaces peuvent causer directement ou indi-
rectement d'importants dommages d’ordre financier. En effet • le chiffrement de l’information (cryptologie),
de nombreuses entreprises déclarent avoir souffert de lourdes • la protection contre les signaux parasites compromet-
pertes financières suite à une attaque ou un problème techni- tants (sécurité électronique),
54 Linux+ 3/2009
Sécurité
Sécurisation de l'information
www.lpmagazine.org 55
Sécurité
Sécurisation de l'information
formation se doit d’être la plus uniforme possible Les systèmes de protection contre les Emploi de technologies ad-hoc
du fait que la sécurité de l’ensemble du système menaces physiques et environnementales Pour en finir avec les moyens de protection,
d’information sera toujours inférieure à la sécu- Comme nous avons pu en parler précédemment, nous allons parler des technologies ad-hoc. Dans
rité du maillon le plus faible. les menaces environnementales ne sont absolu- ces technologies, nous allons parler en premier
Ce fait aidant, il est important de comprendre ment pas à prendre à la légère. Même si ces der- lieu du pare-feu. Un pare-feu est l’une des pièces
que la sécurité du système d’information doit être nières sont relativement rares, il est impératif de maitresses d’un réseau informatique. Il a pour
abordée avec une conception très globale tant les garder à l’esprit que cela peut être dévastateur. fonction de faire respecter la politique de sécurité
points à prendre en compte sont différents mais Il est donc nécessaire de mettre en place une du réseau, celle-ci définissant quels sont les types
en même temps complémentaires : politique de sécurité regroupant l’ensemble des de communication autorisés ou interdits.
risques possibles : incendie, inondation, foudre, De manière très simplifiée,, la représenta-
• La sécurité des systèmes d'exploitation, électricité (surtension ou panne d’électricité) etc. tion qu’il est possible de donner d’un pare feu
• La sécurité des télécommunications, Les systèmes de protection contre ces me- sur Figure 1. Il a donc pour tâche de contrôler
• La sécurité de l'information, naces sont connus, pour plus de renseignement le trafic entre différentes zones de confiance, en
• La sécurité des données, n’hésitez pas à regarder le dossier sur la sécurisa- filtrant les flux de données qui y transitent. Géné-
• La sécurité des réseaux, tion des Datacenters présent dans la partie Liens. ralement, les zones de confiance incluent Internet
• La sécurité physique. et au moins un réseau interne (une zone dont la
Surveillance du réseau et des systèmes confiance est plus importante).
Il est donc important de garder à l’idée que l’en- Il est absolument indispensable pour un adminis- Dernièrement, afin d’assurer un niveau de
semble des sécurités citées précédemment doi- trateur réseau de savoir ce qui se passe dans son sécurité suffisamment élevé dans le réseau de
vent être prises en compte d’une manière glo- réseau ainsi que ce qui y transite afin de révéler l’entreprise, il est indispensable que l’ensemble
bale pour l’entreprise afin de ne pas provoquer toute tentative d’intrusion sur le réseau. Pour des ordinateurs, connectés à Internet ou non,
la présence d’un maillon faible qui fragiliserait cela, il est possible de mettre en place des sys- dispose de plusieurs moyens de protection con-
l’ensemble du système d’information. tèmes de détection d’intrusion, plus connus sous tre les menaces les plus fréquentes. Pour cela, il
le nom d’IDS (Intrusion Detection System). Par est donc nécessaire de s’équiper :
Les moyens techniques définition, un IDS est un mécanisme destiné à re-
À l’heure actuelle, les restrictions au niveau des pérer des activités anormales ou suspectes sur la • Un antivirus,
moyens techniques sont de plus en plus faibles cible analysée que ce soit un réseau d’entreprise • Un anti spam,
tant l’avancée technologique actuelle est grande. ou simplement une machine hôte. • Un anti spyware,
Ces nombreux moyens permettent d’assurer une Les IDS sont divisés en trois grandes ca- • Un anti malware.
sécurité du système d'information. Il convient, tégories :
pour chaque entreprise, de choisir les moyens De nombreuses offres commerciales ou même
nécessaires, suffisants et justes quant à leurs • Les NIDS (Network Based Intrusion gratuites combinent l’ensemble des fonctions pré-
activités, leurs données à protéger etc. Dans les Detection System) surveillant l'état de la cédemment citées en un seul et même produit.
moyens techniques, nous retrouvons. sécurité du réseau.
• Les HIDS (HostBased Intrusion Detec- Méthode de chiffrement
Les contrôles d’accès tion System) surveillant l'état de la sécu- Par définition, le chiffrement est le procédé grâce
au système/réseau local rité des hôtes. auquel on souhaite rendre la compréhension d'un
Le contrôle d’accès permet de ne laisser entrer • Les IDS hybrides, qui utilisent les NIDS document impossible à toute personne qui n'a pas
seulement les personnes spécifiquement autori- et HIDS afin d’avoir des alertes plus per- la clé de (dé)chiffrement. Le chiffrement des don-
sées à le faire afin d’éviter par exemple, qu’une tinentes. nées se retrouve actuellement à deux niveaux :
personne externe à l’entreprise puisse avoir accès
au Datacenter. Le contrôle d’accès va combiner Il est fortement conseillé de posséder au moins un • Chiffrement des données transitant sur le
une action logique à une action physique afin NIDS afin d’avoir une vue d’ensemble du réseau. réseau,
de permettre à une personne identifiée ou non L’IDS Snort est un excellent IDS réseau étant • Chiffrement des données personnelles.
d’avoir accès à telle ou telle ressource. capable d'effectuer en temps réel des analyses
En effet, le contrôle logique va s’effectuer de trafic ainsi que de logger les paquets sur un En effet, la majeure partie des protocoles
par exemple grâce à un lecteur de carte, un lec- réseau IP. que nous utilisons envoient les données en
teur biométrique ou tout simplement un clavier Ajouté à cela un ou plusieurs HIDS par hô- clair sur Internet permettant à une personne
nécessitant un mot de passe. Quant à l’action te permettant d’accroitre la sécurité de chacun malveillante de récupérer l’ensemble de ces
physique que cela va impliquer, il peut s’agir de d’entre eux. En effet, chaque HIDS ne recher- informations qu’il s’agisse de mot de passe,
l’ouverture d’une porte, d’un tourniquet tripode chant pas les mêmes types d’attaque, il est pos- de compte utilisateur ou de mail. Les proto-
ou encore plus simplement du déverrouillage sible d’en avoir plusieurs en sa possession afin coles ainsi cités sont par exemple HTTP, FTP,
d’un poste informatique. de couvrir le plus grand nombre de menaces IMAP qui par défaut n’ont aucune méthode de
Les authentifications fortes sont très en possibles sur la machine. Chkrootkit aura chiffrement des données. Pour éviter tout en-
vogue en ce moment. Une authentification forte pour but de vérifier et d’éradiquer la présence nui, il est préférable de revoir les politiques de
est une procédure d'identification qui requiert de rootkit sur un hôte GNU/Linux alors que sécurité permettant de remplacer au maximum
la concaténation d'au moins deux éléments ou Tripwire aura pour but de vérifier si l’ensem- les protocoles potentiellement dangereux par
facteurs d'authentification différents (biométrie ble des fichiers n’ont pas été modifiés sur le des protocoles sécurisés. Il est donc nécessaire de
plus mot de passe par exemple). système. remplacer HTTP par HTTPS, FTP par FTPS ainsi
56 Linux+ 3/2009
Sécurité
Sécurisation de l'information
Les tests
Une fois l’ensemble des configurations effectué, à court comme à long
terme, il est nécessaire de continuellement tester la sécurité. Pour cela, il est
nécessaire de mettre en place des audits de sécurité. Ces audits, qu’ils soient
de configuration ou de vulnérabilités sont principalement effectués par des
acteurs externes à l’entreprise afin d’avoir un point de vue impartial et ex-
terne quand à la sécurité du système d’information.
Audit de configuration
Un audit de configuration représente une liste de points à vérifier afin de
voir si la sécurité d’une nouvelle machine peut être acceptable. L’auditeur
va suivre pas à pas une liste de points définie en fonction du niveau de
sécurité voulu par l’entreprise et vérifier que l’ensemble de ces points sont
respectés. (Communication chiffrées en SSLV3, présence d’une clé WPA
etc.). Dans le cas où l’un d’entre eux n’est pas respecté, il est nécessaire de
mettre en place des correctifs adaptés avant de repasser un audit quelques
semaines plus tard. Au cours de ce prochain audit, l’auditeur va principa-
lement s’attarder sur les points ayant posé problème lors de son dernier
passage tout en analysant à nouveau les autres.
L’auditeur se doit d’éditer un rapport synthétisant l’ensemble des tests
effectués sur les machines ainsi que de donner un résumé de l’audit.
Audit de vulnérabilités
Ce type d’audit est impérativement à mettre en place et arrive en règle géné-
rale juste après l’audit de configuration. Cet audit à pour but de tester l’ensem-
ble des services et des applications de manière interne et externe afin de si-
muler la tentative d’intrusion d’un Hacker. Ce processus est à mettre en place
principalement lors de l’arrivée d’un nouveau serveur par exemple mais doit
également se faire de manière régulière sur les autres équipements. En effet,
Internet et ses failles évoluent constamment, il est donc nécessaire d’être
à jour en tout temps. Le magazine Hakin9 N°7-2007 - Tests des vulnérabilités
– détaille en profondeur les audits de vulnérabilité qu’il est possible de mettre
en place pour la sécurisation des machines présentes dans le Datacenter.
Tous comme pour les audits de configuration, il est nécessaire d’édi-
ter un rapport synthétisant l’ensemble des vulnérabilités détectées lors
de l’audit. Les vulnérabilités vont être classées en fonction de leur
importance (critique, élevé, moyen et informations) afin d’attirer l’at-
tention sur les vulnérabilités importantes ainsi qu’en fonction de leur
zone (DMZ, VPN, local, VoIP etc.).
Sur Internet
• Méthode EBIOS : http://www.ysosecure.com/methode-
securite/methode-ebios.asp,
• Méthode Mehari : http://www.ysosecure.com/methode-mehari/
principes-mehari.asp,
www.lpmagazine.org 57
Pratique
Ethernet
Le protocole Ethernet
Pascal Barbier
Au fil des années, le protocole Ethernet est devenu incontournable dans
la majorité des installations de réseaux locaux. De plus il a inspiré de
nombreux autres protocoles. Cet article revient sur les bases théoriques du
fonctionnement de ce protocole.
C
omme beaucoup de success stories de l’infor- Au début des années 90, le câblage en étoile (plus pra-
linux@software.com.pl
matique (les fenêtres, la souris ou presque, le tique) puis la version commutée du protocole (plus perfor-
traitement de texte WISIWIG, l’imprimante mante) auront finalement raison des compétiteurs et Ethernet
laser, PostScript, la programmation orientée deviendra la référence presque absolue dans le domaine
objet, les VLSI…) Ethernet est né au PARC (Palo-Alto Re- des réseaux locaux. Entre temps, de nombreuses évolutions
search Center, filiale de Xerox). Parmi ses concepteurs, le seront étudiées : différentes vitesses (100Mbits/s, 1 puis 10
fameux Bob Metcalf, génial instigateur du succès d’Ether- Gbits/s, bientôt 100), paires torsadées, fibres optiques. Beau-
net. En 1975, Xerox dépose un brevet sur la première ver- coup n’ont pas dépassé le stade des laboratoires et des cam-
sion d’Ethernet (3Mbits/s et adresses sur 8 bits, abandonnée pus universitaires. Ethernet a également inspiré de nombreux
maintenant). Quatre ans plus tard, Metcalf fonde la société protocoles de réseaux tels que Wifi.
3Com et convainc DEC, Intel et Xerox de s’associer pour
promouvoir Ethernet. Première génération : le bus
La seconde version du protocole (souvent appelée DIX, Les premières versions d’Ethernet mettent en œuvre un bus
initiales des trois sociétés), née de cette association est un réel à base de câble coaxial. Ce câble ressemble à celui du télévi-
succès. 3Com est alors propulsée au rang de grande entrepri- seur. Sa conception vise à protéger le signal transporté par le
se. Le protocole est alors en concurrence commerciale avec conducteur central des perturbations électromagnétiques. La
quelques produits comme ArcNet de Datapoint et surtout tresse métallique qui l’entoure joue le rôle de cage de Faraday
Token Ring d’IBM. et élimine une grande partie des parasites.
En 1985, l’IEEE standardise le protocole sous la réfé- Ethernet utilise deux types de câbles coaxiaux : le Thick
rence IEEE 802.3. De nombreux amendements de ce stan- et le Thin. Le premier est plus épais, souvent de couleur jaune
dard suivront les évolutions technologiques de ce protocole (certains l’appellent le tuyau d’arrosage) et doit généralement
(voir encadré). être installé en pose définitive. La longueur maximale est
58 Linux+ 3/2009
Pratique
Ethernet
www.lpmagazine.org 59
Pratique
Ethernet
60 Linux+ 3/2009
Pratique
Ethernet
pliquent automatiquement celle des trois mé- Basé sur des principes analogues, WiMax
À propos de l'auteur thodes qui leur parait la plus appropriée en (802.16) propose d’augmenter les débits jusqu’à
fonction du contexte. On parle alors de commu- 20 Mbits/s.
L'auteur est, depuis 25 ans, formateur sur de
tation adaptative. Ethernet a également inspiré des réseaux
nombreux sujets techniques informatique :
industriels tels que LXI ou spécialisés comme
système, réseaux, développement, bases
Les protocoles l’AFDX. LXI est un réseau d’instrumentation
de données. En 1982, il a participé au por-
qui sont inspirés d’Ethernet qui espère remplacer le vieillissant bus IEEE
tage du système UNIX sur le premier PC de
Les bases techniques que nous venons de voir 488 (aussi connu sous le nom GPIB). Il est conçu
Toshiba. Depuis, il a assuré de nombreuses
ont largement inspiré de nombreux protocoles. pour interconnecter des appareils de mesure.
formations sur le système UNIX, puis Linux
Parmi ceux qui ont eu un réel succès, WIFI De son côté, AFDX est un réseau spécialement
et sur les techniques réseaux. Il est main-
(802.11) est probablement le plus répandu. adapté aux exigences des communications dans
tenant responsable pédagogique d'une
L’objectif de ce protocole est de réaliser des les avions. L’absence de déterminisme d’Ethernet
des principales sociétés de formation de la
réseaux locaux sans fil. Il utilise pour cela une induit par le mécanisme des collisions. Pour cela,
région toulousaine.
bande de fréquences autour de 2,4 GHz (ou 5 le réseau prévoit la réservation de bande passante
GHz pour certaines variantes). La vitesse de dans des canaux des circuits virtuels.
SFD et Mac destination). La latence est alors d’un travail est de 1 ou 2 Mbits/s à l’origine. Des va-
peu plus d’une microseconde (plus le temps de riantes (notamment 802.11a, 802.11b et surtout
calcul de la commutation). 802.11g) autorisent des vitesses allant jusqu’à Sur Internet
Toutefois, cette solution présente deux 54Mbit/s (théoriques).
• La bible des réseaux : Cisco Internet
inconvénients. Le premier est que les trames en La communication on WiFI fait intervenir
working Technology Handbook : http://
erreur sont transmises (pas de détection d’erreur un équipement relai entre les stations : le point
www.cisco.com/en/US/docs/internet
dans le commutateur). La seconde est que la d’accès. Le rôle de ce point d’acces est de
working/technology/handbook/ito_
stratégie de commutation se base uniquement sur réguler le trafic entre les stations pour éviter
doc.html.
l’adresse physique. Or les commutateurs rapides les collisions (méthode CSMA/CA : Collision
• La fiche Ethernet sur comment ça mar-
ont souvent besoin de baser leurs décisions de Avoidance). Les stations ne pouvant pas écou-
che : http://www.commentcamarche.net/
commutation sur d’autres critères qui mettent ter pendant qu’elles émettent une trame, la mé-
contents/technologies/ethernet.php3
en jeu le champ type et les informations de l’en- thode CSMA/CD est inapplicable. Le principe
• Un article complet sur Linux-France :
tête IP (notamment pour traiter les problèmes de est alors, pour une station qui souhaite émettre,
http://www.linux-france.org/prj/inetdoc/
qualité de service). On se tourne alors vers une d’attendre que le canal radio soit libre pendant
articles/ethernet/
méthode intermédiaire, appelée Fragment free un certain temps. Elle émet alors un court mes-
• Une introduction facile à lire sur la tech-
qui attend d’avoir reçu 64 octets de la trame sage, Request To Send, auquel le point d’accès
nologie : http://tssi.borkmadjai.com/file/
pour prendre une décision complète. Pour finir, répond par un Clear To Send. La station est
04.2%20Technologie%20Ethernet.pdf
signalons que certains commutateurs évolués ap- alors autorisée à émettre.
PUBLICITÉ
www.lpmagazine.org 61
Pratique
Outils APT
De Ubuntu à Debian:
usage avancé des outils APT
Olivier Olejniczak
Lorsqu'il y a quelques mois, j'ai découvert la distribution CrunchBang[1], j'ai su que
j'avais enfin trouvé la distribution Linux qui était faite pour moi! Cet article retrace les
différentes étapes et les outils utilisés pour passer d'une CrunchBang Ubuntu à une
CrunchBang Debian.
C
et article retrace les différentes étapes et les outils
linux@software.com.pl
62 Linux+ 3/2009
Pratique
Outils APT
www.lpmagazine.org 63
Pratique
Outils APT
de dpkg est disponible en ligne sur http:// Chaque ligne est de la forme deb serveur Ensuite, lancez la recherche et l'installation de
www.delafond.org/traducmanfr/deb/man8/ distribution univers , où : toutes les mises à jour disponibles avec la com-
dpkg.8.html. mande : apt-get update.
• les lignes débutant par deb pointent vers La liste des mises à jour disponibles vous
Les outils apt des sources de paquets compilés, les lignes est d'abord présentée. Tapez O si vous souhaitez
Le souci avec l'usage de dpkg est qu'il faut dis- débutant par deb-src pointent vers les code procéder à la mise à jour qui peut être assez lon-
poser d'une copie locale du paquet d'installation source des applications; gue, car plusieurs Gigaoctets de données peuvent
du programme que vous souhaitez installer, et • serveur est l'URL du serveur internet http, alors être téléchargés depuis internet. L'option
d'une copie du paquet d'installation de toutes les ftp ou le cdrom; -y lance l'installation sans poser de questions :
dépendances non présentes dans votre système. • distribution fait référence à la version de la apt-get -y update.
Évidemment, cela peut vite devenir très com- distribution Linux – dans le listing ci-dessus, Tous les fichiers .deb téléchargés sont gardés
pliqué et fastidieux. Heureusement, il existe on voit clairement de CrunchBang Linux est dans un cache disque situé dans /var/apt/cache/
un outil bien plus simple : apt pour Advanced basé sur Ubuntu 8.04.1 _Hardy Heron; archives. Ainsi, si vous devez réinstaller un logi-
Packaging Tool. Il s'agit d'un système complet • univers fait référence à un classement des ciel ultérieurement et qu'il n'existe pas de version
qui s'appuie sur dpkg et qui permet : logiciels : main = nécessaire, non-free = plus récente de celui-ci, alors la copie locale sera
logiciels non libres... utilisée. Cela évite de la télécharger à nouveau.
• une recherche facile et efficace des program- Évidemment, ce cache occupe beaucoup de
mes disponibles pour votre distribution; Les lignes commençant par # sont ignorées place sur votre disque dur. Vous pouvez le pur-
• une installation simple et rapide; Mise à jour de tous les logiciels installés : apt- ger avec la commande : apt-get clean.
• une désinstallation propre des logiciels que update / apt-upgrade Notez que cela n'a aucun impact sur les
vous souhaitez retirer de votre système. Bien évidemment, il faut tout d'abord s'as- paquets installés.
surer que la base de données des paquets .deb L'option autoclean permet de ne supprimer
Il permet aussi de tenir à jour votre distribution est bien à jour avec la commande : que les copies des paquets désinstallés.
(c'est à dire d'installer les paquets de versions
plus récentes que ceux installés) et de passer apt-get update apt-get autoclean
à une nouvelle version de Debian/Ubuntu lors-
que celle-ci est disponible. Listing 1. dpkg
Grâce à apt, il est possible d'installer des
logiciels, les diverses bibliothèques, extensions dpkg --info
et autres compléments indispensables pour les /var/cache/apt/archives/nano_2.0.2-1etch1_i386.deb
faire fonctionner (les dépendances) en une nouveau paquet Debian, version 2.0.
seule ligne de commande. apt dispose aussi de taille 547168 octets: archive de contrôle = 3066 octets.
nombreuses interfaces graphiques dont Synap- 12 octets, 1 lignes conffiles
tic (Figure 2), ainsi que d'interfaces en ligne de
commande comme Aptitude, afin d'en rendre 4506 octets, 67 lignes md5sums
l'utilisation plus conviviale. 579 octets, 21 lignes * postinst #!/bin/sh
160 octets, 5 lignes * postrm #!/bin/sh
Gestion des sources de paquets 379 octets, 20 lignes * preinst #!/bin/sh
La commande apt utilise une base de données 288 octets, 14 lignes * prerm #!/bin/sh
des programmes disponibles pour votre distri- Package: nano
bution. Pour actualiser cette base d'information, Version: 2.0.2-1etch1
tapez la commande : Section: editors
Priority: important
apt-get update Architecture: i386
Depends: libc6 (>= 2.3.6-6), libncursesw5 (>= 5.4-5)
Cette base de logiciels peut être alimentée par Suggests: spell
plusieurs sources. Les liens vers les serveurs Conflicts: nano-tiny (>= 1.0.0-1), pico
hébergeant des applications présentées sous Replaces: pico
la forme de paquets .deb sont définis dans le Provides: editor
fichier /etc/apt/source.list. Installed-Size: 1624
Des paquets très spécifiques peuvent ainsi Maintainer: Jordi Mallach <jordi@debian.org>
être téléchargés depuis Internet quand les dis- Description: free Pico clone with some new features
tributeurs en fournissent. Le contenu du fichier GNU nano is a free replacement for Pico, the default Pine editor. pine
/etc/ap/source.list de la distribution Crunch is copyrighted under a restrictive licence, that makes it unsuitable
Bang Linux est présente par le Listing 2. On for Debian's main section. GNU nano is an effort to provide a Pico-like
y recense à la fois des serveurs Ubuntu officiels editor, but also includes some features that were missing in the original,
(archive.canonical.com) et des serveurs spécifi- such as 'search and replace', 'goto line' or internationalization support.
ques à CrunchBang (gb.archive.ubuntu.com).
Ces serveurs sont aussi appelés dépôts.
64 Linux+ 3/2009
Pratique
Outils APT
www.lpmagazine.org 65
Pratique
Outils APT
deb cdrom:[Ubuntu 8.04.1 _Hardy Heron_ - Release i386 (20080701)]/ hardy main restricted
#deb cdrom:[Ubuntu 8.04.1 _Hardy Heron_ - Release i386 (20080701)]/ hardy main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://gb.archive.ubuntu.com/ubuntu/ hardy main restricted
deb-src http://gb.archive.ubuntu.com/ubuntu/ hardy main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://gb.archive.ubuntu.com/ubuntu/ hardy-updates main restricted
deb-src http://gb.archive.ubuntu.com/ubuntu/ hardy-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
deb http://gb.archive.ubuntu.com/ubuntu/ hardy universe
deb-src http://gb.archive.ubuntu.com/ubuntu/ hardy universe
deb http://gb.archive.ubuntu.com/ubuntu/ hardy-updates universe
deb-src http://gb.archive.ubuntu.com/ubuntu/ hardy-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://gb.archive.ubuntu.com/ubuntu/ hardy multiverse
deb-src http://gb.archive.ubuntu.com/ubuntu/ hardy multiverse
deb http://gb.archive.ubuntu.com/ubuntu/ hardy-updates multiverse
deb-src http://gb.archive.ubuntu.com/ubuntu/ hardy-updates multiverse
## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb http://gb.archive.ubuntu.com/ubuntu/ hardy-backports main restricted universe multiverse
# deb-src http://gb.archive.ubuntu.com/ubuntu/ hardy-backports main restricted universe multiverse
## Uncomment the following two lines to add software from Canonical's
## 'partner' repository. This software is not part of Ubuntu, but is
## offered by Canonical and the respective vendors as a service to Ubuntu
## users.
# deb http://archive.canonical.com/ubuntu hardy partner
# deb-src http://archive.canonical.com/ubuntu hardy partner
deb http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-src http://security.ubuntu.com/ubuntu hardy-security main restricted
deb http://security.ubuntu.com/ubuntu hardy-security universe
deb-src http://security.ubuntu.com/ubuntu hardy-security universe
deb http://security.ubuntu.com/ubuntu hardy-security multiverse
optimisé dans le répertoire courant. Sauve- bliothèques auxquelles aucun programme ne En combinant la sortie de la commande debor-
gardez le fichier original et copiez le nouveau fait appel, ceux qui ne sont plus utilisés... On phan avec la commande apt-get remove --purge,
fichier dans /etc/apt/. qualifie ces paquets de orphelins. vous pouvez demander en une ligne la sup-
L'installation de deborphan vous est désor- pression des tous les paquets orphelins apt-get
netselect-apt mais acquise : apt-get install -y debor- remove --purge $(deborphan).
cp sources.list /etc/apt/sources.list phan.
Les amateurs d'interface graphique pour- Optimisez les paquets pour votre matériel :
Suppression de paquets devenus inutiles : ront installer le paquet gtkorphan (Figure 3) qui apt-build
DebOrphan permet de connaître et supprimer sélectivement Un peu plus tôt dans cet article, je vous ai dit
DebOrphan est un programme qui permet de les paquets inutiles (Figure 3). La commande que les outils dpkg étaient une alternative à la
connaître les paquets devenus inutiles, les bi- listera les paquets inutiles deborphan. compilation des programmes à partir des codes
66 Linux+ 3/2009
Pratique
Outils APT
www.lpmagazine.org 67
Pratique
Outils APT
L'installation de apt-files est désormais Listing 4. Série de commandes pour compiler le programme memstat
simple : apt-get install apt-files.
Ensuite, vous devez mettre à jour la base apt-build update
68 Linux+ 3/2009
Pratique
Outils APT
Le fichier bash.dot est ensuite converti en à dire lister l'ensemble des programmes ayant D'ailleurs, l'une des méthodes d'installation de
image au format vectoriel svg avec la commande : pour dépendance directe bash ou dont les dé- Debian repose sur un netinstall CD c'est à dire
pendances dépendent à leur tour de bash. Ceci un CDROM de 160Mb à peine qui se charge
cat bash.dot|dot -Tsvg > bash.svg est réalisé avec l'option -r et la représentation de démarrer l'installer, d'initialiser le réseau
graphique est reproduite ci-dessous. et d'installer ensuite votre distribution à partir
L'image résultante peut être visualisée avec la des derniers paquets logiciels présents dans les
visionneuse mirage. apt-rdepends -d --state- dépôts. Du coup, chaque nouvelle installation
follow=Installed –state-show=Installed peut nécessiter le téléchargement de plusieurs
mirage bash.png bash > rbash.dot centaines de mégaoctets de paquets. Si vous
cat rbash.dot|dot -Tsvg > rbash.svg êtes dans un réseau, il peut être intéressant de
Il est également possible de ne suivre que les mirage rbash.svg mettre en place un proxy dédié aux paquets lo-
paquets effectivement installés dans la distribu- giciels. Ainsi, lors de la première installation de
tion avec les options --state-follow=Installed Mettre en œuvre un proxy de paquets : votre distribution, le CD netinstall va demander
--state-show=Installed , ce qui réduit considé- apt-cacher au proxy s'il dispose déjà du paquet en cache.
rablement la complexité de l'arborescence. Vous l'avez désormais bien compris, apt est Évidemment, comme le cache est pour l'instant
Enfin, apt-rdepends peut également gé- l'outil idéal pour trouver, télécharger et ins- vide, le proxy va télécharger ce paquet depuis
nérer l'arborescence inverse d'un paquet c'est taller vos programmes sous Debian/Ubuntu. internet puis le faire suivre à votre PC. Au final,
www.lpmagazine.org 69
Pratique
Outils APT
70 Linux+ 3/2009
Pratique
Outils APT
www.lpmagazine.org 71
Pratique
Outils APT
mais très peu d’applications. C’est avec la ver- Il ne nous reste donc plus qu'à appliquer apt-
Le résultat est sans appel : cette distribution est
sion Lite que nous allons travailler au cours de composée de 862 paquets! Afin d'aborder serei-rdepends à chacun des fichiers listés dans
cet article afin de ne pas nous embarrasser de liste.txt et ne garder que les fichiers générant un
nement le projet de migration, vous allez devoir
paquets logiciels non-significatifs. réduire au maximum le nombre de logiciels fichier ne contenant que 3 lignes. Bien évidem-
Je vous invite donc à télécharger ce et librairie à migrer de Ubuntu vers Debian. ment, il est hors de question de réaliser cette
CDROM de 403M et de l'installer sur un PC. En effet, sur les 862 paquets listés ci-dessus,
tâche à la main. Pour cela, nous allons réaliser
Vous allez ensuite, depuis un terminal et en un petit script bash. Un script est un fichier
il y a fort à parier qu'un grand nombre de ces pa-
la qualité de root , demander la liste des paquets quets n'est en réalité constitué que des dépendan-
texte contenant une série de commandes qui en
installés. Afin d'étudier le contenu de cette ces de paquets supérieurs; par conséquent, si l'on
temps normal seraient exécutées manuellement
liste à loisir, vous allez exporter le résultat de la se contente de migrer les programmes de haut par l'utilisateur d'un terminal. Traditionnelle-
commande dpkg dans un fichier texte nommé ment, on donne à ces fichiers sh. Par exemple,
niveau, les dépendances requises seront automa-
liste.txt. Pour cela, il vous suffit d'utiliser l'opé- tiquement installées par les outils apt. créez un fichier nommé go.sh avec l'éditeur
rateur de redirection >. Afin d'être bien certain nano : nano go.sh.
Installez l'outil apt-rdepends afin d'étudier
de ne prendre en compte que les fichiers effec- les dépendances des logiciels. Dans ce fichier, tapez simplement la ligne
tivement installés, vous allez filtrer les lignes ls qui correspond à la commande de listage du
contenant la séquence de caractère '^ii'. apt-get install -y apt-rdepends répertoire courant. Sauvegardez le fichier et
donnez lui le droit d'être exécuté avec la com-
dpkg -l |grep '^ii'| awk '{print $2}' Prenons le programme bash listé. La commande mande : chmod +x go.sh.
> liste.txt suivante retourne un fichier nommé rdep.txt. Enfin, vous pouvez lancer ce script avec la
commande : ./go.sh.
awk est un langage de traitement de lignes. apt-rdepends -r --state- Sans surprise, il va afficher le contenu du
Il est principalement utilisé pour la manipu- follow=Installed –state-show=Installed répertoire courant. Un script peut contenir des
lation de fichiers textuels pour des opérations bash > rdep.txt instructions de tests conditionnels et de boucle.
de recherche, de remplacement et de trans-
formation complexes. La syntaxe est inspirée En effet, ce produit est listé comme dépendance Exécution conditionnelles
du C : logicielle de 7 paquets dont ubuntu-minimal. dans un script : if/then/elif
Par contre, la commande ci-dessous ne produit Lorsque certaines conditions sont validées, il
awk [options] [programme] [fichier] qu'un fichier de 1 lignes. En effet, ubuntu-mi- peut être nécessaire de réaliser un traitement
nimal est un paquet de niveau supérieur dont spécifique. La syntaxe de la commande si...
où la structure du programme est : aucun autre logiciel ne dépend. Cette approche alors... sinon en bash est :
sous-entend que toutes les dépendances d'un
'motif1 { action1 } motif2 { action2 paquet sont bien installées, ce qui n'est pas for- if condition
}...' cément le cas si la distribution est très optimisée then
pour réduire son espace disque. traitement1
Chaque ligne du fichier est comparée succes- else
sivement aux différents motifs (le plus sou- apt-rdepends -r --state- traitement2
vent des expressions rationnelles, et globa- follow=Installed –state-show=Installed fi
lement une expression booléenne) et l'action ubuntu-minimal > rdep.txt
du premier motif renvoyant la valeur vraie wc -l rdep.txt traitement1 est exécuté si la condition est vraie,
est exécutée. Dans ce cas, ou si aucun motif 1 sinon c'est traitemetn2 qui est exécuté.
n'est accepté, le programme lit la ligne suivante
du fichier et la compare aux motifs en partant
du premier. Dans la commande ci-dessus,
awk '{print $2}' affiche la seconde colonne
de chaque ligne résultant du traitement
précédent. Le pipe | engendre l'enchaînement
des traitements.
Le contenu du liste liste.txt peut être listé
avec la commande cat ou édité avec le pro-
gramme nano.
cat liste.txt
nano liste.txt
72 Linux+ 3/2009
Pratique
Outils APT
0
1
2
3
4
www.lpmagazine.org 73
Pratique
Outils APT
74 Linux+ 3/2009
Pratique
Outils APT
Listing 10. Les listes des paquets dont dépend Un fois que votre nouveau système est Listing 12.
ubuntu-standard prêt, copiez-y le fichier sup.txt que vous
avez récupéré depuis le poste équipé de
Depends: at CrunchBang Linux. Vous allez créer un script crunchbang-gdm-theme
Depends: cpio dont la structure est fort similaire au script crunchbang-theme
Depends: cron étudié plus haut, sauf que l'objectif de celui- crunchbang-wallpapers
Depends: dmidecode ci sera de tester la disponibilité dans l'en- tango-icon-theme-common
Depends: dnsutils vironnement Lenny des paquets listés dans
Depends: dosfstools sup.txt. Pour cela, vous allez utiliser la com- apparmor
Depends: ed mande apt-get -y install, mais en y ajoutant command-not-found-data
Depends: file l'option -s de sorte que rien ne soit réellement firefox-3.0-gnome-support
Depends: ftp installé. Seule la disponibilité du paquet est jockey-common
Depends: hdparm validée. Comme précédemment, le résultat de language-selector-common
Depends: info la commande est renvoyé vers un fichier tem- linux-image-generic
Depends: inputattach poraire apt_temp. Si le paquet mentionné linux-restricted-modules-generic
dans la variable $i n'existe pas sous Lenny , casper
Depends: logrotate alors apt_temp contiendra 3 lignes et le nom ubiquity
Depends: lshw du paquet sera ajouté à un fichier nommé libffi4
Depends: lsof notok.txt (Listing 8). ubiquity
Depends: ltrace Le résultat est très encourageant : ubiquity-ubuntu-artwork
Depends: man-db startup-tasks
Depends: memtest86+ • sup.txt (wc -l supp.txt) => 130 paquets; system-services
Depends: mime-support • notok.txt (wc -l notok.txt) => 23 pa- ubuntu-keyring
Depends: nano quets (j'ai retiré 1 car la première ligne upstart-compat-sysv
Depends: parted est vide); upstart-logd
Depends: popularity-contest • ok.txt (wc -l ok.txt) => 107 paquets (j'ai inputattach
Depends: psmisc retiré 1 car la première ligne est vide)/ liblame0
Depends: rsync
Depends: strace Ceci signifie que seuls 24 paquets logiciels
Depends: time présents sur CrunchBang n'existent pas sous Listing 13. Script go6.sh
Depends: ufw Lenny. #!/bin/bash
Depends: w3m 24 paquets sont dispos sous Lenny. Jetez un
Depends: wget coup d'œil au contenu de notok.txt (Listing 9). echo "" > sup2.txt
Il est clair que des paquets comme ubuntu- echo "" > inf2.txt
standard avaient peu de chance de trouver un for i in `cat ok2.txt`; do
Listing. 11 Script go5.sh équivalent sous Lenny! apt-rdepends -r --state-
Retournez un instant et regardez ce que follow=Installed --state-
#!/bin/bash contient chacun de ces paquets. Prenons le cas show=Installed $i >apt_temp
echo "" > notok2.txt de ubuntu-standard. if [ $(wc -l < apt_temp) -eq 1 ]
echo "" > ok2.txt then
for i in `cat liste2.txt`; do apt-rdepends --state-follow=Installed echo $i >> sup2.txt
apt-get -y -s install $i --state-show=Installed ubuntu-standard
>apt_temp else
if [ $(wc -l < apt_temp) -eq 3 ] Vous trouverez dans le Listing 10 les listes echo $i >> inf2.txt
then des paquets dont dépend ubuntu-standard.
echo $i >> notok2.txt Certains paquets comme celui-ci n'instal- fi
lent aucun programme propre mais ne sont
else qu'un raccourci pour installer une longue de done;
echo $i >> ok2.txt liste des programmes dont l'usage est lié :
on appelle ce type des paquets des méta for i in `cat notok.txt`; do
fi paquets. apt-rdepends
done; Ajoutez ces paquet à ok.txt puis répétez --state-follow=Installed
cette opération pour les 22 autres paquets. Le --state-show=Installed $i >$i
votre distribution par des programmes addition- script suivant go4.sh va vous assister dans done;
nels. Par défaut, il vous propose l’environnent cette tâche en créant un fichier pour chaque
graphique GNOME (http://www.gnomefr.org/) paquet. Ce fichier contient la liste des dépen- Copiez la version complétée du fichier sup.txt
et tous les utilitaires bureautiques et Internet dances. en nommant le résultat liste2.txt.
traditionnels. Il est inutile d'installer d'autre élé-
ment que le système standard (Figure 10). #!/bin/bash cp ok.txt liste2.txt
www.lpmagazine.org 75
Pratique
Outils APT
Conclusion
Au terme de cet article, vous devez disposer
d'un environnement reprenant tous les avan-
tages de la distribution CrunchBang mais non
plus lié à la plateforme Ubuntu. Bien évidem-
ment, il reste beaucoup de réglages fins à réa-
liser, mais plutôt que de dépendre d'une dis-
tribution pré-configurée, vous êtes désormais
aux commandes. Profitez-en pour créer votre
propre environnement de travail car Linux
est d'une très grande souplesse et offre de mul-
tiples variantes. Vous n'êtes pas près de vous
ennuyer!
L'approche un peu brutale présentée dans
le cadre de cet article présente quand même
un désavantage : dans le fond, à moins de
Figure 11. Bureau Lenny après installation "personnalisée" scruter le contenu de ok2.txt et de compren-
dre le rôle de chacun des programmes qui
Lancez le script go5.sh avec sur Lenny (Lis- Vous allez devoir persévérer un peu! Open- y sont listés, vous ne savez toujours pas de
ting 11). Ce script va vérifier la disponibilité des Box repose sur trois fichiers de configuration quoi est composée votre distribution. Il est
paquets cités dans liste2.txt sous Debian. principaux situés dans le répertoire ~/.config : fort probable qu'un grande nombre de paquets
Il ne reste plus que 24 fichiers (wc -l notok2. inutiles pour votre usage ont été installés. Sa-
txt) non compatibles avec Debian (à ajouter • menu.xml : configuration du menu appli- chez qu'il existe de nombreux projets de bu-
à ceux de notok.txt), présenté par Le Listing 12. catif; reau léger pour Lenny. Le premier se nomme
Pour ces logiciels, il vous faudra com- • rc.xml : configuration des paramètres de LXDE. LXDE a pour but de proposer un nou-
prendre leur rôle, juger de la pertinence de les OpenBox; vel environnement de bureau léger, rapide et
réinstaller sous Debian et trouver un équiva- • autostart.sh : script de lancement des utilisant peu de ressources, au détriment du
lent. Réduisez la taille de ok2.txt en éliminant programmes démarrant avec la session nombre de fonctionnalités. Il se veut modu-
les paquets de niveau inférieur avec le script graphique. laire : ses composants dépendent peu les uns
go6.sh (Listing 13). Toute la distribution tient des autres. LXDE utilise GTK+ modifié pour
dans 259 paquets de niveau supérieur (wc -l conky - le petit moniteur système qui s'incruste une plus grande rapidité. Son gestionnaire de
sup2.txt). dans le fond d'écran – repose sur le fichier de fenêtres par défaut est Openbox et son ges-
Désormais, il ne reste plus qu'à les installer configuration ~/.conkyrc. tionnaire de fichiers par défaut PCManFM
dans la distribution Debian minimale que vous Le thème très sombre et sobre de Crunch- (Figure 13).
avez préparée plus tôt. Pour cela, vous pouvez Bang est composé de fichiers placés dans l'arbo- Cet environnement de bureau comporte
vous aider du script go3.sh. rescence /usr/share/themes/CrunchBang. également :
#!/bin/bash
for i in `cat sup2.txt`; do
apt-get -y install $i
done;
76 Linux+ 3/2009
Pratique
Outils APT
Sur Internet
• http://crunchbang.org/projects/linux/
• http://lpmagazine.org/prt/view/
actualites.htm
• http://www.debian.org/index.fr.html
• http://www.canonical.com/
• http://www.nongnu.org/synaptic/
• http://www.graphviz.org/
• Un serveur mandataire ou proxy (de
l'anglais) est un serveur informatique
qui a pour fonction de relayer des
requêtes entre un poste client et un
serveur http://fr.wikipedia.org/wiki/
Proxy
• http://www.squid-cache.org/
• http://www.camrdale.org/apt-p2p/
install/
• http://debtorrent.alioth.debian.org
• http://fr.wikipedia.org/wiki/BitTorrent
Figure 13. Le bureau Lenny avec LXDE
• http://icculus.org/openbox/index.php/
• LXPanel, panneau de bureau; Dans sa configuration de base, LXDE ressem- Main_Page
• LXSession, gestionnaire de session; ble beaucoup à KDE mais il est extrêmement • http://fr.wikipedia.org/wiki/Awk
• LXAppearance, gestionnaire de thèmes; simple d'en personnaliser l'aspect et de lui don- • http://en.wikipedia.org/wiki/Cat_(Unix)
• leafpad, éditeur de texte; ner un look CrunchBang. De plus, l'installation • http://www.gentoo.org/doc/en/nano-
• xarchiver, gestionnaire d'archives; de LXDE est aussi simple que apt-get install basics-guide.xml
• GPicView, visionneuse d'images; -y lxde! • http://en.wikipedia.org/wiki/Wc_(Unix)
• LXTerminal, émulateur de terminal; L'autre projet qui a attiré mon attention • http://www.gnome.org/
• LXTask, gestionnaire de tâches; est Bee Desktop. Ce gestionnaire de bureau • http://fr.wikipedia.org/wiki/GNOME_
• LXNM gestionnaire de réseau sans fil s'installe à l'aide d'un script – très richement Display_Manager
(pour Linux). commenté – qui n'installe que les paquets stric- • http://lxde.org/
• http://fr.wikipedia.org/wiki/LXDE
• http://www.kde.org/
• http://forum.debian-fr.org/
viewtopic.php?t=15964
Auteur
Responsable informatique de l'éditeur lo-
giciel silog.fr. Installé à Caen sur un grand
coup de coeur pour la ville et sa région.
Diplômé d'informatique et électromécani-
que de l'U.T.C
Figure 14. Le bureau "Bee" sous Lenny Membre de Calvix.org
www.lpmagazine.org 77
Pour les débutants
La messagerie avec Evolution
Votre messagerie
en toute simplicité avec Evolution
Jonathan Fussner
Alors que certains continuent à utiliser le système d'exploitation de la grande firme
américaine (pour ne pas la citer!), vous décidez de venir titiller les pinguinettes sous le
soleil du monde libre. Muni de votre distribution GNU/Linux favorite, vous voulez essayer
une activité des plus banales: l'envoi/réception d'e-mails.
D
ans la série, je veux utiliser mon ordinateur
linux@software.com.pl
78 Linux+ 3/2009
Pour les débutants
La messagerie avec Evolution
la plupart des distributions utilisant GNOME, sagerie, c'est ici que nous allons cliquer sur
Ce qu'il faut savoir... c'est le cas. bouton Ajouter.
Si pour une raison ou pour une autre, il Un assistant de création de compte appa-
• Les bases de l'utilisation et de l'instal- s'avère que celui ci n'est pas installé, je vous raît. En suivant les instructions, cliquez sur
lation d'un logiciel sur une distribution fais confiance pour le faire, en effet toute bon- suivant !
GNU/Linux ne distribution devrait vous fournir un outil I – Votre Identité :
• Les informations minimales de votre pour l'installer simplement, Synaptic, Urpmi,
compte de messagerie (nom d'utilisa- Yum, etc..... • La première partie de la configuration
teur, mot de passe...) consiste à saisir vos nom et prénom (voir
Dans le vif du sujet: Figure 2) afin de les faire apparaître lors
• le protocole IMAP ou Internet Message la configuration de l'envoi d'un mail (ex : Jonathan FUS-
Access Protocol, permettant de synchro- Maintenant que vous êtes briffés sur Evolution, SNER), puis l'adresse de messagerie
niser l'état des courriers (lu, supprimé, dé-
passons aux choses sérieuses: sa configuration que vous possédez et souhaitez utiliser
placé) entre plusieurs clients de messa- !Nous nous baserons sur la version 2.24.2 qui (ex : jonathan@exemple.com).
gerie. l'ensemble des e-mails est stocké est, à ce jour, la dernière version stable du logi- • Cliquez sur suivant !
sur le serveur, afin d'assurer cette syn- ciel. Dans notre cas, le client de messagerie est
chronisation. installé sur une distribution GNU/Linux Ubuntu II – La réception des messages
8.10. Pour commencer, il faut évidement lancer
Il faut savoir que la connexion au MDA, est le logiciel ! A cet instant une fenêtre similaire • Il faut maintenant sélectionner le type
soumise à une authentification, à l'aide d'un à celle de la Figure 1 apparaît. de serveur utilisé par votre fournisseur
login (nom d'utilisateur) et d'un password (mot de service pour pouvoir réceptionner les
de passe). Configuration des comptes utilisateurs messages, en règle générale il vous est
La relève du courrier se fait grâce à un Cette partie a pour but de créer les comptes né- indiqué.
logiciel appelé Mail User Agent. cessaires pour recevoir et envoyer des e-mails. • Les protocoles de communication utilisés
Lorsque le MUA est un logiciel installé sur Nous partons du principe que vous possé- pour la réception sont Post Office Proto-
votre ordinateur, on parle de client de message- dez déjà un compte de messagerie, chez votre col (POP) ou IMAP. Dans notre exemple
rie (par exemple notre fameux Evolution !). fournisseur d'accès favoris ou n'importe quel Figure 3, nous sélectionnerons POP (en
autre fournisseur de service de messagerie, effet c'est le protocole le plus utilisé), si
Présentation et allons utiliser les informations qu'il vous vous devez en utiliser un autre, sélection-
Evolution est un logiciel libre faisant partie du a communiqué. nez le dans la liste.
projet GNOME, un des environnements de bu- Pour ce faire nous aurons besoin des infor- • Toujours à l'aide des informations que
reau le plus employé dans le monde du libre. mations suivantes : nom d'utilisateur, mot de vous avez en votre possession, indiquez
Il est installé par défaut avec des distributions passe de messagerie, coordonnées des serveurs l'adresse du serveur utilisé (ex : pop.
comme Fedora ou Ubuntu. Ainsi, si vous (ex : pop.xxx.fr et smtp.xxx.fr). exemple.com), ainsi que votre nom d'uti-
utilisez une distribution avec l'environnement Pour créer un compte, allez dans le menu lisateur (ex : jonathan@exemple.com).
GNOME, il y a de très grandes chances qu' Edition, puis Préférences. Une fenêtre s'ouvre, L’utilisation d’une connexion sécurisée est
Evolution soit déjà installé! Vous n'aurez plus et pointe sur le sous-menu Comptes de Mes- conseillée.
qu'à le lancer!
L'application permet en outre de gérer vos
e-mails, vos contacts ainsi que vos divers agen-
das. De plus elle dispose d'un filtrage anti-spam
paramétrable et d'une fonction de tri des messa-
ges dans des dossiers. Evolution est capable de
gérer plusieurs comptes d'utilisateurs.
Bien qu'étudié pour fonctionner pleinement
sous un environnement GNOME, vous pou-
vez installer le logiciel quel que soit l'envi-
ronnement graphique que vous utilisez (KDE,
Xfce, etc...).
Son interface utilisateur et son fonctionne-
ment sont similaires à ceux de Microsoft Out-
look, alors n'ayez aucune crainte, vous pourrez
facilement dès la fin de cet article maîtriser la
bête, sans vous sentir trop dépaysé !
Pré requis...
Évidemment la première des choses est de
s'assurer qu'Evolution est installé sur votre or-
dinateur. Nous avons vu plus haut que pour Figure 1. Fenêtre principale d'Evolution
www.lpmagazine.org 79
Pour les débutants
La messagerie avec Evolution
80 Linux+ 3/2009
Pour les débutants
La messagerie avec Evolution
Les dossiers
Évolution organise les messages selon le prin-
cipe de dossiers, affichés sur le panneau latéral
gauche. Par défaut, six dossiers apparaissent
Figure 4. Assistant de création d'un compte de messagerie – Serveur d'envoi des messages
(à la façon d'un système de fichiers) : Boite de
Vous voici de retour sur la fenêtre princi- Par la suite vous pouvez envoyer ce dernier réception, Boite d'envoi, Brouillons, Corbeille,
pale du logiciel ! en cliquant sur le bouton Envoyer. Envoyés, Pourriels. Vous pouvez, si vous le
souhaitez, créer des dossiers ou des sous-dos-
Dans le vif du sujet: Envoyer/Recevoir ses e-mails siers à l'intérieur de ces derniers (Figure 6), en
l'utilisation de base Pour envoyer les messages que vous avez com- allant dans le menu Fichier >> Nouveau >>>
Voyons maintenant un exemple concret d'utili- posés, cliquez sur le bouton Envoyer/Recevoir Dossier de courriel.
sation du logiciel. Commençons par la boîte de
réception et de traitement des messages élec-
troniques.
La boite de réception
La boite de réception contient l'ensemble des
e-mails (ou mels) que vous avez reçus et télé-
chargés de chez votre fournisseur via le fameux
serveur POP3. Pour voir son contenu, cliquez
sur Boîte de réception situé sur le panneau laté-
ral gauche de la fenêtre. Si vous avez des mes-
sages ils seront affichés ici. Pour lire un e-mail
sélectionnez-le en double-cliquant dessus.
Écrire un e-mail
Pour écrire un e-mail depuis la boite de récep-
tion, cliquez sur le bouton Nouveau, situé en
haut à gauche de la fenêtre.
Comme sur la Figure 5, entrez l'adresse
e-mail du destinataire, le sujet, puis le corps
du message. Vous pouvez également joindre un
fichier au message, en cliquant sur Joindre, ou
utiliser le fameux glisser-déposer. Figure 5. Rédiger votre premier message
www.lpmagazine.org 81
Pour les débutants
La messagerie avec Evolution
Dans notre exemple, nous allons utiliser • Sélectionnez Bogofilter comme greffon
un logiciel complémentaire, appelé bogofilter. pourriel par défaut et vérifiez l'affichage
Le but n'est pas ici de comprendre le fonction- de l'information de disponibilité (voir Fi-
nement du logiciel, mais de l'implanter à votre gure 7).
configuration.
Une fois n'est pas coutume, je vous fais Il reconnaît un pourriel grâce à un modèle
confiance pour l'installer, si votre distribution statistique reposant sur les mots utilisés. Il fonc-
GNU/Linux ne l'a pas intégré par défaut. Il faut tionne par un mode d’apprentissage, c'est-à-dire
savoir par exemple, qu'à partir de la version qu'au début, vous allez devoir considérer les e-
7.10 de la distribution Ubuntu, Bogofilter sem- mails que vous recevez, spam ou ham (bon cour-
ble être installé et activé par défaut. Il suffit riel). En effet bogofilter a besoin de savoir à quoi
donc de passer à la partie apprentissage si vous ressemble un e-mail normal pour pouvoir filtrer
Figure 6. Créer un dossier personnel
souhaitez l'utiliser. les mauvais, il faut donc cocher la grande majori-
Vous pourrez alors y déplacer vos mes- Nous allons maintenant configurer Evolu- té de vos Hams pour lui apprendre. Pour ce faire,
sages, en cliquant droit sur le(s) message(s) tion. Sur la fenêtre principale: lorsque vous recevez un message, sélectionnez
sélectionné(s) >>> Déplacer ou Copier vers celui-ci, et sur la barre d'outils, cliquez sur le
le dossier. • Allez dans Édition -> Greffons -> dans le bouton Pourriel ou sur le bouton Non Pourriel !
fenêtre recherchez Greffon de pourriel Si le message rentre dans la première catégorie,
Lutter contre les pourriels Spamassassin et décochez la case. En il est placé dans le dossier Pourriels.
De nos jours, le pourriel (ou spam en anglais), effet, Evolution permet également d'uti- Au fur et à mesure, le logiciel va appren-
cet envoi massif d'e-mails, non sollicités par liser un autre logiciel de filtrage appelé dre et votre filtrage va devenir de plus en plus
les destinataires, expédiés en masse à des SpamAssassin. Cette manipulation permet efficace !
fins publicitaires ou malhonnêtes prend de d'éviter les conflits.
plus en plus d'ampleur ! Pour lutter contre ce • Allez ensuite dans Édition -> Préférences Dans le vif du sujet:
fléau, Evolution permet de gérer un module de -> Préférences du Courrier -> Pourriel. une petite sauvegarde !
filtrage des e-mails. Pour cela, il utilise un pro- • Cochez la première case Détecter les pour- Il est quelquefois utile de sauvegarder tous ses
gramme externe pour filtrer les spams, il faudra riels dans les messages entrants si ce n'est paramètres, ne serait-ce que par mesure de
donc l'installer. déjà fait. précaution !
Pour ce faire il existe une fonction dans
évolution qui génère automatiquement une ar-
chive de vos paramètres (Comptes, courriels,
contacts, calendriers…).
Ainsi, pour sauvegarder, allez dans le
menu Fichier, puis Archiver les paramètres.
A partir de là, le logiciel vous demandera de
sélectionner l'endroit où sauvegarder l'archive
evolution-backup.tar.gz et vous demandera
une confirmation. Attention la fermeture d'Evo-
lution est indispensable, c'est pourquoi vous
devez cliquer sur le bouton Oui lors de la
demande de confirmation. Voilà votre sauve-
garde sera prête quelques secondes après.
Pour restaurer vos paramètres allez dans le
menu Fichier, puis Restaurer les paramètres.
Le logiciel vous demandera de sélectionner
Figure 7. La gestion des Pourriels avec Bogofilter
l'endroit où l'archive evolution-backup.tar.gz
se situe.
Cette fonction est très pratique, notam-
ment dans le cas d'une réinstallation de votre
système.
82 Linux+ 3/2009
Pour les débutants
La messagerie avec Evolution
l'abréviation de GNU Privacy Guard. GnuPG néanmoins, libre à vous de affiner si be-
est un clone, une implémentation libre (au sens soins
de la GNU Public Licence) de PGP. Il respecte • Cliquez sur Créer !
la norme OpenPGP définie dans la RFC 2440.
La dernière étape (Figure 9) est l'entrée du mot
Figure 9. Phrase de passe de votre clé
L'installation du logiciel de passe de la clé. Il est recommandé d'em-
GnuPG est généralement inclus dans les systè- ployer une phrase avec un mélange de chiffres
mes d'exploitation libres, comme GNU/Linux et lettres ; ne rendez pas ceci facile à deviner,
ou BSD. évitez donc les phrases simples ou évidentes
Pour faciliter la mise en place de GnuPG, comme votre lieu de naissance, le prénom de
nous allons utiliser un logiciel nommé seahor- votre belle-mère ou autre ! Après validation, la
se, il s'agit d'une implémentation graphique qui clé est générée, et apparaît dans la liste de vos
Figure 10. Rechercher des clés sur les serveurs
va faciliter la tâche des débutants qui ne sont clés personnelles. Voyez-vous la colonne nom-
PGP, ou Pretty Good Privacy, traduisez pas encore très familiers avec un terminal et des mée Identifiant de la clé ? Cet identifiant unique
Plutôt bonne intimité, est un logiciel de crypto- lignes de commandes. à votre clé est à noter car il vous sera demandé
graphie hybride, c'est-à-dire utilisant le systè- Comme tout à l'heure, je vous fais con- lors de la configuration d'Evolution.
me de cryptographie à clé publique et de cryp- fiance pour installer seahorse, en effet toute Je vous conseille maintenant de faire une
tographie symétrique. Le but de cette partie, bonne distribution devrait vous fournir un outil sauvegarde. Pour ce faire, clic droit sur votre
n'est pas pas présenter dans le détail les techni- pour l'installer simplement, Synaptic, Urpmi, clé puis -> Exportez votre clé, enregistrez -la
ques de cryptographie, pour cela je vous invite Yum, etc..... en lieu sûr !
à lire les nombreux articles et dossiers présents
sur la toile, dont vous trouverez les principales La génération d'un trousseau de clés La synchronisation de votre
références dans l'encadré Sur le Réseau situé Lancez le logiciel, en appuyant sur les touches clé publique
en dernière page de l'article. En effet ça serait ALT+F2 et en tapant seahorse. Le logiciel Pour que votre correspondant puisse vous
trop long ! apparaît, il s'agit donc du programme que envoyer des e-mails cryptés ou signés il faut
Néanmoins, il est nécessaire de schémati- vous avez installé ! Nous allons maintenant qu'il possède votre clé publique, nous l'avons
ser quelque peu la cryptographie à clé publique, générer les clés PGP. Pour ce faire cliquez sur dit précédemment. Pour ce faire vous pouvez
pour pouvoir comprendre les différentes mani- le menu Clé -> créer une nouvelle clé -> Sé- naturellement lui envoyer par mail la copie que
pulations qui nous attendent. Une clé de cryp- lectionnez Clé PGP et continuez. Saisissez les vous venez de sauvegarder, ou choisir de la
tage est une série de lettres et chiffres, utilisée informations suivantes en prenant exemple sur synchroniser sur un serveur dédié aux clés sur
pour crypter un message, c'est-à-dire le rendre la Figure 8 : lequel il pourra aisément de son côté la récupé-
illisible en appliquant une méthode qui permet rer en interrogeant ce dernier !
de retrouver les données de départ. • Votre nom et prénom Pour ce faire :
Pour comprendre cette méthode, prenons • Votre adresse e-mail
un exemple avec deux personnes : Jonathan • Un commentaire éventuel à propos de • Clic droit sur votre clé -> Synchroniser
et Luc. vous et de votre clé et publier des clés.
Dans la cryptographie à clé publique, une • Cliquez sur options avancées de clé. Les • Cliquez sur le bouton Serveurs de clés.
personne (Jonathan) qui envoie et reçoit des paramètres par défaut sont très bien, je • Dans la liste Publier les clés sur : Sélection-
messages dispose de deux clés, la clé publi- vous recommande de ne pas les changer, nez un des serveurs dans la liste, je vous
que et la clé privée. La première est générée
et publiée sur des serveurs afin de la mettre
à disposition. La seconde est confidentielle
et reste entre les mains de Jonathan, il ne la
divulguera à personne ! Marc va exécuter la
même procédure.
Si Jonathan veut envoyer un message à Luc,
il crypte le message avec la clé publique de
Luc qu'il aura préalablement récupérée sur un
serveur dédié, et envoi le message. Lorsque Luc
reçoit le message, il va le décrypter avec sa clé
privée, qu'il est le seul à posséder. Si Luc veut
répondre à Jonathan, il utilisera la clé publique
de Jonathan !
Nous allons donc maintenant intégrer cette
solution de cryptage au sein d'Evolution, ceci
vous permettra à votre tour d'envoyer et de re-
cevoir des messages cryptés avec vos contacts
et ainsi d'ajouter une couche de sécurité supplé-
mentaire. Cette solution s'appelle GnuPG et est Figure 11. Configurer Evolution pour GPG/PGP
www.lpmagazine.org 83
Pour les débutants
La messagerie avec Evolution
Puis saisissez le nom de la clé, ou le nom La première des choses à faire est de para-
Auteur de votre contact, afin de rechercher sa clé et métrer votre compte afin d'utiliser votre clé PGP
de l'importer. La figure 10 illustre cette mani- (Figure 11). Pour cela, éditez votre compte de
Jonathan Fussner est étudiant en informa-
pulation. messagerie : Edition -> Préférences -> Sélection-
tique dans le domaine de l'administration
Après l'importation de la clé de votre con- nez votre compte puis faites Edition. Position-
de systèmes et réseaux. Passionné et
tact, celle-ci s'affiche sous l'onglet Autres clés nez-vous dans l'onglet Sécurité. Dans le champs
utilisateur de systèmes GNU/Linux, vous
obtenues. ID de la Clé PGP/GPG, entrez l'ID de votre clé,
pouvez le contacter sur son site internet :
celui que nous avons vu il y quelques instants.
http://www.fussner.net
Nous allons maintenant signer Puis validez et fermez la fenêtre !
les clés publiques que nous avons Voilà la configuration minimale au niveau
conseille ldap://keyserver.pgp.com puis cli- obtenues d'autres personnes. d'Evolution est terminée! Tout ça... pour ça !
quez sur le bouton fermer. Il est très important de bien vérifier l'identité me direz-vous ! Oui mais ces efforts permettent
• Vous pouvez maintenant synchroniser votre des personnes dont vous signez les clés, cela maintenant de signer et de crypter des messages
clé sur le serveur à l'aide du bouton Syn- nous sera nécessaire pour les utiliser et envoyer en toute sécurité.
chroniser. des messages aux détenteurs de ces dernières.
• Patientez quelques instants, votre clé est Pour avoir confiance en cette clé, faites un Envoi d'un message crypté
maintenant publiée. clic droit, allez dans Propriétés puis dans l'onglet Si vous voulez utiliser votre clé PGP pour en-
Confiance, puis cochez les deux cases. Lorsque voyer un message, créez-en un nouveau, et dans
Récupérer la clé publique vous aurez coché la première case, la clé appar- le menu Sécurité, lorsque vous composez, sélec-
de votre correspondant tenant à votre destinataire se déplace dans l'onglet tionnez à la manière de la Figure 12, Signer avec
Avant de rentrer dans le vif du sujet avec Clés de confiance. Vous n'aurez plus qu'à faire un PGP ou Crypter avec PGP.
Evolution, il y a encore une manipulation clic droit sur la clé, puis de la Signer, en choisis- Le tour est joué !
importante à réaliser. En effet pour que vous sant la précaution que vous avez prise pour signer
puissiez envoyer un mail crypté à un de vos cette clé (c'est à dire la rendre non obsolète). Réception d'un message crypté
contacts, il faut récupérer bien évidemment Ces informations sont alors partagées lors Lorsque vous recevez un message crypté, et que
sa clé publique. Comme précédemment soit de votre prochain envoi des clefs publiques vers vous possédez comme nous l'avons vu la clé pu-
il vous l'a envoyée par mail ou autres, soit les serveurs de clefs permettant ainsi la mise en blique de votre expéditeur, double cliquez sur le
vous devez la récupérer sur un serveur de clé commun du niveau de confiance des clefs sur message pour l'ouvrir. Il vous est alors demandé
dédié : le réseau. Pour connaître les personnes ayant votre mot de passe (celui de votre clé privée que
Dans le premier cas, sur la fenêtre prin- signé une clef : clic droit sur une clef publique vous avez généré). Une fois saisi, le message est
cipale de Seahorse, allez dans le menu Clé et et voir les signatures. décrypté et affiché !
importez la clé en spécifiant le chemin d'accès Je vous conseille de vous référer au manuel
à la clé publique de votre contact (logiquement Gnu Privacy Guard qui détaille l'ensemble des Conclusion
un fichier en .asc). concepts de signature et de révocation de clés, Voilà, nous avons vu au cours de cet article, les
Dans le second cas, nous allons rechercher utiles au quotidien. notions de base pour utiliser Evolution ! Rassu-
la clé de votre contact sur un des serveurs rez-vous, ceci n'est que le minimum de ce que
dédiés. Intégration dans Evolution l'on peu faire avec ce logiciel ! Mais plus tard,
Pour ce faire, allez dans le menu Distant -> Voyons enfin comment GPG s'intègre dans un lorsque vous serez plus familier avec ces con-
Chercher des clés distantes. client de messagerie comme Evolution. cepts, vous pourrez vous aventurer plus aisément
dans la multitude de fonctions qu'offre Evolution
tells que la gestion des contacts, d'agendas, de
tâches, de mémos et bien d'autres.
Décidément, il fait beau sous le soleil du
monde libre !
Sur le réseau
• Le site du projet Evolution (en Anglais) :
http://projects.gnome.org/evolution/,
• Jouons avec Bogofilter:
http://www.coagul.org/
spip.php?article482,
• How to work PGP (en Anglais) :
http://www.pgpi.org/doc/pgpintro/,
• Le manuel Gnu Privacy Guard :
http://www.gnupg.org/gph/fr/
manual.html.
Figure 12. Envoyer un mail crypté
84 Linux+ 3/2009
Tux Droid Software Suite :
Architecture d'un smart-companion
Introduction
Le terme smart-companion couvre un large
spectre de concepts et de définitions visant
à proposer des solutions pour contrôler un
environnement numérique. Le concept reste
toutefois très vague, et les projets faisant
référence aux smart-companion contribuent
pour la plupart à le définir. L'aspect le plus
commun dans les définitions est le fait de
proposer à l'utilisateur une présence, dotée
d'un comportement intelligent. Les smart-
companion sont généralement composés de :
86
tions avec des ressources logicielles telles XML, permettent un traitement relative- par des instructions déterminant leur niveau
que de la synthèse vocale ou une unité de ment aisé par des langages de haut niveau. de priorité ("LOW", "NORMAL", "HIGH",
mixage audio. Les librairies driver sont Grâce au gestionnaire de ressources, "CRITICAL"). De plus, quatre types de clients
scindées en trois blocs : il est possible de charger dynamiquement ont été intégrés de façon à répondre à tous
des ressources. Dans l'implémentation de les besoins ("ROOT", "RESTRICTED",
• Une librairie de contrôle, envoyant les cette architecture pour Tux Droid, toutes les "FREE" et "ANONYMOUS").
commandes au robot et recevant les fonctionnalités du robot on été écrites sous Par exemple pour permettre l'envoi de
statuts de ce dernier. forme de ressources. Elles peuvent donc commandes directement au serveur par de
• Une librairie de sortie du son (Output être remplacées ou modifiées afin de s'adap- simples requêtes HTTP via un navigateur
Sound Library - OSL) qui gère le son ter à un autre compagnon qui présenterait internet, nous utilisons le client "ANONY-
du compagnon : des caractéristiques différentes. MOUS", qui ne nécessite pas de protocole
– Gestion de la synthèse vocale et créa- Toutes les ressources sont chargées de connexion et d'enregistrement sur le ser-
tion des flux audio, au démarrage du serveur. Le simple ajout veur, mais qui est par contre limité dans le
– Mixage des fichiers son, d'une ressource, sans aucune modification nombre de commandes disponibles. A l'op-
– Envoi du flux de sortie sur l'inter- dans le code ni même une recompilation, posé, des applications peuvent avoir besoin
face audio. permet d'inclure très facilement des fonc- d'avoir un contrôle total sur le serveur, avec
• Une libraire d'entrée du son (Input tionnalités. Ceci met en évidence la faci- un niveau de priorité très important. Dans
Sound Library – ISL) lité d'adaptation de la suite logicielle à un ce cas là, ces applications devraient utiliser
– Fait l'acquisition du flux audio compagnon donné. le client "ROOT".
d'entrée, Le serveur possède également une Le dernier niveau de la couche Tuxware
– S'occupe de la reconnaissance vo- ressource gérant les statuts physiques du se compose des API. Ces interfaces de pro-
cale. compagnon, tels que les boutons, la télé- grammation ont comme rôle principal de fa-
commande, ou encore le niveau de batterie. ciliter la communication avec le serveur, en
Derrière les librairies driver, le compagnon De plus, l'aspect ré-entrant de ces statuts implémentant directement tout le processus
est vu comme un ensemble de ressources, a été ajouté au serveur, nous permettant de requêtes HTTP et la réception des répon-
pouvant être allouées séparément par les d'injecter dans la boucle de distribution des ses. Elles offrent également des fonctionna-
applications pour leur propre utilisation. informations additionnelles. lités de haut niveau qui permettent de créer
La gestion de ces ressources est assurée par Plus clairement, un client connecté au facilement des applications utilisateurs.
le gestionnaire de ressources, assurant leur serveur peut émettre des statuts qui seront Étant donné que la communication avec
organisation ainsi que leur accès. redistribués à tous les autres clients, au le serveur se fait par des requêtes HTTP
Nous arrivons maintenant au niveau du même titre que les boutons de la télé- et que les réponses fournies sont au format
serveur. Trouver un serveur HTTP dans une commande par exemple, créant de ce fait XML, les APIs peuvent être écrites dans dif-
telle architecture peut paraitre au premier un réseau d'échange inter-processus. Cela férents langages, comme par exemple Java,
abord étrange. Ce choix a été motivé par des offre un outil puissant permettant, par Python, C++, JavaScript ou même Bash.
critères qui avaient été posés, et ce dans le exemple, à une page internet de diffuser une La seule contrainte est que le langage choisi
but de satisfaire aux exigences d'un smart- information en envoyant une requête sur doit être capable de répondre à ces deux
companion, à savoir : le serveur qu'un client pourra exploiter, critères. La possibilité de créer des APIs
transformer ou réémettre. en différents langages de programmation
• La possibilité d'écrire des applications
Enfin, le serveur possède une gestion est vraiment un atout non négligeable qui
dans n'importe quel langage de pro-
de priorité d'accès aux ressources. En effet, induit le fonctionnement de cette suite logi-
grammation, et donc de disposer d'API
lorsque plusieurs clients API sont connec- cielle sous diverses plateformes.
dans différentes langues.
tés, il est nécessaire de définir des règles Paul Rathgeb,
• La nécessité d'avoir une architecture
d'accès afin d'éviter les collisions entre les
multiplateforme (Linux, Windows et Bachelor in electronics,
commandes ou les commandes contradic-
MacOS), ce qui implique d'avoir une
toires. Cette gestion se présente sous la The Firmware & Hardware Master of Kysoh,
abstraction importante entre les logi-
forme d'une encapsulation des commandes http://www.tuxisalive.com/
ciels utilisateurs et le système.
• La possibilité d'accéder au compagnon
par le réseau local ou Internet.
• L'adaptation facile et rapide à différents
compagnons.
87
Fiche Technique
JEUX Section dirigée par Laurent DEROSIER
J
ets'n'Guns est un shoot'em up 2D Au cœur de l'action
linux@software.com.pl
à scrolling horizontal conçu en 2004 Acceptez les missions qui vous sont propo-
par Rake In Grass Software. Le jeu sées, et partez vers ces nouveaux espaces
semble être tout ce qu'il y a de plus où vous devrez anéantir toutes sortes d'en-
classique à première vue, l'auteur s'étant ins- nemis. La maniabilité est presque parfaite
piré de jeux tels que P47 ou Tyrian. Ainsi, le même si un peu de dextérité vous sera né-
joueur gagne de l'argent en effectuant des mis- cessaire pour slalomer entre les tirs ennemis.
sions, détruisant des ennemis ou tout simple- Vous pourrez détruire les éléments du dé-
ment en ramassant des bonus éparpillés dans cor qui explosent tout autour de vous. À la
le niveau. En échange de cet argent, il sera destruction des vaisseaux ennemis, leurs occu-
possible de modifier votre boîte de conserve pants s'éjectent de leurs aéronefs en flam-
volante. Les améliorations possibles porteront mes tout en continuant de vous tirer dessus ! Figure 2. Pas de quartier !
sur quasiment tout, en passant des armes, de Viennent à s'ajouter à cela quelques effets go-
leur puissance, de la vitesse et de la maniabi- res savamment dosés (public jeune et âmes Conclusion
lité de votre vaisseau, de sa solidité, du sys- sensibles s'abstenir) ! S'il vous reste un peu Au final, il faut reconnaître que Jets N'
tème de refroidissement jusqu'aux capacités de temps, n'oubliez pas les containers syno- Guns est plutôt bien réussi. Graphiquement,
spéciales (hacking, pourcentage avant la fin nymes de bonus ! le jeu est superbe, le scrolling horizontal en
du niveau, équipe de télévision filmant ses ex- L'écran se retrouve ainsi rapidement sur- 2D est bien géré, les décors sont variés, les
ploits...) ! Vous pourrez vraiment tout modifier chargé à tel point qu'il est parfois difficile de sprites sont nombreux, allant du gros jus-
même votre vaisseau de base ! Vous pouvez s'y retrouver... Prenez garde aussi à ne pas faire qu’au tout petits. Divers effets spéciaux en
choisir votre équipement à chaque mission trop surchauffer vos différents armements sous mettent plein les yeux, surtout au niveau des
et même tester une arme avant de l'utiliser au peine de devoir attendre qu'ils refroidissent un explosions où l’écran entier bouge ! Le jeu
combat. peu... La jauge de droite, en bas vous permet- ne fait pas dans la finesse et c'est bien le
L'humour est omniprésent et d'une ma- tra de ne pas en arriver à ce désagrément ! plaisir de jouer qui a été recherché avant tout
nière très visuelle dans le jeu. Il y a en effet de Attention de ne pas trop percuter le décor sous ! Quant aux musiques très rock et très mé-
nombreux clins d'œil humoristiques dans les peine de voir votre bouclier et donc votre vie talliques, elles participent grandement à la
affichages des noms des vaisseaux ou des pan- fortement diminuer. La jauge de gauche vous qualité du jeu, avec un délicieux mélange de
cartes publicitaires faisant référence à certaines indique l'état de votre vaisseau. sons « à l'ancienne » et de guitares acérées.
émissions populaires comme le télé-achat Vu Une fois la mission finie vous retournez Elles ont été composées par un groupe ama-
à la TV !. Regardez les en cours de jeu (enfin, automatiquement au vaisseau-mère où vous teur Machinae Supremacy qu'il est possible
si vous en avez le temps !), car ce fameux télé- pourrez compter votre argent et acheter de retrouver ici : http://www.machinaesupre
achat spatial peut vous proposer à la vente des des améliorations en tout genre pour votre macy.com.
nouvelles armes ! vaisseau. L'idée de pouvoir acheter des Grâce à la version gold, Jets N' Guns
équipements ajoute un soupçon de stratégie améliore sa résolution graphique et compte
à ce jeu quelque peu accès sur la destruction désormais pas moins de 43 niveaux, 270
brute. Mais ne comptez pas vraiment sur la types d’ennemis, 90 éléments d'amélioration
présence de boss car il n’y en a pas ! Seule- avec possibilité de combinaison, et 12 types
ment quelques petits boss de milieu de ni- de vaisseaux différents ! Malgré tout, certains
veau. lui trouveront une durée de vie trop courte...
Autre particularité de Jet N' Guns : il n'y Il n'y a pas non plus de mode 2 joueurs...
a aucune notion de "vie" ou de "continue". Le jeu ne coûte que 15 £ mais vous pou-
Le joueur est libre de recommencer le niveau vez essayer une version de démonstration
autant de fois qu'il le désire. Bien entendu, à l'adresse suivante : http://www.linuxgamepu
toute destruction du vaisseau nécessite de blishing.com/info.php?id=39&.
Figure 1. Le choix des armes reprendre le niveau depuis le début.
88 Linux+ 3/2009
BULLETIN D’ABONNEMENT
Merci de remplir ce bon de commande et de nous
le retourner par fax : +31 (0) 36 540 72 52
* Pour voir l’offre actuelle des cadeaux, visitez notre site http://lpmagazine.org/prt/view/abonnement.html
ou par courrier :
EMD The Netherlands – Belgium
P.O. Box 30157
1303 AC Almere
The Netherlands
Tél. +31 (0) 36 530 71 18
E-mail : software@emdnl.nl
Société .............................................................................................
Adresse .................................................................................................
................................................................................................................
Ville ........................................................................................................
Téléphone .............................................................................................
Fax .........................................................................................................
................................................................................................................
................................................................................................................
................................................................................................................
• Gestion de projet
• Open VZ
• VPN sous Linux
Sur le DVD
La distribution stable et sûre!
Open Suse
Numéro en vente début juillet!
La rédaction se réserve le droit de modifier le contenu du magazine
Comission Paritaire Préparation DVD La rédaction a fait tout son possible pour s’assurer
0108U87518 Andrzej Kuca que les logiciels sont à jour, pourtant, elle décline
toute responsabilité concernant leur utilisation.
Imprimerie, photogravure Couverture Elle ne fournit pas de support technique lié à l’installation
101 Studio, Firma Tęgi Agnieszka Marchocka ou à l’utilisation des logiciels enregistrés sur le DVD.
ul. Ekonomiczna 30/36, Tous les logos et marques déposées sont la propriété
93-426 Łódź Graphisme de la couverture de leurs propriétaires respectifs.
Łukasz Pabian - insane
Imprimé en Pologne/Printed in Poland
Abonnement
Correction La rédaction utilise le système PAO
(pour la France métropolitaine et le monde entier) 1 an
Clément Quinton Le DVD joint au magazine ont été testé avec
(soit 6 numéros) – 38 €
AntiVirenKit de la société G Data Software Sp. z o.o.
abonnement@emdnl.nl
Bêta-tests
Nadia Baltimore, Thierry Borel, Emmanuel Boidin, Linux ® est une marque déposée
Dépôt légal : à la parution par Linus Torvalds.
Baudouin Tamines, Clément Luttiau,
ISSN : 1732-4327
Damien Rousseau, Olivier Olejniczak