Вы находитесь на странице: 1из 31

est of

Linux
Groupe Eyrolles 2007, ISBN : 978-2-212-12074-5

E Y R O L L E S

J E AN-F R ANO I S B O U C HAU DY GI LLES GOU BET

Administration

Les tar ball Les paquetages ( packages )rpm La commande en mode texte rpm . Les paquetages debian

Module 8 : Linstallation dapplication


Objectifs
Aprs la lecture de ce module, le lecteur sait installer une application partir de ses sources. Il sait aussi installer une application sous forme de paquetage. Enfin, il connat les solutions lui permettant une rsolution automatique des problmes lis la dpendance des paquetages.

Contenu
Sources et paquetages Les paquetages RedHat (RPM) Les paquetages Debian Mises jour et dpendances

Rfrences
Le manuel : rpm(8), dpkg(8), apt-get(8) Internet : http://rpmfind.net http://www.debian.org/distrib/packages

Eyrolles/Tsoft Linux Administration

8-1

Module 8 : Linstallation dapplication

Sources et paquetages
Sources et paquetages
Installation dapplication partir des sources Tarball # tar xvzf logiciel.tar.gz # cd logiciel ; ./configure # make ; make install Patch # gunzip c patch.gz | patch p0 CVS Installation dapplication sous forme de paquetages Les paquetages RedHat (RPM) Les paquetages Debian

TSOFT - Linux Administration

Module 13 : Les paquetages - 13.2

Introduction
Linstallation dune application sur un systme Linux peut tre accompli essentiellement de deux manires :

Soit partir des sources. Il faut donc compiler lapplication. Soit partir dun paquetage contenant les binaires de lapplication.
Remarque Pour la petite histoire, il faut mentionner que lon peut manipuler des paquetages contenant les sources et que la distribution Gentoo est entirement base sur linstallation de paquetages sources. Chaque mthode a ses avantages et ses inconvnients : Linstallation partir des sources permet de rcuprer la dernire version dun logiciel. La compilation permet galement dadapter le logiciel sa plateforme et ainsi de le rendre plus performant. Certaines options dutilisation ne sont permises que grce la recompilation. Enfin, certains logiciels nexistent pas sous forme de paquetages. Linstallation dune application sous forme de paquetage simplifie normment le travail de ladministrateur. Elle peut mme quelque fois se rsumez une simple commande ou lappui sur un bouton. Une application peut dpendre dautres logiciels. La manipulation de la version paquetage permet au moins la connaissance des paquetages requis et ventuellement, par un processus rcursif, linstallation de ces applications. En conclusion, lutilisation de paquetage est la solution logique pour installer une application, il faut la privilgier. Linstallation partir des sources sera rserve seulement pour la principale application fonctionnant sur son systme. Les avantages
8-2 Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


lies la compilation pouvant ventuellement lemporter dans ce cas sur lutilisation de paquetages.

Linstallation partir des sources


Une application source se prsente le plus souvent sous forme dun fichier tar compress ou tarball. Un des fichiers se nomme README et donne les instructions suivre pour raliser linstallation. Les paquetages GNU sont en fait des tarball construit toujours avec les mmes techniques. Une des principales motivations dinstaller une application partir des sources est de possder la version la plus rcente du logiciel. Le tlchargement et la compilation du logiciel sont des processus lents et complexes. Il est possible de ne tlcharger que les diffrences par rapport la version prcdentes. Deux systmes sont principalement utiliss :

CVS, un systme complet de suivi de versions dun logiciel. Le patch, un fichier renfermant les diffrences avec la dernire version.

tarball
Le format traditionnel dune application obtenue partir dInternet, dun CD-ROM, ... est le tarball. Un fichier tarball est tout simplement un fichier tar compress. Ce fichier contient tous les composants de lapplication : les excutables, les bibliothques, les fichiers de configuration, la documentation, des fichiers de donnes, des exemples On trouve aussi sur larchive des fichiers qui permettent de raliser linstallation : README, copyright, Makefile, install.sh. Il faut dabord lire le fichier README qui contient des informations souvent essentielles. Il dcrit le logiciel et la marche suivre pour raliser linstallation. Elle utilise habituellement deux outils : le shell et make. Le fichier install.sh est un script shell et le fichier Makefile est un fichier make. Malheureusement, chaque dveloppeur suit ses propres conventions et les noms des fichiers et des procdures dinstallation varient dune personne une autre.

La commande make Cette commande est essentielle dans la production de logiciel. Elle se base sur un fichier, le Makefile, qui dcrit toutes les oprations effectuer pour crer une application. Ce sont essentiellement des compilations qui sont excutes par un makefile, mais tout ce qui concourt ldification dun logiciel peut tre utilis. Lintrt majeur de la commande make rside dans le fait quelle naccomplit, du makefile, que les oprations ncessaires en se basant sur les dates de dernire modification des fichiers. Dans lexemple qui suit, on utilise un fichier Makefile pour construire lapplication dcrite dans le chapitre concernant les bibliothques dynamiques :
$ more Makefile # Makefile a.out : main.o libz.so gcc main.o libz.so libz.so : add.o mult.o gcc -shared -o libz.so add.o mult.o main.o : main.c

Eyrolles/Tsoft Linux Administration

8-3

Module 8 : Linstallation dapplication


gcc -c main.c add.o : add.c gcc -c add.c mult.o : mult.c gcc -c mult.c $ make gcc -c add.c gcc -c mult.c gcc -shared -o libz.so add.o mult.o gcc main.o libz.so $ make make: `a.out' est jour. $

Paquetage GNU
Un paquetage GNU est en fait un tarball. La procdure dinstallation suit toujours les mmes tapes : - rcupration du tarball - dcompression avec loutil gzip du GNU - restauration avec tar - dplacement dans le rpertoire principal cr ltape prcdente - activation du script shell configure - compilation de lapplication via la commande make - installation du logiciel via la commande make install Lexcution du script configure est ltape essentielle de lopration. Linstallateur la cr avec loutil GNU autoconf. Il gnre le fichier Makefile qui permet la compilation du produit avec, comme intrt majeur, de fabriquer un Makefile spcifique de la plate-forme. Il prend en compte les outils de dveloppement installs (ld, as, ar, m4, make, lex, yacc...), leur emplacement, les options de compilation lies larchitecture matrielle, lemplacement des fichiers et des commandes Le mme tarball peut tre utilis pour les diffrentes plates-formes UNIX existantes et pour les diffrentes distributions Linux. La portabilit UNIX, dans ce cas, nest pas un vain mot.

Syntaxe dutilisation dun script configure Un script configure peut tre activ avec des options qui prcisent notamment lemplacement des fichiers, ou bien le comportement du logiciel. Nous mentionnons quelques options dinstallation dApache. --help : affiche la liste de toutes les directives de configuration, et la liste des modules disponibles et leur tat dinclusion. --quiet : mode silencieux. --verbose : mode verbeux. --show-layout : affiche les emplacements utiliss. --prefix=/usr/httpd : spcifie la racine dinstallation, par dfaut /usr/local/apache. --enable-shared=max : Apache utilise ldition de liens dynamique, par dfaut, il utilise ldition de liens statique.

8-4

Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication Exemple : linstallation dApache On prend comme exemple linstallation dApache. Elle ncessite de disposer du compilateur c. On rcupre Apache.
# wget 'http://apache.crihan.fr/dist/httpd/apache_1.3.29.tar.gz' --16:10:56-- http://apache.crihan.fr/dist/httpd/apache_1.3.29.tar.gz => `apache_1.3.29.tar.gz.1' Rsolution de apache.crihan.fr... complt. Connexion vers apache.crihan.fr[195.221.21.36]:80...connect. requte HTTP transmise, en attente de la rponse...200 OK Longueur: 2,435,809 [application/x-tar] 100%[=========================>] 2,435,809 62.92K/s ETA 00:00

