SafeITExperts

SafeITExperts

Your expert guide to cybersecurity and digital privacy. Security hardening for all platforms : Windows, macOS, Linux, and Android. Solutions aligned standards : NIST and ANSSI for comprehensive digital protection.


APT Debian : Guide Complet 2026

Publié par Marc sur 25 Février 2026, 20:21pm

Catégories : #APT, #Debian, #dpkg

APT Debian : Guide Complet 2026 | SafeITExperts
Rechercher
Menu

APT Debian : Guide Complet 2026

🚀 De Débutant à Expert — Tout ce que vous devez savoir sur la gestion de paquets Debian
2026Mis à jour : 24/02/2026 Lecture : 50 min2 Parties
📦 APT🐧 Debian📥 dpkg🔄 Sid🛡️ Stable⚙️ aptitude
1
Présentation globale d'APT

📖 Préambule

Dans l'écosystème Debian — Stable, Testing ou Sid — APT (Advanced Package Tool) est l'outil central de gestion logicielle. Il s'appuie sur dpkg pour la manipulation des paquets individuels et offre une interface puissante pour installer, mettre à jour et supprimer des logiciels, tout en gérant automatiquement les dépendances.

APT Debian Gestion des Paquets
Base de ce guide

Ce guide prend Debian 13 "trixie" comme base Stable, avec Testing (forky) et Sid (unstable) comme branches de développement. Toutes les commandes et exemples sont vérifiés pour trixie.

Objectif

Maîtriser APT de manière progressive, du débutant à l'expert, avec des cas pratiques concrets et des commandes vérifiées.

👥 Public visé

🌱
Débutant
Être opérationnel rapidement
Sections : Starter Pack
🌿
Intermédiaire
Comprendre dépôts, priorités, updates
Sections : Concepts & Pratiques
🌳
Expert
Dépannage, migrations, commandes sensibles
Sections : Avancé & Critiques

📚 Comment lire ce guide

NiveauContenuRecommandation
🟢 EssentielCommandes courantes, exemplesÀ maîtriser en priorité
🟠 IntermédiaireConcepts, workflowsPour approfondir
🔴 ExpertCas critiques, opérations avancéesRéservé aux confirmés

❓ Qu'est-ce qu'APT ?

ÉlémentDescription
RôleGestionnaire de paquets de Debian et ses dérivées
MoteurBasé sur dpkg
ForcesRésolution automatique des dépendances, gestion fine des dépôts, stabilité, communauté
PublicTous les utilisateurs Debian, des débutants aux administrateurs

📝 Syntaxe de base

Structure générale

Syntaxe APT
apt [OPTIONS] COMMANDE [ARGUMENTS]
apt-get [OPTIONS] COMMANDE [ARGUMENTS]
apt-cache [OPTIONS] COMMANDE [ARGUMENTS]
aptitude [OPTIONS] COMMANDE [ARGUMENTS]

Décomposition pédagogique

ÉlémentRôleExemple
OPTIONSOptions appliquées à la commande-y, --simulate, -V
COMMANDEL'action principale à exécuterinstall, remove, update, upgrade
ARGUMENTSCe sur quoi porte l'actionNom de paquet, version, fichier .deb

Exemple commenté

Exemple
# Installer htop sans les recommandations, mode oui automatique
$sudo apt -y install --no-install-recommends htop
# -y = option globale (oui automatique)
# install = commande
# --no-install-recommends = option de la commande
# htop = argument

🧩 Distinction entre apt, apt-get, apt-cache et aptitude

OutilRôle principalInterfacePublic
aptCommandes utilisateur courantesSynthétique, coloréeUsage quotidien
apt-getGestion de paquets historiqueSobre, scriptsAutomatisation
apt-cacheInterrogation du cacheLignes de commandeRecherches avancées
aptitudeInterface texte interactive + CLIMode curseur/lignesRésolution de conflits complexes

Recommandation : apt pour l'interactif, apt-get pour les scripts, apt-cache pour les requêtes précises, aptitude en dernier recours.

🏗️ Architecture interne : APT + dpkg

┌────────────┐     ┌──────────────────┐     ┌──────────────────┐
│    APT     │ ──▶ │       dpkg       │ ──▶ │  Système Linux   │
└────────────┘     └──────────────────┘     └──────────────────┘
       │                    │                        │
       ▼                    ▼                        ▼
Interface CLI       Installation/suppression   Gestion des fichiers
Gestion dépôts      Base de données des        Scripts maintainer
Résolution de         paquets installés
dépendances

Rôle des composants

