Gestion des paquets

De Le Wiki du Forum-Debian.fr
Révision datée du 5 août 2010 à 19:22 par Helid (discussion | contributions) (Quelques petites fautes et surtout le liens vers la page d'aptitude ajouté.)
Aller à la navigation Aller à la recherche

Les dépôts de paquet Debian sont un moyen simple, sûr et efficace pour installer des logiciels.

Les fichiers des programmes sont contenus dans des archives appelées « paquets ». Ces paquets se trouvent sur des serveurs de fichiers appelés « dépôts ». Le gestionnaire de paquets, appelé « apt » se charge de récupérer les paquets et de les installer sur votre système.

Les paquets sont séparés le plus possible pour éviter d'installer des composants inutiles. Si un programme a besoin d'une bibliothèque --- composant lui permettant de faire certaines tâches (vous verrez peut-être le mot « librairie », souvent employé par anglicisme) ---, elle se situera dans un autre paquet. Le gestionnaire apt se chargera de l'installer en même temps que le programme. Si un autre programme utilise la même bibliothèque, elle ne sera pas installée deux fois...

Configuration des dépôts

Dépôt principal

ToDo : expliquer le fonctionnement des différentes releases Debian (sur une autre page ?)

Les dépôts se configurent dans le fichier /etc/apt/sources.list

Pour une Debian « stable » (lenny à l'heure où j'écris ces lignes), vous devriez avoir :

deb http://ftp.fr.debian.org/debian/ stable main

Pour utiliser une autre version, il vous suffit de remplacer stable par testing ou unstable.

Vous pouvez aussi mettre le nom de la version (lenny, squeeze et sid, à l'heure où j'écris). Ce qui vous permettra de suivre votre release lorsqu'elle passera en testing, stable ou oldstable (pour sid, ça ne change rien) sans toucher au fichier sources.list.

« main » désigne le composant principal du dépôt. Il ne contient que les programmes libres. Pour utiliser des programmes non libres, il vous faut rajouter les composants contrib et non-free :

deb http://ftp.fr.debian.org/debian/ stable contrib non-free

(non-free contient les paquets non libres et contrib les paquets libres qui dépendent des paquets non-free).

Autres dépôts

Il existe des dépôts supplémentaires que vous pouvez rajouter :

  • Le dépôt security qui contient les mises-à-jour de sécurité pour stable et testing, au choix :
deb http://security.debian.org/ stable/updates main
deb http://security.debian.org/ testing/updates main

Pour plus de renseignements, voir http://www.debian.org/security

  • Le dépôt volatile, qui contient des mises-à-jour pour stable des programmes ayant besoin d'être à jour sur un serveur, tels que des antivirus ou des antispams.
deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free 

Pour les détails, consultez http://www.debian.org/volatile

Miroirs

ToDo : lien vers liste des miroirs, et parler des outils pour choisir le miroir qui répond le mieux.

Paquets sources

Si vous voulez avoir accès aux paquets contenant les codes source des programmes (pour les reconstruire à votre sauce), il vous faut ajouter une ligne commençant par « deb-src » au lieu de « deb » avec la même adresse derrière, par exemple :

# deb-src http://deb-src

Gérer ses paquets

Il existe deux outils pour installer/désinstaller et mettre à jour des programmes : apt-get et plus récemment, aptitude. Contrairement à ce que dit la rumeur, il n'y a aucun problème à utiliser conjointement les deux. apt-get se chargera d'effectuer l'action demandée, et c'est tout ! aptitude fournit une gestion plus fine des dépendances, en vous proposant plusieurs choix dans les situations complexes.

Si vous préférez un gestionnaire graphique, vous pouvez utiliser synaptic, après l'avoir installé via :

# aptitude install synaptic

Pour un détail sur le fonctionnement d'aptitude, c'est ici:[[1]]

Mettre à jour la liste des paquets

Pour mettre à jour la liste des paquets disponibles à partir des dépôts, il faut lancer, au choix :

# apt-get update
# aptitude update

Rechercher un paquet

Pour rechercher un paquet, il vous suffit de lancer :

# apt-cache search <nom du paquet>
# aptitude search <nom du paquet>

aptitude peut prendre des expressions régulières pour <nom_du_paquet>.

Recherches avancées

Aptitude propose une foule d'options de recherches avancées :


Recherche de tous les paquets installés :

$ aptitude search ~i


Recherche des paquets désinstallés, mais dont les fichiers de configurations n'ont pas été purgés :

$ aptitude search ~c


Recherche des paquets installés qui peuvent être mis à jour :

$ aptitude search ~U


Rechercher les paquets installés mis en "hold" ("hold" = en pause; Ces paquets ne seront JAMAIS mis à jour tant qu'il seront marqués "h") :

$ aptitude search ~i~ahold


Vous trouverez la liste des options possibles sur cette page

Installer un paquet

En une commande, vous pouvez installer un paquet et ses dépendances :

# apt-get install <nom du paquet>
# aptitude install <nom du paquet>

Mettre à jour le système

Il existe deux méthodes de mises à jour :

  • la première ne supprime que les paquets qui ne sont plus utilisés (recommandée) :
# apt-get dist-upgrade
# aptitude safe-upgrade
  • la seconde mets à jour tous les paquets, sans distinction d'importance :
# apt-get upgrade
# aptitude full-upgrade

Désinstaller un paquet

Pour désinstaller un paquet sans ses dépendances :

# apt-get remove <nom_du_paquet>

Pour désinstaller un paquet avec ses dépendances (sauf si elles sont utilisées par d'autres paquets)

# apt-get autoremove <nom du paquet>
# aptitude remove <nom du paquet>

Attention : N'utilisez jamais apt-get autoremove sans indiquer de paquet derrière.

Pour désinstaller un paquet et supprimer ses fichiers de configuration :

# apt-get remove --purge <nom du paquet>
# apt-get autoremove --purge <nom du paquet>
# aptitude purge <nom du paquet>


ToDo : pinning (preferences, apt-cache policy, avertissement :) : sur une autre page ?