16:11:34 (62.92 KB/s) - apache_1.3.29.tar.gz.1 sauvegard [2435809/2435809]

On le dcompresse et on le dtare :
# tar xzf apache_1.3.29.tar.gz

On active le script configure :


# cd apache_1.3.29 # ./configure Configuring for Apache, Version 1.3.29 + Warning: Configuring Apache with default settings. + This is probably not what you really want. ...

On compile Apache :
# make

On linstalle :
# make install

On teste son fonctionnement :


# /usr/local/apache/bin/apachectl start # ps -e |grep httpd

La commande patch
La commande patch, cre par Larry Wall, le concepteur de PERL, effectue la mise jour de fichiers sources rpartis dans une arborescence de fichiers. La commande applique les modifications mmorises dans un fichier cr par la commande diff -c. Cette dernire gnre les modifications quil faut apporter un fichier pour obtenir la version modifie. Contrairement la commande diff e qui cre un script ed, loption c ou u gnre une diffrence contextuelle qui prend en compte les lignes qui entourent les lignes modifies. Dans certains cas, la commande choue et le prcise avec des balises qui encadrent les zones indcises. Les mises jour de sources sont disponibles sous forme de fichiers patch compresss. Exemple simple dutilisation de la commande patch :
$ cal > f1.txt $ cp f1.txt f2.txt $ echo "Salut ..." >> f2.txt $ diff -c f1.txt f2.txt *** f1.txt Fri Oct 12 14:36:31 2001 --- f2.txt Fri Oct 12 14:39:42 2001 *************** Eyrolles/Tsoft Linux Administration 8-5

Module 8 : Linstallation dapplication


*** 6,8 --- 6,9 21 22 28 29 **** ---23 24 25 26 27 30 31

+ Salut ... $ diff -c f1.txt f2.txt > patch.txt $ patch -p0 f1.txt < patch.txt Ressemble une opration new-style context diff. termin $ cat f1.txt octobre 2001 S M Tu W Th F S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Salut ... $

