Vous êtes sur la page 1sur 16

Linux (TP)

TP2 : Gestion des packages


A. Installation des paquets en utilisant rpm(niveau
global)
1. Télécharger un paquet

Il faut télécharger le fichier des paquets (qu’on veut : est ce que son nom est
donné ou il faut le connaître d’après le logiciel demandé ??) sur internet sous
Fedora (après être téléchargé on vérifier le chemin de ce fichier : par quelle
cmd ??)

Le paquet

On appelle paquet (ou parfois paquetage, en anglais package) une archive (fichier compressé)
comprenant les fichiers informatiques, les informations et procédures nécessaires à l'installation
d'un logiciel sur un système d'exploitation au sein d'un agrégat logiciel, en s'assurant de la
cohérence fonctionnelle du système ainsi modifié.
RPM Package Manager

Pour gérer les paquets du système, Fedora utilise YUM

Gestion des paquetages avec Rpm

Installation d'un paquetage : rpm -ivh package.rpm

Mise à jour d'un paquetage : rpm -Uvh package.rpm


NB :
 -i -> install
 -U -> Upgrade (met à jour un paquet ou l’installe s’il n’est pas présent)
 -v -> verbose (détaille l’avancement de l’installation)
 -F -> Freshen (ne met à jour un paquet que s’il est installé)
 -h -> hash (permet d'avoir une « barre de progression »

Lister des informations relatives aux paquetagex : rpm -qilp package.rpm

On peut interroger un paquetage installé de la même manière avec : rpm -qil paquetage

Interroge tous les paquetages installées : rpm -qa

Liste tous les fichiers de chaque paquetage (pratique pour rechercher un fichier particulier) rpm -qa
--filesbypkg

Remarque : Si on veut lister les fichiers d’un seul package on ne met


pas -qa

Note
Il est possible de combiner ces différentes options. Il est également très pratique de combiner
l’interrogation avec grep si on veut savoir si un paquet précis est installé

rpm –qa | grep –i package

pour vérifier si les paquets sont installés

pour un seul paquet : rpm|grep package ??


Va lister tous les paquetages et donner pour chacun les informations et la liste des fichiers :
rpm -qail

NB :
 -q -> interrogation
 -i -> texte décrivant le paquetage
 -l -> liste les fichiers du paquetage
 -p -> pour interroger un fichier.rpm et non pas un paquetage installé

Remarque : il est conseiller d’utiliser yum pour la suppression d’un paquet car
rpm peut avoir d’effet néfaste.
Pour supprimer un paquet en utilisant rpm : rpm –e package

B. Installation des paquets en utilisant Yum(niveau


paquet)
Gestion des paquetages avec yum

Du faite que rpm peut poser des problèmes au court de l’installation des
logiciels ,on utilise Yum.

Configuration de yum
/etc/yum.conf (la commande pour configurer yum)

Cette commande peut aussi servir à mettre à jour l’utilitaire yum ??


Ce fichier se divise en 2 grandes sections :
 La section principale où l'on définit un certain nombre d'options; sous la forme de couple
(clef=valeur); qui régiront le comportement globale de Yum.
 la section serveur où l'on définit les dépôts distants (http et ftp) ou locaux (un répertoire de
notre disque dur par exemple) contenant les paquetages rpm qui nous intéressent.
Installation de paquetages

Installer un logiciel : # yum install nom_logiciel

Installer plusieurs logiciels : # yum install nom_logiciel_1 nom_logiciel_2


nom_logiciel_3

Désinstallation de paquetages

Désinstaller un logiciel : # yum remove nom_logiciel

Désinstaller plusieurs logiciels :

# yum remove nom_logiciel_1 nom_logiciel_2 nom_logiciel_3

Liste des mises à jour disponibles


# yum check-update -> pour avoir toute la liste

Vérifier si un paquet est installé


Yum list|grep nom_logiciel

Mise à jour :
du paquetage nom_logiciel : # yum update nom_logiciel

de plusieurs paquetages : # yum update nom_logiciel autre_nom_logiciel

de tous les paquetages possibles : # yum update

Liste
des paquetages installés sur les systèmes : # yum list installed

Une fois YUM configuré, je ne peux que vous conseiller de mettre à jour tout votre système via la
commande (toujours en root) :

# yum update

Si c'est la première fois que vous mettez votre système à jour (avec modération) sur une
installation toute fraîche de Fedora, lancez la commande

# yum update yum


Cette commande permet à YUM de se mettre à jour indépendamment des autres paquets.

Attention toutefois, le haut débit est indispensable pour réaliser les mises à jour du système car la
quantité de paquets à mettre à jour est conséquente !

