Lab 10.1 - Installation et Utilisation d'apt
Objectifs du Lab
À la fin de ce lab, vous serez capable de:
- Utiliser apt pour installer des paquets
- Mettre à jour le système Ubuntu 24.04
- Gérer les repositories
- Résoudre les problèmes de dépendances
- Rechercher et obtenir des informations sur les paquets
Durée Estimée
30-45 minutes
Prérequis
- Ubuntu 24.04 installé et fonctionnel
- Accès sudo
- Connexion Internet
- Terminal ouvert
Exercice 1: Mise à Jour du Système
Étape 1: Mettre à Jour la Liste des Paquets
# Mettre à jour la liste des paquets disponibles
sudo apt update
# Voir les paquets à mettre à jour
apt list --upgradable
Étape 2: Mettre à Jour les Paquets
# Mettre à jour tous les paquets installés
sudo apt upgrade
# Mise à jour complète (inclut changements de dépendances)
sudo apt full-upgrade
# Mise à jour sans confirmation
sudo apt upgrade -y
Étape 3: Vérifier les Mises à Jour
# Voir les paquets à mettre à jour
apt list --upgradable
# Voir les informations de mise à jour
apt show nom-paquet
Exercice 2: Installation de Paquets
Étape 1: Installation Simple
# Installer un paquet
sudo apt install htop
# Installer plusieurs paquets
sudo apt install vim git curl
# Installer sans confirmation
sudo apt install -y nom-paquet
Étape 2: Installation de Version Spécifique
# Voir les versions disponibles
apt-cache madison nom-paquet
# Installer une version spécifique
sudo apt install nom-paquet=version
# Exemple
sudo apt install nginx=1.18.0-0ubuntu1.4
Étape 3: Installation depuis Fichier .deb
# Télécharger un .deb
wget https://example.com/paquet.deb
# Installer
sudo apt install ./paquet.deb
# Ou avec dpkg
sudo dpkg -i paquet.deb
sudo apt install -f # Résoudre dépendances
Exercice 3: Recherche et Information
Étape 1: Rechercher des Paquets
# Rechercher par nom
apt search nginx
# Rechercher par description
apt search "web server"
# Recherche exacte
apt search --names-only nginx
Étape 2: Informations sur les Paquets
# Informations détaillées
apt show nginx
# Dépendances
apt depends nginx
# Paquets qui dépendent de nginx
apt rdepends nginx
# Contenu d'un paquet
dpkg -L nginx
Étape 3: Liste des Paquets
# Paquets installés
apt list --installed
# Paquets disponibles
apt list --available
# Paquets à mettre à jour
apt list --upgradable
Exercice 4: Gestion des Repositories
Étape 1: Voir les Repositories
# Voir les sources
cat /etc/apt/sources.list
# Voir les sources additionnelles
ls /etc/apt/sources.list.d/
# Voir toutes les sources
cat /etc/apt/sources.list.d/*.list
Étape 2: Ajouter un Repository
# Méthode 1: Fichier dans sources.list.d/
echo "deb http://repo.example.com/ubuntu noble main" | \
sudo tee /etc/apt/sources.list.d/mon-repo.list
# Ajouter la clé GPG
wget -qO - http://repo.example.com/key.gpg | sudo apt-key add -
# Mettre à jour
sudo apt update
Étape 3: Repository PPA (Ubuntu)
# Ajouter un PPA
sudo add-apt-repository ppa:nom/ppa
# Supprimer un PPA
sudo add-apt-repository --remove ppa:nom/ppa
# Mettre à jour
sudo apt update
Exercice 5: Suppression et Nettoyage
Étape 1: Supprimer des Paquets
# Supprimer un paquet (garde la config)
sudo apt remove nom-paquet
# Supprimer paquet et configuration
sudo apt purge nom-paquet
# Supprimer plusieurs paquets
sudo apt remove paquet1 paquet2 paquet3
Étape 2: Nettoyage
# Supprimer dépendances inutilisées
sudo apt autoremove
# Nettoyer le cache
sudo apt clean
# Nettoyage automatique
sudo apt autoclean
# Tout nettoyer
sudo apt autoremove -y
sudo apt autoclean
Exercice 6: Résolution de Problèmes
Étape 1: Dépendances Cassées
# Réparer les dépendances
sudo apt --fix-broken install
# Réparer complètement
sudo apt --fix-missing install
sudo dpkg --configure -a
Étape 2: Cache Corrompu
# Nettoyer le cache
sudo apt clean
sudo rm -rf /var/lib/apt/lists/*
# Reconstruire le cache
sudo apt update
Étape 3: Paquet Bloqué
# Voir les processus utilisant un paquet
sudo lsof | grep nom-paquet
# Forcer la réinstallation
sudo apt install --reinstall nom-paquet
Exercice 7: Pratique Complète
Étape 1: Installation d'un Serveur Web
# Installer nginx
sudo apt update
sudo apt install -y nginx
# Vérifier l'installation
systemctl status nginx
nginx -v
# Voir les fichiers installés
dpkg -L nginx | head -20
Étape 2: Mise à Jour Système
# Script de mise à jour complète
cat > update-system.sh << 'EOF'
#!/bin/bash
echo "Mise à jour liste paquets..."
sudo apt update
echo "Mise à jour paquets..."
sudo apt upgrade -y
echo "Nettoyage..."
sudo apt autoremove -y
sudo apt autoclean
echo "Terminé!"
EOF
chmod +x update-system.sh
./update-system.sh
Vérification
Checklist
Vérifiez que vous pouvez:
- Mettre à jour le système (apt update, upgrade)
- Installer des paquets (apt install)
- Rechercher des paquets (apt search)
- Voir les informations (apt show)
- Gérer les repositories
- Supprimer des paquets (apt remove, purge)
- Nettoyer le système (autoremove, clean)
- Résoudre les problèmes de dépendances
Questions de Réflexion
-
Quelle est la différence entre apt update et apt upgrade?
- update: Met à jour la liste des paquets disponibles
- upgrade: Met à jour les paquets installés
-
Pourquoi utiliser apt autoremove?
- Supprime les dépendances inutilisées
- Libère de l'espace disque
-
Quand utiliser apt purge vs apt remove?
- remove: Supprime le paquet, garde la config
- purge: Supprime le paquet et la config
Prochaines Étapes
- Lab 10.2: Gestion des Repositories
- Lab 10.3: Compilation depuis Sources
- Lab 10.4: Snap et Flatpak
- Chapitre 10.1: apt (Debian/Ubuntu)
Ressources Ubuntu 24.04
- Ubuntu Packages
man apt- Documentation aptapt-cache search- Recherche avancée
Lab créé le: Décembre 2024 - Testé sur Ubuntu 24.04