ComposantRôleImportance
APTInterface utilisateur, gestion des dépôts, résolutionInteraction quotidienne
dpkgInstallation réelle, base de données localeCœur du système
PinningContrôle des priorités des dépôtsStabilité / personnalisation

📦 Dépôts

Rôle des dépôts : la base de tout

Les dépôts sont définis dans /etc/apt/sources.list et /etc/apt/sources.list.d/.

┌─────────────────────┐
│  Debian 13 trixie   │  (main, contrib, non-free, non-free-firmware)
└─────────────────────┘
           │
┌─────────────────────┐
│  Debian Security    │  (mises à jour de sécurité)
└─────────────────────┘
           │
┌─────────────────────┐
│  trixie-updates     │  (mises à jour stables)
└─────────────────────┘
           │
┌─────────────────────┐
│  trixie-backports   │  (versions plus récentes, usage ciblé)
└─────────────────────┘

Types de dépôts

TypeContenuNotes
mainPaquets libres officielsSupportés par Debian
contribPaquets libres dépendant de non-libres
non-freePaquets non-libresDrivers propriétaires
non-free-firmwareFirmwares propriétaires (WiFi, GPU, microcodes)Nécessaire pour beaucoup de matériel moderne — Debian 13+
securityCorrectifs de sécuritéIndispensable pour Stable
backportsVersions récentes pour StableOfficiels, usage ciblé (pas pour tout le système)
experimentalPaquets très frais, instablesRéservé aux tests

Cycle de vie d'un dépôt

Ajouter manuellement
 │
 ▼
Modifier (éditer le fichier)
 │
 ▼
Activer / Désactiver (commenter)
 │
 ▼
Supprimer (effacer la ligne)

Format DEB822 — Recommandé pour Debian 13

Nouveau format recommandé