Pour rechercher un paquet, faites la commande :

# yum list <nom du paquet>

Bien sûr, ceci n'est pas très pratique si l'on ne connaît pas très bien le nom du paquet. Heureusement
pour vous, YUM accepte le caractère joker * (étoile). Ce caractère joker fonctionne également avec
les autres commandes. Remarque : il est nécessaire d'« échapper » le joker en plaçant le
caractère \ devant celui-ci ou bien en sécurisant toute la chaine de caractère avec les guillemets.
Exemple :

# yum list kernel\*

ou

# yum list "kernel*"

Pour une mise à jour sélective :on met à jour seulement ce paquet

# yum --exclude=<nom du paquet> update

Ceci est surtout pratique pour mettre à jour votre système sans mettre à jour votre noyau si avez de
modules que vous ne voulez pas réinstaller à chaque fois ou pour une autre raison :

# yum --exclude=kernel\* update

Pour les dépôts


Pour exclure un dépôt temporairement :???

# yum --disablerepo=<nom du dépôt> update

Pour inclure un dépôt temporairement :

# yum --enablerepo=<nom du dépôt> update

Pour connaitre la liste des dépôts configurés:

# yum repolist all

Ce sont les principales commandes disponibles avec YUM mais il en existe de nombreuses autres
que vous pouvez découvrir en tapant simplement

# yum help
C. Installation des logiciels en mode console par
compilation des sources (tarball)
 Les types d'archives couramment utilisées sur les systèmes Linux et Unix sont tar , tar.gz et
tar.bz2 . Notez que tar.gz et tar.bz2 sont tout simplement gzip -ped et bzip(2)-
ped tar archives, respectivement. Travailler avec ces fichiers est très simple grâce à
l'utilisation de GNU tar utilitaire, qui est inclus dans le cadre des paquetages de base de
distributions modernes.

 Sous les systèmes GNU-Linux, les outils permettant de créer des archives compressées sont
généralement installés par défaut sur la plupart des distributions.*

 Dans la plupart des cas, la transmission de fichiers se fait dans des formats compressés,
particulièrement pour le téléchargement de programmes à compiler, souvent disponible en
format .gz .tgz (ou .tar.gz, c’est équivalent) et parfois .bz2

Les principaux programmes utilisés pour la gestion des archives sont les suivants :
tar (tape archive files) : Permet de créer un fichier archive qui va contenir l’ensemble des fichiers
demandé, sans compression.
gzip : Permet de compresser les fichiers au format gzip (.gzip ou .gz)
gunzip : Permet de décompresser les fichiers de type .gzip ou .gz
bzip2 : Permet de compresser les fichiers au format .bz2 ou .bzip2
bunzip2 : Permet de décompresser les fichiers de type .bz2 ou .bzip2

Remarque : Lorsqu’on télécharge un logiciel comme tarball (gz ou bz2) ie on veut qu’il se télécharge
sous format compressée.

Sous Linux, on va principalement utiliser « tar » pour créer l’archive de base, puis compresser celle-ci
avec un outil au choix. L’atout principal de la commande « tar » est de maintenir les attributs
complets des fichiers (équivalent des ACL sous Windows), permettant ainsi, lors de l’extraction, de
retrouver une arborescence identique à l’originale, dans sur le contenu que les attributs
(propriétaire, groupe, droits d’accès, de modification et d’exécution).
Les options utilisées signifient :
-c Créer une nouvelle archive
-v Afficher le détail du traitement en court (mode verbeux)
-f Créer l’archive dans le fichier défini (par opposition à un périphérique lecteur de bande « tape »).

-z indiquant à tar qu’il doit « gzipper » l’archive en plus de créer le tar.

EXP

Pour l’exemple, nous partons du dossier /home, dans lequel nous avons un dossier « toto » avec
quelques fichiers.

On va donc créer une archive du home de toto appelée « home_toto.tar », afin de la restaurer
ultérieurement :

Commandes :

1 cd /home

2 tar -cvf home_toto.tar toto/

Le fichier est créé, contenant le dossier toto, et tout ce qu’il contient.

Passons maintenant à l’utilisation de la même commande, mais en utilisant l’outil de compression


« gzip ».
Nous pourrions simplement utiliser la commande « gzip » pour compresser le tar précédemment
créé comme ceci :

1 gzip home_toto.tar

ce qui donnerait un fichier tout à fait convenable au format home_toto.tar.gz

Évidemment, tar permet d’utiliser la compression en ligne, simplement en ajoutant l’option « -z »


comme ceci :

1 cd /home

2 tar -cvzf home_toto.tar.gz toto/

On la décompressera en suivante la même logique :