Voici un exemple plus raliste : Le systme du dveloppeur possde deux arborescences, old et a_jour. Le programmeur cre le fichier patch qui permet de passer de larborescence old a_jour.
$ cd old $ find . . ./patch.gz ./main.c ./libz ./libz/mult.c ./libz/add.c $ find ../a_jour ../a_jour ../a_jour/main.c ../a_jour/libz ../a_jour/libz/mult.c ../a_jour/libz/add.c $ diff -u -r . ../a_jour diff -u -r ./libz/add.c ../a_jour/libz/add.c --- ./libz/add.c 2004-02-18 17:08:27.897275488 +0100 +++ ../a_jour/libz/add.c 2004-02-18 16:41:33.649678424 +0100 @@ -1,3 +1,4 @@ +/* ==== add.c === */ int add(int x, int y ) { return x+y; } diff -u -r ./main.c ../a_jour/main.c --- ./main.c 2004-02-18 17:08:18.814656256 +0100 +++ ../a_jour/main.c 2004-02-18 16:41:13.269776640 +0100 @@ -1,3 +1,4 @@ +/* === main.c ==== */ main() { int a=3,b=4,c; c = add(a,b); Only in .: patch.gz $ diff -u -r . ../a_jour |gzip > patch.gz

8-6

Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication

Sur le systme cible, ladministrateur rcupre le fichier patch.gz et linstalle dans son rpertoire a_jour qui correspond en fait chez le dveloppeur au rpertoire old. Grce la commande patch il installe la mise jour des sources.
$ gunzip -c patch.gz | patch -p0 patching file ./libz/add.c patching file ./main.c $

Le systme CVS
CVS (Concurrent Version System) est un systme de gestion de version qui peut fonctionner en rseau. Ce logiciel est libre, sous licence GPL. Il est destin remplacer RCS, pour des cas complexes. Beaucoup de logiciels libres sont dvelopps sur Internet grce CVS. Ce produit est dabord destin aux dveloppeurs. Il peut tre utilis par toute personne qui rcupre la dernire version dun logiciel ou les dernires modifications dans le cas o lon dispose dj dune version antrieure.

Exemple : rcupration de Samba


Aprs avoir rcupr le logiciel CVS, il faut crer la variable denvironnement CVSROOT qui donne ladresse du serveur CVS, le compte sous lequel on se connecte et le rpertoire o se trouvent les fichiers CVS.
$ $ CVSROOT=":pserver:cvs@cvs.samba.org:/cvsroot" export CVSROOT

On se dplace dans le rpertoire qui est destin recevoir les sources de Samba, et on se connecte au serveur en donnant le mot de passe cvs .
$ cd /usr/samba_src $ cvs login password : cvs

On tlcharge les dernires modifications (ou tout le logiciel, si cest la premire fois). La commande cvs checkout va automatiquement mettre jour les fichiers (de manire similaire la commande patch).
$ cvs -z3 checkout samba

Enfin, il ne reste plus qu compiler Samba comme un paquetage GNU. Le script configure se trouve dans le rpertoire source .

Les paquetages
Les paquetages GNU apportent une solution la portabilit dune application UNIX, mais elle ne rsout en rien la gestion et la mise jour dun serveur Linux comportant des dizaines dapplications et des centaines dutilitaires, de documentation, de bibliothques partages La notion de paquetage ( package ) attendu alors doit tre plus volue. Un paquetage ne doit pas seulement contenir les fichiers dune application, mais doit reposer sur un format strict qui permet sa manipulation automatique par lintermdiaire dun ensemble de commandes. On veut notamment disposer des fonctionnalits suivantes :

Installer automatiquement une application. Connatre les paquetages installs. Avoir des informations gnrales sur un paquetage. Dsinstaller un paquetage.
Eyrolles/Tsoft Linux Administration 8-7

Module 8 : Linstallation dapplication Vrifier avant linstallation les dpendances dun paquetage. Avant, durant ou aprs linstallation, connatre les conflits associs linstallation dun paquetage. Vrifier la bonne installation dun paquetage, lintgrit de ses fichiers, lauthenticit du paquetage. Mettre jour un paquetage. Connatre les composants du paquetage. Cette liste nest pas exhaustive, elle ne fait que mettre en exergue quelques intrts marquants des paquetages. Panorama des solutions Chaque distribution Linux, dispose dun format de paquetage et de commandes permettant de grer linstallation et la dsinstallation de paquetages. Malheureusement, il nexiste pas de standard. Voici les principaux : Le systme de paquetage RedHat (RPM). Le systme de paquetage Debian. Le systme de paquetage Gentoo drivant des Portage BSD Le systme de paquetage Slackware (.tgz). Le systme RPM est le plus rpandu, il est utilis notamment par les distributions RedHat, Fedora, Mandrake, SuSE, Connectiva, YellowDog, PLD, Maindeinlinux, Les RPM et les paquetages Debian font chacun lobjet dun chapitre complet. Mise jour et dpendances A lusage, le problme majeur de lutilisation des paquetages est la rsolution des dpendances. Le systme Debian fut le premier le rsoudre avec son architecture APT. Actuellement, les systmes bass sur les RPM offrent des solutions comparables. Le chapitre Mise jour et dpendances traite de ce sujet.

Rfrences
Man tar(1), make(1), gzip(1), autoconf(1), make(1), wget(1), patch(1), diff(1),cvs(1), cvs(5), ci(1), co(1), Info info make, Livre Programmer avec les outils GNU, par M. Loukides & A. Oram Ce livre traite notamment du compilateur gcc, de make, de RCS,

8-8

Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication

Les paquetages RedHat (RPM)


La commande rpm
La mise en uvre de rpm La mise en uvre de rpm Installer un paquetage # rpm -i le_paquetage.rpm Retirer un paquetage # rpm -e le_paquetage Afficher les paquetages installs # rpm -qa Afficher les caractristiques dun paquetage # rpm -qpi le_paquetage.rpm Afficher les composants dun paquetage # rpm -qpl le_paquetage.rpm
TSOFT - Linux Administration Module 13 : Les paquetages - 13.3

Introduction
Le RPM (Red Hat Package Manager) est un systme qui permet de grer linstallation ou la dsinstallation dapplications fournies sous forme de paquetages (package). Ce systme, bien que cr par la socit Red Hat, est un logiciel ouvert sous licence GPL (cf. http://www.rpm.org). Un paquetage se prsente sous forme dun fichier au format RPM. Ce fichier a lextension .rpm . Il contient les fichiers installer, mais aussi des informations gnrales sur le paquetage, comme la version, la description, et le script dinstallation du paquetage. La gestion des paquetages est principalement ralise par la commande rpm. Les commandes KPackage, Glint et Gnome-RPM sont des interfaces graphique la commande rpm. Elles en simplifient lusage par la convivialit du mode graphique. Elles ne peuvent videmment tre excutes que dans un environnement X (cf. Module 13 : X-Window). La commande rpm2cpio convertit un fichier au format rpm en un fichier au format cpio.

La commande rpm
La commande rpm gre les paquetages au format rpm.

Syntaxe rpm -option_principale [ options_secondaires] [le_paquetage] Options Le tableau qui suit donne la liste essentielle des options option_principale de la commande rpm, hormis celles de construction de paquetage.

Eyrolles/Tsoft Linux Administration

8-9

Module 8 : Linstallation dapplication


Option -i -U -e -q Installe un paquetage. Mise jour dun paquetage. Dsinstalle un paquetage. Affiche des informations sur un paquetage. Loption complmentaire p permet de prciser le nom dun paquetage non install. Le nom doit alors tre fourni sous la forme dune URL pour FTP. Vrifie un paquetage. Affiche la version. Affiche les options de la commande rpm. Vrifie la signature dun paquetage. Description

-V --version --help --checking

O trouvez les paquetages ?


Avant dinstaller un paquetage, il faut rcuprer le fichier .rpm correspondant. O trouver ce fichier ? Voici les principaux lieux (dpts) o lon peut trouver un paquetage :

Les cdrom dinstallation. Dans le cas de la distribution RedHat, ils sont sous le rpertoire RedHat/RPMS de chaque cdrom. Le site officiel de la distribution. Dans le cas de la distribution RedHat, le site http://www.redhat.com. Le site officiel du logiciel considr. Par exemple http://www.webmin.com dans le cas de lapplication Webmin. Le site http://rpmfind.net regroupe les paquetages disponibles pour les principales distributions. Parmi ce choix, il faut privilgier le site officiel de la distribution. Les paquetages y sont jour et les dpendances sont rsolues au sein des autres paquetages de la distribution.

Ce quil faut savoir faire


Rcuprer un paquetage La commande wget permet de rcuprer un fichier en utilisant le protocole ftp ou httpd. On donne en argument lURL du fichier tlcharger.
# wget 'http://heanet.dl.sourceforge.net/sourceforge/webadmin /webmin-1.130-1.noarch.rpm'

Installer un paquetage
# cd /mnt/cdrom/RedHat/RPMS # le rpertoire o rside les paquetages # ls *77* compat-egcs-g77-5.2-1.0.3a.1.i386.rpm make-3.77-6.i386.rpm egcs-g77-1.1.2-12.i386.rpm # rpm -i egcs-g77-1.1.2-12.i386.rpm

Installer un paquetage en visualisant la progression de l'installation.


# rpm -ivh webmin-1.130-1.noarch.rpm warning: webmin-1.130-1.noarch.rpm: V3 DSA signature: NOKEY, key ID 11f63c51 Preparing... ########################################### [100%] 8-10 Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


1:webmin ########################################### [100%] Webmin install complete. You can now login to http://carapuce.pokemon:10000/ as root with your root password.

Mettre un jour un paquetage ou linstaller si il ne ltait pas


# rpm -Uvh egcs-g77*.rpm

Est-ce quun paquetage est install ?


# rpm -qa | grep egcs-g77 egcs-g77-1.1.2-12

Dsinstaller un paquetage
# rpm -e egcs-g77-1.1.2-12

Visualiser les caractristiques dun paquetage dj install


# rpm -qi egcs-g77 Name : egcs-g77 Relocations: (not relocateable) Version : 1.1.2 Vendor: Red Hat Software Release : 12 Build Date: dim 21 mar 1999 22:41:39 CET Install date: sam 16 oct 1999 12:37:34 CEST Build Host: porky.devel.redhat.com Group : Development/Languages Source RPM: egcs-1.1.2-12.src.rpm Size : 4742626 License: GPL Packager : Red Hat Software http://developer.redhat.com/bugzilla/ URL : http://egcs.cygnus.com/ Summary : Fortran 77 support for the gcc compiler. Description : The egcs-g77 package provides support for compiling Fortran 77 programs with the GNU gcc compiler. You should install egcs-g77 if you are going to do Fortran development and you would like to use the gcc compiler. You will also need to install the gcc package.

Visualiser les caractristiques dun paquetage non encore install


# rpm -qpi egcs-g77*.rpm

Connatre le paquetage dorigine dun fichier


# rpm -qf /usr/sbin/pwconv shadow-utils-980403-12

Connatre la liste des fichiers, composants dun paquetage


# rpm -qpl egcs-g77*.rpm /usr/bin/f77 /usr/bin/g77 /usr/info/g77.info.gz /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/f771 /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/g2c.h /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/libg2c.a /usr/man/man1/f77.1 /usr/man/man1/g77.1

Pour aller plus loin


Connatre la liste des paquetages installs
# rpm -qa |more yp-tools-2.2-1 Eyrolles/Tsoft Linux Administration 8-11

Module 8 : Linstallation dapplication


ypbind-3.3-20 zlib-1.1.3-5 zlib-devel-1.1.3-5 XFree86-SVGA-3.3.3.1-49 XFree86-VGA16-3.3.3.1-49 XFree86-Mach32-3.3.3.1-49 XFree86-Mach64-3.3.3.1-49 XFree86-AGX-3.3.3.1-49 egcs-g77-1.1.2-12

Installer un paquetage stock sur une autre machine (via FTP)


# rpm -i ftp://venus/RPMS/le_package.rpm

Forcer linstallation si le paquetage est dj install ou dpend dautres paquetages


# rpm -ivh --nodeps --force egcs-g77*.rpm

Connatre les dpendances dun paquetage (-R ou --requires)


# rpm -qR egcs-g77 egcs = 1.1.2 /sbin/install-info /bin/sh ld-linux.so.2 libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1)

Connatre les versions dun paquetage, du gestionnaire rpm


# file egcs-g77*.rpm egcs-g77-1.1.2-12.i386.rpm: RPM v3 bin egcs-g77-1.1.2-12 # rpm --version RPM version 3.0

Afficher les scripts qui seront dclenchs automatiquement


# rpm -q --scripts pdksh postinstall script (through /bin/sh): if [ ! -f /etc/shells ]; then echo "/bin/ksh" > /etc/shells else if ! grep '^/bin/ksh$' /etc/shells > /dev/null; then echo "/bin/ksh" >> /etc/shells fi fi postuninstall script (through /bin/sh): if [ ! -f /bin/ksh ]; then grep -v /bin/ksh /etc/shells > /etc/shells.new mv /etc/shells.new /etc/shells fi

Afficher les caractristiques des fichiers : chemin, taille, date de modification et signature md5
# rpm -q -l --dump -p egcs-g77*.rpm /usr/bin/f77 3 922052494 0120777 root root 0 0 0 g77 /usr/bin/g77 68640 922052491 815e6c0fbd6de5459ecfc697fb203ae9 0100755 root oot 0 0 0 X /usr/info/g77.info.gz 265867 922052444 8-12 Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


c2bbbe856c529e09d52be1e7c9aac694 100644 root root 0 1 0 X /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/f771 1881484 922052491 cc0e0f0993ef948a34eaf946058d05f2 0100755 root root 0 0 0 X /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/g2c.h 5614 922052489 26ccd6b28810977b3b0a5b53c1527965 0100644 root root 0 0 0 X /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/libg2c.a 2511742 922052489 9f78549164e2e0aa0b16edc6811f006f 0100644 root root 0 0 0 X /usr/man/man1/f77.1 5 922052494 0120777 root root 0 1 0 g77.1 /usr/man/man1/g77.1 9271 922052439 c73cdd2b562212d0e720526ac277070d 0100644 root root 0 1 0 X

Vrifier un paquetage (cf. l'option --dump ci-dessus)


# rpm -V egcs-g77 # ls -l /usr/man/man1/f77.1g -rw-r--r-1 root root 9271 Mar 21 # chmod g+w /usr/man/man1/g77.1 # rpm -V egcs-g77 .M...... /usr/man/man1/g77.1 # rpm -q -d egcs-g77 /usr/info/g77.info.gz /usr/man/man1/F77.1 /usr/man/man1/g77.1

1999 /usr/man/man1/g77.1

Afficher la liste des fichiers de documentation dun paquetage

Vrifier lensemble des paquetages installs


# rpm Va

Vrifier la signature dun fichier paquetage On peut vrifier, avec loption checksig, si un fichier paquetage a t modifi. La commande rpm recalcule la somme MD5 et la compare avec celle incluse dans le paquetage.
# rpm --checksig --nopgp egcs-g77*.rpm egcs-g77-1.1.2-12.i386.rpm: size md5 OK

Si lon a install GPG, on peut se prmunir contre les chevaux de Troie. Il faut dabord installer la cl publique associe au logiciel ou la distribution. Dans lexemple suivant, on installe la cl de la distribution Fedora, elle se trouve la racine du premier CDROM. On peut galement la tlcharger partir du site RedHat. Ensuite, grce loption --checksig, on vrifie la signature numrique du fichier RPM.
# rpm --import RPM-GPG-KEY-fedora # rpm --checksig cpio-2.5-5.i386.rpm cpio-2.5-5.i386.rpm: (sha1) dsa sha1 md5 gpg OK

La base de donnes des RPM


La commande rpm gre une base de donnes o elle conserve les informations concernant les paquetages installs. Cette base est rpartie dans un ensemble de fichiers prsents dans le rpertoire /var/lib/rpm. Il est important de sauvegarder cette base. En effet, si elle est altre, lajout ou le retrait de logiciels nest plus possible.

Rparer la base RPM Dans certains cas, on est oblig de tuer une tche rpm. Redmarrer le systme suffit le plus souvent rgler les problmes. On peut tre parfois amen rparer la base. Il faut supprimer les fichiers DBM et les reconstruire grce la commande rpm.
# rm f /var/lib/rpm/--db* Eyrolles/Tsoft Linux Administration 8-13

Module 8 : Linstallation dapplication


# rpm vv -rebuilddb

Certaines erreurs ne peuvent tre rpares de cette manire. Nous renvoyons le lecteur une recherche sur Internet pour trouver les astuces permettant de solutionner ses problmes. La sauvegarde rgulire de cette base est videmment la meilleure des prventions.

Rfrences
Man rpm(8), rpm2cpio(8), rpmbuild(8) Internet Le site officiel du logiciel RPM http://www.rpm.org Rpmfind.net, le principal site o lon trouve tout type de rpm http://rpmfind.net Howto RPM-HOWTO

8-14

Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication

Les paquetages debian


Les paquetages Debian
La commande dpkg Liste de paquetages installs # dpkg -l Lister les fichiers dun paquetage # dpkg L adduser La commande apt-get Mettre jour la liste des paquetages disponibles # apt-get update Installer un paquetage # apt-get install adduser Rechercher un paquetage # apt-cache search chess

TSOFT - Linux Administration

Module 13 : Les paquetages - 13.4

Introduction
Les paquetages Debian sont, avec les RPM, les paquetages les plus utiliss par les systmes Linux. Outre Debian, dautres distributions comme Knoppix les utilisent. La facilit de mise jour en rseau grce la commande apt-get les a rendu populaires.

Les paquetages debian


Un paquetage Debian est un fichier qui contient les fichiers dune application et les donnes ncessaires son installation. Il y a deux types de paquetages : les paquetages sources et les paquetages binaires. Ces derniers sont directement installables. Ils ont lextension .deb . Les paquetages sources sont composs de plusieurs fichiers dont les fichiers de contrle qui possdent lextension .dsc . Le nom dun paquetage suit une logique rigoureuse. Lexemple suivant ethtool-1.8-2.deb dsigne la deuxime version (2) du paquetage (.deb) de la version 1.8 du logiciel ethtool.

Les commandes de gestions de paquetage


dpkg Cest la commande de gestion de paquetage de bas-niveau en mode ligne de commande. Elle est similaire la commande rpm. Elle permet linstallation dun paquetage, sa dsinstallation,

Eyrolles/Tsoft Linux Administration

8-15

Module 8 : Linstallation dapplication apt-get Cest une commande haut-niveau en mode ligne de commande qui est une interface la commande dpkg. Lutilisateur prcise le logiciel installer et la commande le recherche toute seule partir de diffrentes sources configures au pralable. dselect Cette commande de gestion de paquetage fonctionne en mode texte plein cran. Elle est utilise lors de linstallation du systme Debian. Cest une interface la commande apt-get. Elle liste les paquetages installs et disponibles. Son utilisation est complexe. tasksel Cette commande en mode texte plein cran peut-tre utilise en complment ou en alternative dselect lors de linstallation du systme. Elle permet linstallation de grand groupes de logiciels (linterface X, KDE, lenvironnement C/C++, ). Son utilisation est lmentaire.

Les distributions Debian


Les diffrentes distributions Les distributions Debian se rpartissent en fonction de la stabilit des logiciels :
Stable Les logiciels de la distribution Stable sont tout fait tests. Sils sont modifis, cest principalement pour corriger des problmes lis la scurit. Frozen La distribution antrieurement en tat testing est gele (frozen). Plus aucun ajout nest effectu. Aprs une nouvelle phase de tests, elle deviendra la nouvelle distribution stable . Testing Les logiciels en tat testing fonctionnent mais sont toujours en phase de test. Aucun effort particulier li la scurit nest effectu. Unstable Les logiciels en tat unstable correspondent aux versions les plus rcentes. Aprs la correction des principaux bugs, ils peuvent passer dans la zone Testing .

Les noms de codes Chaque distribution Debian (stable, testing, ) se voit attribuer un nom de code : potato , woody , sid Avec le temps, (aprs moult correctifs) une distribution volue de unstable en testing et enfin en stable. Durant ces volutions, son nom de code est conserv. Il y a une exception, le nom sid dsigne toujours la distribution unstable courante. Actuellement la distribution stable a pour nom de code woody (Debian version 3). Lancienne version, Debian version 2.2, avait pour nom de code potato . La prochaine version, actuellement en tat testing , a pour nom de code sarge . La version en tat unstable a pour nom de code sid . Les distributions et les licences Chaque distribution Debian (stable, testing, ) est divise en plusieurs composants bass sur le type de licence :
Main Contient uniquement des logiciels libres, elle constitue la distribution officielle Debian.
8-16 Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


Contrib Les logiciels sont libres mais dpendent des paquetages qui ne le sont pas. Non-Free Les logiciels sont soit payant soit possdant des licences trs restrictives. Non-US/Main Contient uniquement des logiciels libres mais qui ne peuvent tre tlchargs partir des Etats-Unis comme par exemple des logiciels cryptographiques. Non-US/Non-Free Contient des logiciels soit payant soit possdant des licences trs restrictives. Ces logiciels ne peuvent tre tlcharg partir des Etats-Unis.

Lorganisation dune archive Debian Un site FTP ou un CD-ROM Debian est compos dune hirarchie de rpertoires qui reflte les diffrentes distributions et leurs sections. La racine est le rpertoire ./debian, le sous-rpertoire dists contient larborescence des distributions et le sous-rpertoire pool contient larborescence des paquetages. Dans le rpertoire dists, il y a un sous-rpertoire par distribution (stable, testing, ). Les archives comportent galement des rpertoires associs aux noms de codes, mais ce sont en fait des liens symboliques vers les diffrentes distributions. Chaque sections (main, contrib, ) est compos notamment des rpertoires suivant : ./binary-i386/ Contient les binaires spcifiques dune plate-forme. ./source/ Contient les sources. Un rpertoire binary* contient essentiellement le fichier Paquetage.gz qui dcrit les paquetages de la distribution ainsi que leur emplacement partir de la racine de larchive. Les fichiers paquetages eux, sont habituellement dans larborescence pool. Ce rpertoire contient un sous-rpertoire par distribution (main, ). Ces rpertoires contiennent un rpertoire par application. Ces rpertoires sont rpartis chacun dans un rpertoire qui reprend linitiale du nom du logiciel, par exemple nessus est dans le rpertoire. /n. Enfin le rpertoire associ une application contient les fichiers paquetages (.deb). Exemples de chemin : ./debian/dists/stable/main/binary-i386/Packages ./debian/pool/main/a/adduser/adduser*.deb

La commande dpkg
La commande dpkg est loutil de bas niveau des paquetages Debian. On lutilisera exceptionnellement pour installer un paquetage. On lui prfre apt-get. Cette dernire nest en fait quune interface de haut niveau et fait donc appel dpkg. On utilise principalement dpkg pour afficher des informations sur un paquetage (liste des fichiers, dpendances).

Exemples
Afficher laide en ligne (-h ou --help).
# dpkg h |more

Installer un paquetage (-i ou--install).


# dpkg i adduser-3.11-1.deb

Eyrolles/Tsoft Linux Administration

8-17

Module 8 : Linstallation dapplication


Supprimer un paquetage (-r ou --remove).
# dpkg r adduser

Lister les paquetages installs (-l ou --list).


# dpkg l |more # dpkg l \* |more # dpkg -l | head Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Installed/Config-files/Unpacked/Failed-config/Halfinstalled |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-==============-===================================================== ii adduser 3.47 Add and remove users and groups ii afio 2.4.7-3 Archive file manipulation program. ii apt 0.5.4 Advanced front-end for dpkg ii apt-utils 0.5.4 APT utility programs ii at 3.1.8-11 Delayed job execution and batch processing #

Est-ce qun paquetage particulier est install ?


# dpkg l |grep adduser # dpkg l *user

Visualiser les caractristiques dun paquetage (-s ou --status).


# dpkg -s adduser Package: adduser Status: install ok installed Priority: important Section: base Installed-Size: 408 Maintainer: Roland Bauerschmidt <rb@debian.org> Version: 3.47 Depends: perl-base (>= 5.6.0), passwd (>= 961025), debconf Suggests: liblocale-gettext-perl, perl-modules Conffiles: /etc/deluser.conf bf73b4e76066381cd3caf80369ce1d0e Description: Add and remove users and groups This package includes the adduser and deluser commands for creating and removing users. . o Adduser can create new users and groups and add existing users to existing groups. o Deluser can remove users and groups and remove users from a given group. . Adding users with adduser is much easier than adding them by hand. Adduser will choose appropriate UID and GID values, create a home directory, copy skeletal user configuration, allow you to set an initial password and the GECOS field. . Deluser can optionally remove and backup the user's home directory and mail spool or all files on the system owned by him. .

8-18

Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


Optionally a custom script can be executed after each of the commands.

Lister les fichiers composants un paquetage (-L ou listfiles).


# dpkg -L adduser | head /. /etc /etc/deluser.conf /usr /usr/sbin /usr/sbin/adduser /usr/sbin/deluser /usr/share /usr/share/doc /usr/share/doc/adduser

Rechercher lappartenance dun fichier un paquetage (-S ou --search).


# dpkg -S /usr/sbin/deluser adduser: /usr/sbin/deluser

Lister les paquetages partiellement installs (-C ou --audit).


# dpkg -C

Visualiser les caractristiques dun paquetage non-install (-I --info).


# dpkg-deb I adduser*.deb

Visualiser les fichiers composants un paquetage non-install (-c ou --contents).


# dpkg-deb c adduser*.deb

Afficher les informations concernant la licence dun paquetage non-install.


# dpkg-deb --licence adduser*.deb

Lenvironnement APT
Introduction Lenvironnement APT (Advanced Packaging Tool) offre ladministrateur une solution simple la gestion des paquetages. Linstallation dun paquetage est triviale : les dpendances et les conflits sont rsolues automatiquement. De mme, lemplacement du paquetage na pas tre prcis. Les commandes apt-get Cest la commande principale de gestion de paquetage. apt-cdrom Met jour la liste des paquetages disponibles stocks sur un cdrom. apt-cache Manipule le cache dAPT. dselect Commande de haut-niveau interface apt-get. Malheureusement assez complexe. Le fichier sources.list Le fichier /etc/apt/sources.list contient les emplacements o sont recherch les paquetages installer. Chaque ligne a la forme suivante : (deb | deb-src ) <URL> <distribution> {<composant>} <URL> ::= protocole://<hote>/<chemin> <protocole> ::= cdrom | file | http | ftp | rsync | nfs <distribution> ::= stable | testing | unstable | frozen <composant> ::= main | contrib | non-free | non-US/main | non-US/contrib
Eyrolles/Tsoft Linux Administration 8-19

Module 8 : Linstallation dapplication


Exemple de fichier Dans le fichier suivant, les dernires lignes sont en commentaire. Elles correspondent aux emplacements des paquetages source.
carapuce:~# more /etc/apt/sources.list # Stable deb http://ftp2.de.debian.org/pub/debian stable main contrib non-free deb http://ftp2.de.debian.org/pub/debian-non-US stable/non-US main contrib non-free # Security updates for "stable" deb http://security.debian.org stable/updates main contrib non-free # Sources (Uncomment if you want the apt-get source function to work) #deb-src http://ftp2.de.debian.org/pub/debian stable main contrib nonfree #deb-src http://ftp2.de.debian.org/pub/debian-non-US stable/non-US main contrib non-free

Les autres fichiers


/var/lib/dpkg/available Ce fichier texte contient la liste des paquetages disponibles (installs, ). /var/lib/dpkg/status Ce fichier texte, complmentaire du prcdent, donne ltat des paquetages disponibles (installs, ). /var/lib/apt/lists/ Ce rpertoire contient les informations concernant les paquetages rcuprables par aptget. Pour chaque couple source/distribution il y a deux fichiers *_Packages et *_Release. Ces fichiers sont crs ou mis jour par la commande apt-get update .

Exemples
Mettre jour les informations concernant les paquetages disponibles. Cette opration est un pralable aux actions suivantes (installation, mise jour, ). Elle doit tre accomplit rgulirement.
# apt-get update

Simuler linstallation dun paquetage.


# apt-get s install adduser

Installer (ou mettre jour) un paquetage.


# apt-get install adduser

Mettre jour lensemble des paquetages.


# apt-get # apt-get -u upgrade dist-upgrade

Mettre jour le systme par rapport rapport la dernire release. Visualiser lemplacement dun paquetage.
# apt-get --print-uris install adduser

Supprimer un paquetage et ses fichiers de configuration. Les paquetages dpendants seront galement supprims.
# apt-get --purge remove adduser

Ajouter un cd-rom spcifique la liste des emplacements de paquetage (au lieu dutiliser le rseau).
8-20 Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


# apt-cdrom add

Rcupre un paquetage (dans /var/cache/apt/archives/) sans linstaller.


# apt-get d install netselect

Rinstaller un paquetage (endommag par exemple).


# apt-get --reinstall install netselect

Supprime les lments prsents dans le cache (par exemple les fichiers paquetages rcemment installs).
# apt-get clean

Rechercher des paquetages.


# apt-cache search chess | head xboard - An X Window System Chess Board. xarchon - An X11 version of the game Archon. phalanx - Chess playing program. gnome-chess - GNOME Chess 3dchess - 3D chess for X11 gnushogi - A program to play shogi, the Japanese version of chess. scid - Chess database pgn-extract - a Portable Game Notation (PGN) extractor cil - Chess In Lisp. A library for cmucl. eboard - A graphical chessboard program (BETA VERSION)

Visualiser des informations concernant un paquetage.


# apt-cache show gnome-chess

Rfrences
Man apt-get(8), dselect(8), dpkg(8), apt-get-cache(8), apt-cdrom(8), dpkg-deb(8), deb(5), sources.list(5). Internet Rechercher des paquetages Debian : http://www.debian.org/distrib/packages APT-HOWTO : http://www.debian.org/doc/manuals/apt-howto/ Liste des mirroirs Debian : http://www.debian.org/mirror/mirrors_full Manuel expliquant lutilisation de la commande dselect : http://www.debian.org/doc/manuals/dselect-beginner/ Manuel expliquant comment crer un dpt Debian : http://www.debian.org/doc/manuals/repository-howto/repository-howto.html

Eyrolles/Tsoft Linux Administration

8-21

Module 8 : Linstallation dapplication

Mises jour et dpendances


Mise jour et dpendances
Urpmi (Mandrake) Rechercher un paquetage: Installer un paquetage Yum (YellowDog, Fedora, ) Rechercher un paquetage Installer un paquetage Rechercher un paquetage Installer un paquetage # yum search ksh # yum install pdksh # apt-cache search ksh # apt-cache install pdksh # urpmq ksh # urpmi pdksh

Apt4rpm (Connectiva, RedHat, SuSE, )

TSOFT - Linux Administration

Module 13 : Les paquetages - 13.5

Introduction
Linstallation dun paquetage choue si ce dernier ncessite la prsence dautres paquetages. Cest le grave problme de la gestion des dpendances. Dautre part, toujours lors de linstallation ou de la mise jour dun paquetage, il faut dabord rcuprer les fichiers paquetages avant de les installer. Dans un monde idal, ces diffrentes oprations, recherche des paquetages disponibles, tlchargement et installation du paquetage ainsi que des paquetages dpendants, devraient seffectuer de manire transparente. Le systme APT de la distribution Debian fut le premier rgler ces problmes. Maintenant, pour chaque distribution, il existe des systmes similaires. Lobjet du prsent chapitre est de vous les prsenter, principalement Urpmi, Yum et Apt4rpm. Loutil APT ayant dj t tudi.

Panorama des solutions Apt Outil de Debian, repose sur les paquetages Debian (.deb). Urpmi Yum Apt4rpm Up2date Emerge
Outil de Mandrake, repose sur le systme RPM. Outil de Yellowdogs, sapplique aux distributions base de RPM. Outil de Connectiva, cest une adaptation de APT aux RPM. Outil de RedHat destin aux versions commerciales. Outil de Gentoo, cest une adaptation du systme Portage de BSD. Les paquetages sont sous forme de source. Linstallation provoque leur compilation.

Urpmi
Loutil Urpmi de Mandrake est un logiciel libre (GPL) qui facilite linstallation et la configuration des paquetages RPM principalement en rsolvant les dpendances. Loutil
8-22 Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


graphique rmpdrake simplifie lextrme son utilisation. Les exemples qui suivent sont bass sur les commandes en mode texte (urpmi, urpme, ). Les paquetages peuvent tre stocks sur cdrom, dans des fichiers ou sur des sites distants accessibles via FTP ou HTTP. Un des grands avantage durpmi, cest que, comme APT dans le cas de Debian, cest un outil natif. Il est prsent ds linstallation et les sites dpts de paquetages sont grs officiellement par Mandrake.

Fichiers /etc/urpmi/urpmi.cfg Contient la description des dpts de paquetages. /var/li/urpli/list.* Liste des paquetages connus dUrpmi. Il y a une liste par dpt (medium dans le jargon Mandrake). Exemples
Rechercher le nom dun paquetage
# urpmq ksh Les paquetages suivants contiennent ksh : kdegraphics-kuickshow libkdegraphics0-kuickshow pdksh

Installer un paquetage (et tous les paquetages dpendants)


# urpmi pdksh Veuillez insrer le medium nomm Installation CD 2 (x86) (cdrom2) dans le priphrique [/dev/hdc] Appuyez sur la touche Entre quand vous tes prts... installation de /var/cache/urpmi/rpms/pdksh-5.2.14-15mdk.i586.rpm Prparation... ################################################## 1:pdksh ##################################################

Tester une installation (vrifier si elle est possible)


# urpmi --test telnet-server installation de /var/cache/urpmi/rpms/telnet-server-krb5-1.33mdk.i586.rpm Prparation... ################################################## L'installation est possible

Mettre jour lensemble des paquetages installs Attention : lopration peut tre longue !
# urpmi --auto --auto-select tout est dj install

Supprimer un paquetage (et tous les paquetages dpendants)


# urpme pdksh dsinstallation de pdksh-5.2.14-15mdk.i586

Ajouter un dpt de paquetage


# urpmi.addmedia updates \ ftp://ftp.free.fr/pub/Distributions_Linux/Mandrake/\ updates/9.2/RPMS with ../base/hdlist.cz

Mettre jour les informations concernant les paquetages disponibles


# urpmi.update -a

Eyrolles/Tsoft Linux Administration

8-23

Module 8 : Linstallation dapplication


Connatre lorigine dun fichier
# urpmf httpd2.conf apache-conf:/etc/httpd/conf/httpd2.conf

Yum
Loutil Yum (Yellowdog Updater Modified) gre automatiquement les mises jour des logiciels des distributions Linux bases sur les RPM. Comme Apt ou Urpmi, il gre les dpendances des paquetages. Yum est un logiciel libre (GPL) cre par des dveloppeurs de la distribution Yellowgdog. Il est disponible en standard et prt lemploi dans la distribution Fedora. La commande principale est yum. Elle sert installer, dsinstaller, rechercher un paquetage, etc. A chaque fois que lon active, elle vrifie si sa base est jour. Si elle ne lest pas, le logiciel tlcharge la description des nouveaux paquetages disponibles

Fichiers /etc/yum.conf /var/cache/yum Exemples

Le fichier de configuration de Yum. Les donnes gres par Yum.

Rechercher un paquetage
# yum search ksh Gathering header information file(s) from server(s) Server: Fedora Core 1 - i386 - Base Server: Fedora Core 1 - i386 - Released Updates Finding updated packages Downloading needed headers Looking in available packages for a providing package Available package: zsh.i386 0:4.0.7-1.1 from base matches with Shell semblable ksh, mais avec des amliorations. Available package: pdksh.i386 0:5.2.14-23 from base matches with Clone du domaine public du shell Korn (ksh). Available package: pdksh.i386 0:5.2.14-23 from base matches with pdksh 3 results returned Looking in installed packages for a providing package No packages found # yum C search ksh # la recherche se fait partir du cache

Installer un paquetage
# yum install pdksh Gathering header information file(s) from server(s) Server: Fedora Core 1 - i386 - Base Server: Fedora Core 1 - i386 - Released Updates Finding updated packages Downloading needed headers Resolving dependencies Dependencies resolved I will do the following: [install: pdksh 5.2.14-23.i386] Is this ok [y/N]: y Getting pdksh-5.2.14-23.i386.rpm pdksh-5.2.14-23.i386.rpm 100% |===================| 180 kB 00:05 Running test transaction: Test transaction complete, Success! pdksh 100 % done 1/1 8-24 Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


Installed: pdksh 5.2.14-23.i386 Transaction(s) Complete

Mettre jour un paquetage


# yum update pdksh ... pdksh is installed and the latest version. No actions to take

Mettre jour lensemble des paquetages installs


# yum update ... Resolving dependencies Dependencies resolved I will do the following: [install: kernel 2.4.22-1.2149.nptl.i686] [update: initscripts 7.42.2-1.i386] ... [update: pam_krb5 2.0.5-1.i386] [update: rsync 2.5.7-2.i386] Is this ok [y/N]: y

Liste des paquetages disponibles


# yum list ... Name Arch Version Repo ---------------------------------------------------------------4Suite i386 1.0-0.0.a3 base Canna i386 3.6-24 base Canna-devel i386 3.6-24 base Canna-libs i386 3.6-24 base ElectricFence i386 2.2.2-16 base FreeWnn i386 1.11-39 base FreeWnn-common i386 1.11-39 base FreeWnn-devel i386 1.11-39 base ...

Supprimer un paquetage
# yum remove pdksh ... Resolving dependencies Dependencies resolved I will do the following: [erase: pdksh 5.2.14-23.i386] Is this ok [y/N]: y Running test transaction: Test transaction complete, Success! Erasing: pdksh 1/1 Erased: pdksh 5.2.14-23.i386 Transaction(s) Complete

Nettoyer le cache
# yum clean ... Cleaning packages and old headers

Eyrolles/Tsoft Linux Administration

8-25

Module 8 : Linstallation dapplication

Apt4rpm
Apt4rpm est une adaptation du logiciel APT de la distribution Debian, pour les distributions bass sur les RPM de RedHat. Ce logiciel libre a t dvelopp par lquipe de la distribution Connectiva.

Le fichier sources.list Le fichier source.list dcrit les dpts de paquetages.


Redhat Lexemple qui suit est adapt des distributions RedHat. Les dpts mentionns correspondent aux dernires versions libres de RedHat. Toute les lignes sont en commentaire sauf celle correspondant la version install (9.0).
# more /etc/apt/sources.list # List of available apt repositories available from ayo.freshrpms.net. # This file should contain an uncommented default suitable for your system. # # See http://ayo.freshrpms.net/ for a list of other repositories and mirrors. # # $Id: sources.list,v 1.8 2003/04/16 09:59:58 dude Exp $ # Red Hat Linux 9 rpm http://ayo.freshrpms.net redhat/9/i386 os updates freshrpms #rpm-src http://ayo.freshrpms.net redhat/9/i386 os updates freshrpms # Red Hat Linux 8.0 #rpm http://ayo.freshrpms.net redhat/8.0/i386 os updates freshrpms #rpm-src http://ayo.freshrpms.net redhat/8.0/i386 os updates freshrpms # Red Hat Linux 7.3 #rpm http://ayo.freshrpms.net redhat/7.3/i386 os updates freshrpms #rpm-src http://ayo.freshrpms.net redhat/7.3/i386 os updates freshrpms

SuSE Lexemple qui suit est adapt une distribution SuSE 9.0.
# more /etc/apt/sources.list rpm ftp://ftp.gwdg.de/pub/linux/suse/apt SuSE/9.0-i386 susepeople base update-prpm update kde gnome2 xfree86 mozilla suser-rbos usr-local-bin suser-kpietrz suser-tcousin suser-scorot suser-sbarnin suser-ollakka funktronics packman packman-i686 wine suse-projects kdeunstable security-prpm security rpm-src ftp://ftp.gwdg.de/pub/linux/suse/apt SuSE/9.0-i386 susepeople base update-prpm update kde gnome2 xfree86 mozilla suser-rbos usr-local-bin suser-kpietrz suser-tcousin suser-scorot suser-sbarnin suser-ollakka funktronics packman packman-i686 wine suse-projects kdeunstable security-prpm security

Exemples
Mettre jour la liste des paquetages disponibles
# apt-get update Get:1 http://ayo.freshrpms.net redhat/9/i386 release [1170B] Fetched 1170B in 0s (1568B/s) Get:1 http://ayo.freshrpms.net redhat/9/i386/os pkglist [1357kB] Get:2 http://ayo.freshrpms.net redhat/9/i386/os release [140B] 8-26 Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication


Get:3 http://ayo.freshrpms.net redhat/9/i386/updates pkglist [350kB] Get:4 http://ayo.freshrpms.net redhat/9/i386/updates release [153B] Get:5 http://ayo.freshrpms.net redhat/9/i386/freshrpms pkglist [151kB] Get:6 http://ayo.freshrpms.net redhat/9/i386/freshrpms release [157B] Fetched 1858kB in 30s (60,4kB/s) Reading Package Lists... Done Building Dependency Tree... Done

Rechercher un paquetage
# apt-cache search ksh kdegames - K Desktop Environment - Games pdksh - A public domain clone of the Korn shell (ksh). tora - A GUI-based database development program. zsh - A shell similar to ksh, but with improvements. bash - The GNU Bourne Again shell (bash) version 2.05b. kdebase - K Desktop Environment - core files kdegraphics - K Desktop Environment - Graphics Applications postgresql-tcl - A Tcl client library for PostgreSQL.

Simuler linstallation dun paquetage


# apt-get -s install pdksh Reading Package Lists... Done Building Dependency Tree... Done The following NEW packages will be installed: pdksh 0 packages upgraded, 1 newly installed, 0 removed and 88 not upgraded. Inst pdksh (5.2.14-21 Red Hat Linux 9:9/Red Hat Freshrpms) Conf pdksh (5.2.14-21 Red Hat Linux 9:9/Red Hat Freshrpms)

Installer un paquetage (et tous les paquetages dpendants)


# apt-get install pdksh Reading Package Lists... Done Building Dependency Tree... Done The following NEW packages will be installed: pdksh 0 packages upgraded, 1 newly installed, 0 removed and 88 not upgraded. Need to get 184kB of archives. After unpacking 341kB of additional disk space will be used. Get:1 http://ayo.freshrpms.net redhat/9/i386/os pdksh 5.2.14-21 [184kB] Fetched 184kB in 3s (48,6kB/s) Executing RPM (-Uvh)... warning: /var/cache/apt/archives/pdksh_5.2.14-21_i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e Preparing... ########################################### [100%] 1:pdksh ########################################### [100%]

Supprimer un paquetage (et tous les paquetages dpendants)


# apt-get remove pdksh Reading Package Lists... Done Building Dependency Tree... Done The following packages will be REMOVED: pdksh 0 packages upgraded, 0 newly installed, 1 removed and 88 not upgraded. Need to get 0B of archives. After unpacking 341kB disk space will be freed. Do you want to continue? [Y/n] y Executing RPM (-e)... Eyrolles/Tsoft Linux Administration 8-27

Module 8 : Linstallation dapplication


Nettoyer le cache
# apt-get clean

Mettre jour lensemble des paquetages


# apt-get upgrade Reading Package Lists... Done Building Dependency Tree... Done The following packages will be upgraded XFree86 XFree86-100dpi-fonts XFree86-75dpi-fonts XFree86-Mesa-libGL XFree86-Mesa-libGLU XFree86-base-fonts XFree86-font-utils XFree86-libs XFree86-libs-data XFree86-tools XFree86-truetype-fonts XFree86-twm XFree86-xauth XFree86-xdm XFree86-xfs bash cdda2wav cdrecord coreutils cups cups-libs cvs eog ethereal evolution foomatic gaim gdm ghostscript glibc glibc-common glibc-devel gnupg gstreamer gstreamertools gtkhtml hpijs httpd iproute kdebase kdegraphics kdelibs krb5devel krb5-libs lftp libpcap mkisofs mutt net-snmp netpbm netpbmprogs nfs-utils nmap nscd openssh openssh-askpass openssh-askpassgnome openssh-clients openssh-server openssl openssl-devel pam_smb pan perl perl-CPAN printman redhat-config-date redhat-config-network redhat-config-network-tui redhat-config-printer redhat-config-printergui rhpl rsync samba samba-client samba-common sane-backends sendmail slocate tcpdump unzip up2date up2date-gnome xinetd xpdf The following packages have been kept back grip gstreamer-plugins gthumb 85 packages upgraded, 0 newly installed, 0 removed and 3 not upgraded. Need to get 174MB of archives. After unpacking 2649kB of additional disk space will be used. Do you want to continue? [Y/n]

Rfrences
Man Urpmi urpmi(8), urpme(8), urpmi.addmedia(8), urpmi.update(8), urpmi.removemedia(8), gurpmi(8), urpmf(8), urpmq(8), rpmdrake(8) Internet Urpmi Une introduction Urpmi : http://www.linux-mandrake.com/cooker/urpmi.html Le site officiel de Urpmi : http://www.urpmi.org/ Howto : http://myweb.tiscali.co.uk/eggnbacon/docs/urpmi-howto/index.html Man Yum Yum(8), yum-arch(8), yum.conf(5) Internet Yum Howto : http://www.phy.duke.edu/~rgb/General/yum_HOWTO/yum_HOWTO/ Tlchargement http://apt.freshrpms.net Man apt4rpm apt-cache(8), apt-get(8), apt.conf(5), sources.list(5)

8-28

Eyrolles/Tsoft Linux Administration

Module 8 : Linstallation dapplication Internet apt4rpm Tlchargement : http://apt.freshrpms.net Howto : http://bazar.conectiva.com.br/~godoy/apt-howto/ Dpts libres pour Redhat et Fedora : http://apt-rpm.tuxfamily.org

Eyrolles/Tsoft Linux Administration

8-29

Module 8 : Linstallation dapplication

Atelier 8 : Les paquetages


Atelier 10 : La gestion des priphriques
Objectif : Apprendre grer les paquetages de Linux

Dure : 25 minutes.

TSOFT - Linux Administration

Module 13 : Les paquetages - 13.7

Exercice n1
Affichez les paquetages installs, combien sont-ils ?

Exercice n2
Affichez les paquetages du CD-ROM dinstallation, combien sont-ils ?

Exercice n3
Affichez les informations du paquetage dont la commande bash fait partie.

Exercice n4
Installez le paquetage gnuchess . Affichez sa description au pralable !

Exercice n5
Dsinstaller le paquetage gnuchess.

Exercice n6
Installez le paquetage gnuchess en utilisant un outil de type APT (urpmi, yum ou apt-get).

8-30

Eyrolles/Tsoft Linux Administration

Вам также может понравиться