Debian 13 trixie privilégie les fichiers /etc/apt/sources.list.d/*.sources au format DEB822 pour déclarer les dépôts. Le format sources.list reste supporté pour la compatibilité.

Exemple DEB822 — /etc/apt/sources.list.d/debian.sources
Types: deb
URIs: http://deb.debian.org/debian
Suites: trixie trixie-updates
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb
URIs: http://security.debian.org/debian-security
Suites: trixie-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Bonnes pratiques selon l'utilisation

DistributionDépôts recommandésDépôts déconseillés
Stable (trixie)main, contrib, non-free, non-free-firmware, security, trixie-updatesexperimental — backports : officiels mais usage ciblé uniquement
Testing (forky)main, contrib, non-free, non-free-firmwareexperimental (peut désynchroniser)
Sidmain, contrib, non-free, non-free-firmwarebackports (inutile sur Sid)
Serveursmain, non-free-firmware, security, trixie-updatescontrib, non-free si possible

⚖️ Priorités des dépôts (pinning)

Le système de priorités APT permet de contrôler quel dépôt sera privilégié.

APT doit installer un paquet :
        │
        ▼
  1. Dépôt avec la priorité la plus élevée
        │
        ▼
  2. Version la plus récente (si priorités égales)
        │
        ▼
  3. Résolution des dépendances
Signification des priorités (source Debian)
  • P < 0 : jamais installé
  • 1-99 : seulement si aucune autre version installée
  • 100 : priorité par défaut de la version déjà installée
  • 101-499 : seulement si aucune autre source plus prioritaire
  • 500 : priorité standard de la distribution cible
  • 501-989 : seulement si aucune version plus récente dans la cible
  • 990-1000 : sauf si version installée plus récente
  • >1000 : toujours installé, même si downgrade forcé

🔄 Stable vs Testing vs Sid — En 20 secondes

🛡️
Stable — trixie
Debian 13, distribution robuste

Type : Stable, gelée

Risques : Faibles

Usage : Serveurs, production, bureautique

Routine : apt upgrade

Transition : apt full-upgrade

🚀
Testing — forky
Future Debian, pré-version

Type : Rolling gelé

Risques : Modérés

Usage : Desktop, testeurs

Commande : apt full-upgrade

💥
Sid (Unstable)
Rolling permanent

Type : Rolling

Risques : Élevés

Usage : Développeurs, experts

Commande : apt full-upgrade

2
Les commandes APT

🚀 Starter Pack — Les 15 commandes essentielles

1
sudo apt update
Rafraîchir la liste des paquets
2
sudo apt upgrade
Mise à jour standard (Stable)
3
sudo apt full-upgrade
Mise à niveau complète (Testing/Sid)
4
sudo apt install <pkg>
Installer un paquet
5
sudo apt remove <pkg>
Supprimer (conserve config)
6
sudo apt purge <pkg>
Supprimer complètement
7
apt search <motif>
Rechercher un paquet (moderne, colorée) — apt-cache search <motif> pour scripts
8
apt show <pkg>
Informations détaillées
9
apt list --installed
Lister les paquets installés
10
apt-file search <fichier>
Quel paquet fournit ce fichier ?
11
sudo apt autoremove
Supprimer les dépendances inutiles
12
sudo apt clean
Nettoyer le cache
13
sudo apt autoclean
Nettoyer les paquets obsolètes
14
apt-mark showhold
Afficher les verrous
15
sudo apt --fix-broken install
Réparer les dépendances cassées

📦 Gestion des dépôts

Inspecter les dépôts

Inspecter
$apt-cache policy
$cat /etc/apt/sources.list
$ls /etc/apt/sources.list.d/

Ajouter, supprimer, modifier

Gestion
# Ajouter un dépôt (manuel)
$echo "deb http://deb.debian.org/debian trixie-backports main" | sudo tee /etc/apt/sources.list.d/backports.list
# Modifier
$sudo apt edit-sources
# Supprimer
$sudo rm /etc/apt/sources.list.d/backports.list

🔍 Commandes apt-cache avancées

CommandeDescription
apt-cache policy [paquet]Priorités et versions disponibles
apt-cache showpkg <paquet>Infos internes (dépendances inverses)
apt-cache depends <paquet>Liste les dépendances
apt-cache rdepends <paquet>Liste les paquets qui en dépendent
apt-cache statsStatistiques du cache
apt-cache unmet ⚠️Dépendances non satisfaites (déprécié sur Debian 13 — préférer apt check)
apt-cache madison <paquet>Versions disponibles avec origine

📥 Installation / Mise à jour / Suppression

apt upgrade vs apt full-upgrade vs apt-get dist-upgrade

Critèreupgradefull-upgrade / dist-upgrade
Met à jour les paquets✔️ Oui✔️ Oui
Installe de nouveaux paquets❌ Non✔️ Oui (si nécessaire)
Supprime des paquets❌ Non✔️ Oui (si nécessaire)
Usage recommandéStableTesting, Sid, migration

Installation avancée

Installation
# Installer plusieurs paquets
$sudo apt install git curl vim
# Version précise
$sudo apt install vim=2:9.0.1378-2
# Depuis une distribution spécifique (ex: unstable)
$sudo apt install -t unstable apache2
$sudo apt install apache2/unstable
# Réinstaller
$sudo apt install --reinstall bash
# Simuler
$sudo apt install --simulate htop
# Installer un fichier .deb local (avec résolution de dépendances)
$sudo apt install ./paquet.deb

Suppression

Suppression
$sudo apt remove htop
$sudo apt purge htop
$sudo apt remove --auto-remove htop
# Supprimer et installer en une ligne (syntaxe +/-)
$sudo apt install paquet1 paquet2-
$sudo apt remove paquet1+ paquet2

Verrous

Verrous
$sudo apt-mark hold linux-image-amd64
$apt-mark showhold
$sudo apt-mark unhold linux-image-amd64

Nettoyage

Nettoyage
$sudo apt clean
$sudo apt autoclean
$sudo apt autoremove --purge
$sudo aptitude purge ~c

🛠️ Maintenance & Diagnostic

Paquets cassés

Diagnostic
$sudo apt --fix-broken install
$sudo apt check
$sudo dpkg --configure -a
$dpkg -l | grep ^[a-z][a-z]

Processus bloquants

Processus
$sudo lsof | grep ' (deleted)'
$sudo needrestart

Dépendances et cohérence

Dépendances
$apt-cache depends <paquet>
$apt-cache rdepends <paquet>
$sudo debsums -c

⚡ Commandes avancées (Expert)

Travailler avec plusieurs distributions

Multi-distrib
# Verrouiller trixie comme distribution par défaut (base de ce guide)
echo 'APT::Default-Release "trixie";' | sudo tee /etc/apt/apt.conf.d/99default
# Installer un paquet depuis Sid tout en gardant trixie comme base
$sudo apt install -t unstable nom-du-paquet

Pinning fin

Pinning
# /etc/apt/preferences.d/pin-backports
Package: *
Pin: release a=trixie-backports
Pin-Priority: 100

Outils complémentaires

OutilDescriptionCommande exemple
apt-listbugsAffiche les bogues avant installationapt-listbugs list apache2
apt-listchangesMontre les changements récentsapt-listchanges --apt
apt-rdependsDépendances récursivesapt-rdepends vlc
aptitude whyPourquoi un paquet auto est installéaptitude why python3
nalaFrontend moderne optionnel pour APTapt install nala puis nala --help

🔧 Outils nécessitant une installation

Certaines commandes ou outils avancés mentionnés dans ce guide ne sont pas installés par défaut sur Debian. Pour les utiliser, il suffit d'installer les paquets correspondants.

OutilRôleInstallation
apt-fileTrouver le paquet fournissant un fichiersudo apt install apt-file
deborphanLister les paquets orphelinssudo apt install deborphan
needrestartVérifier les services à redémarrer après updatesudo apt install needrestart
apt-listbugsAfficher les bogues avant installationsudo apt install apt-listbugs
apt-listchangesVoir les changements récents des paquetssudo apt install apt-listchanges
aptitudeInterface interactive de gestion de paquetssudo apt install aptitude
nalaFrontend APT moderne (affichage amélioré)sudo apt install nala

⚠️ Commandes dangereuses — Zone rouge

Avertissement

Certaines commandes peuvent casser un système si elles sont mal utilisées.

CommandeDanger
dpkg --force-depends -i paquet.debIgnore les dépendances
apt-get -o Dpkg::Options::="--force-confnew" dist-upgradeÉcrase les fichiers de config modifiés
dpkg --purge --force-all <paquet>Supprime même si dépendances

Bonnes pratiques

  • Toujours simuler avec --simulate
  • Sauvegarder les configs
  • Utiliser apt-mark hold sur les paquets critiques

🏆 Top 12 commandes avancées APT

1
sudo apt install -t <release> <pkg>
Installer depuis une distribution spécifique
2
sudo apt-get --simulate dist-upgrade
Simuler une mise à niveau
3
apt-cache policy <pkg>
Voir versions et priorités
4
apt-file search <fichier>
Trouver le paquet fournisseur
5
sudo apt build-dep <pkg>
Installer dépendances de build
6
apt-mark hold <pkg>
Verrouiller un paquet
7
apt-cache rdepends <pkg>
Voir les dépendants
8
deborphan | xargs sudo apt purge -y
Purger les orphelins
9
dpkg -S <fichier>
Savoir quel paquet possède un fichier
10
aptitude search '~S'
Recherche avancée avec motifs
11
sudo needrestart
Redémarrer les services après update
12
apt-cache madison <pkg>
Toutes les versions disponibles

🎯 Cas pratiques avancés (format GPS)

A1
Installer un paquet depuis backports
Problème
Version trop ancienne
Commande
sudo apt install -t trixie-backports firefox
A2
Récupérer un système avec dépendances cassées
Commande
sudo apt --fix-broken install
A3
Installation minimale
Commande
sudo apt install --no-install-recommends nginx
A4
Downgrade propre
Commande
sudo apt install <pkg>=<version-ancienne>
A5
Trouver le paquet fournisseur
Commande
apt-file search bin/lsmod
A6
Vérifier cohérence
Commandes
sudo apt check + sudo debsums -c
A7
Simuler une suppression risquée
Commande
apt remove --simulate libssl
A8
Verrouiller le noyau
Commande
sudo apt-mark hold linux-image-amd64
A9
Voir qui dépend de python3
Commande
apt-cache rdepends --installed python3
A10
Dépendances de build
Commande
sudo apt build-dep vlc
A11
Nettoyer orphelins
Commande
sudo apt autoremove --purge
A12
Vérifier les bogues avant installation
Commande
apt-listbugs list apache2

🔗 Références complètes

Documentation officielle Debian

SourceContenu
aptRéférence complète de la commande apt
aptitudeRéférence complète d'aptitude
apt-getRéférence complète d'apt-get
Aptitude vs. Apt-GetComparaison et authentification des paquets

Pages help locales

Help
$apt install --help
$apt-get install --help
$apt search --help
$apt search --help
$apt remove --help
$apt-get remove --help
$aptitude --help

📖 Lectures recommandées SafeITExperts

SourceContenu
sudo ou su ?Élévation de privilèges Linux
Environnements de Bureau LinuxCompatibilités des environnements de bureau en 2025
KDE Unstable Plasma sur TumbleweedKDE Plasma sur openSUSE Tumbleweed
Linux, Windows ou macOS8 critères pour choisir son OS

🎯 Conclusion

APT est un outil puissant et mature qui fait la force de Debian. Sa maîtrise passe par la compréhension des dépôts, du pinning et des différentes commandes.

Points clés
  • Stableapt upgrade ; Testing/Sidapt full-upgrade
  • Toujours apt update avant une installation
  • Utiliser --simulate pour prévisualiser
  • Configurer le pinning pour contrôler les priorités
  • Nettoyer avec apt autoremove et apt autoclean
Pour être informé des derniers articles, inscrivez vous :
Commenter cet article

Archives

Articles récents