1 tar -xvzf home_toto.tar.gz toto/

Tout simplement. Il en est de même pour l’utilisation de bzip2, mais au lieu de « -z », on va utiliser « -
j », comme ceci :

1 cd /home

2 tar -cvjf home_toto.tar.bz2 toto/

Puis on décompresse et extrait les données :

1 cd /home

2 tar -xvjf home_toto.tar.bz2 toto/

Commentaire : donc d’après cet exemple on a pu voir comment créer le fichier


des archives tar d’un dossier (toto) déjà existant dans la machine, en
choisissant le chemin ou le mettre (home) ?? et aussi on a vu comment le
compresser et le décompresser des deux manière : gz et bz2.

Dans notre cas on télécharge un logiciel compressé d’extension .tar.gz

Et il faut le décompresser pour accéder à son contenu

On le décompresse de la façon suivante :


Tar-xvzf filename.tar.gz
ou
Tar-xvjf filename.tar.bz2

Exp
Sur http://www.snort.org/, téléchargez pcre-6.4.tar.gz ou la dernière version que vous

trouverez.

$]# tar –zxvf pcre-6.4.tar.gz

$]# cd pcre-6.4

$]# ./configure

$]# make

$]# make check

$]# make install

Pour afficher le contenu d’un fichier tar, tapez :


tar -tvf nom_du_fichier.tar

Pour extraire le contenu d’un fichier tar, tapez :

tar -xvf nom_du_fichier.tar

Cette commande ne supprime pas le fichier .tar, mais elle place des copies de son contenu dans le
répertoire de travail en cours.

Important
Le site officiel de PostgreSQL (ftp.postgresql.org) regroupe l'ensemble des archives nécessaires.

 Afficher liste des fichiers compresséS ????:


tar -tf archive.tar

Lorsque l'application est décompressée, il faut dans un premier temps lancer le script d'auto-
configuration :
cd postgresql-7.0
./configure
Le script d'auto-configuration possède des paramètres optionnels :
 --prefix=répertoire permettant de définir un répertoire d'installation personnalisé (par défaut il s'agit
de/usr/local/pgsql) un répertoire partagé dédié aux sources (/usr/src/postgres par exemple)
 la racine d'installation par défaut est sans doute /usr/local/
 --with-perl permettant d'installer l'interface Perl ainsi que les extensions Perl de Postgres
 --with-tcl permettant d'installer l'interface Tcl ainsi que les extensions Tcl de Postgres
Il suffit ensuite de compiler les sources de PostgreSQL :
make
et enfin de procéder à l'installation :
make install
Après l'installation de PostgreSQL, la première opération à effectuer consiste à initialiser la base de
données grâce à un script se lançant avec la commande suivante :

initdb

TP1
Les premières questions

dans /etc/passwd chaque utilisateur possède un groupe par défaut, précisé par
son identifiant gid dans ce fichier

 Tout ce qui concerne la gestion et l'authentification des utilisateurs est inscrit


dans un seul fichier /etc/passwd
 La gestion des groupes est assurée par /etc/group
 Les mots de passe cryptés sont maintenant placés dans /etc/shadow, par
sécurité lisible seulement par root.

Structure de /etc/passwd
Ce fichier comprend 7 champs, séparés par le symbole « : »

1. nom de connexion
2. ancienne place du mot de passe crypté
3. numéro d'utilisateur uid, sa valeur est le véritable identifiant pour le
système Linux; l'uid de root est 0, le système attribut conventionnellement
un uid à partir de 500 aux comptes créés.
4. numéro de groupe gid, dans lequel se touve l'utilisateur par défaut;
le gid de root est 0, des groupes d'utilisateurs au delà de 500
5. nom complet, il peut être suivi d'une liste de renseignements personnels
6. rép. personnel (c'est également le rép. de connexion)
7. shell, interprétateur de commandes (son chemin par défaut /bin/bash)

Structure de /etc/group
Ce fichier comprend 4 champs, séparés par le symbole :

1. nom du groupe
2. x pour remplacer un mot de passe non attribué maintenant
3. numéro de groupe, c-à-d l'identifiant gid
4. la liste des membres du groupe

 La structure d'une ligne de /etc/passwd et de /etc/group


 login:x:uid:gid:commentaires:home:shell
groupe:x:gid:liste-groupes-secondaires
Le fichier /etc/shadow est un fichier texte qui contient une ligne par
utilisateur. Il est structuré en neuf champs, comme suit :

loginname:password:lcdate:mindays:maxdays:ndays1:ndays2:expiration:reserved

La sémantique associée à ces champs est la suivante :

 loginname : le nom de login de l'utilisateur, identique à celui du


fichier /etc/passwd il permet ainsi d'établir le lien entre les deux
fichiers.

 password : le hashage du mot de passe. S'il s'agit d'un


hashage MD5, il commence par la séquence $1$.

 lcdate : date du dernier changement de mot de passe, exprimée


relativement au temps Unix™, exprimé en jours, i.e. nombre de jours
écoulés depuis le 1er Janvier 1970. Généralement rempli par la
commande /usr/bin/passwd

 mindays : Intervalle minimum de jours entre deux changements de


mot de passe. Généralement positionné à 0, pour signifier qu'il n'y a
pas d'intervalle.

 maxdays : Intervalle maximum de jours entre deux changements de


mot de passe. Cela permet donc à l'administrateur de renforcer la
stratégie de limitation dans le temps des mots de passe. Le délai
maximun est obtenu comme somme de ce champ et du 7e.

 ndays1 : Nombre de jours, pour prévenir l'utilisateur, avant l'expiration


du mot de passe.

 ndays2 : Nombre de jours s'écoulant entre l'expiration du mot de


passe et la désactivation du compte.

 expiration : Date d'expiration effective du compte, en nombre de jour


depuis le 1er Janvier 1970.

 reserved : Champ réservé pour un usage futur, vide pour le moment.


A. Gestion des comptes par des commandes

Gestion des groupe


 Un groupe est pour Linux un ensemble d'utilisateurs qui partagent les mêmes
fichers et répertoires.
 Chaque utilisateur doit faire partie au moins d'un groupe, son groupe
primaire. Celui-ci est défini au moment de la création du compte, et par
défaut, l'utilisateur appartient à un nouveau groupe créé, portant son
nom( groupes secondaires)

 Pour lister tous les groupes (primaire et secondaires) d'un utilisateur :


groups stagex (stagex est le nom de l’utilisateur)
 Pour créer un nouveau groupe
groupadd stagiaire (stagiaire est le nom du group)
 Supprimer un groupe
Groupdel stagiaire(donc Le groupe est supprimé du
fichier /etc/group)

Gestion des utilisateurs

 Pour créer l'utilisateur stagex, root passe la commande :


useradd stagex
Donc
le répertoire personnel /home/stagex, portant par défaut le nom du compte

une nouvelle entrée dans les 2 fichiers


fondamentaux /etc/passwd et /etc/group.
 Pour lui attribuer le mot de passe :
passwd stagex
saisir 2 fois stgx(stgx est le mot de passe)

 Supprimer le compte d'un utilisateur (non connecté)


userdel [-r] stagex
L'option -r supprime aussi le rép. personnel et les fichiers de l'utilisateur
La commande supprime toute trace de l'utilisateur dans le fichier de
configuration : /etc/passwd y compris dans les groupes d'utilisateurs.

 Modifier le compte de l'utilisateur


usermod [options] stagex
Les options sont les mêmes que useradd
usermod -G stagiaire,prof stagex ajoute stagex dans les 2 groupes
stagiaire et profs (qui doivent exister)

 Syntaxe : useradd [options] nom_login


Exemple : useradd toto -u 1200 -p moi -g 520 -G groupes -s /bin/bash
Options :

-u uid pour fixer l'identifiant uid


-g groupe-primaire
fixe l'appartenance de l'utilisateur à
une liste
-G liste
de groupes secondaires (séparateur ,
sans espace)
par défaut, attribution du shell par
-s shell
défaut bash
-c commentaire
-d rep. personnel par défaut dans le répertoire /home
fixe la date d'expiration du compte
-e date-expiration
(format MM/JJ/AA)
-m pour créer le répertoire personnel
recopie le contenu de rep-skel dans
-k rep-skel le rép. personnel, par
défaut /etc/skel

 cd - Naviguer dans les répertoires.


 cp - Copier des fichiers.
 mkdir - Créer des répertoires.
 mv - Déplacer ou renommer.
 rm - Supprimer fichiers et répertoires.
 ls - Lister le contenu des répertoires.
 cat - Afficher le contenu d'un fichier.
 more - Lire un fichier.
 stat - Afficher des statistiques détaillées.
 pwd - Connaître le chemin du répertoire actuel.
 du - Mesurer la taille des fichiers et répertoires.
 chown - Changer le propriétaire.
 chgrp - Changer le groupe propriétaire.
 chmod - Changer les permissions

B. Gestion des comptes par édition des fichiers

C. Suppression et modification des comptes


D. Gestion des comptes utilisateurs avec interface
graphique

Pour une gestion sous interface graphique, voir le chapitre sur le nouvel
outil linuxconf

Vous aimerez peut-être aussi