APT
Apparence
Paquets APT
Sur Debian (et ses dérivés comme Ubuntu), apt est un outil en ligne de commande pour gérer les paquets logiciels. Il permet d’installer, mettre à jour, supprimer et gérer les logiciels provenant des dépôts officiels de Debian.
Mise à jour de la liste des paquets
sudo apt update
Voir ce qui peut être mis à jour
sudo apt list --upgradable
Installation
sudo apt install --only-upgrade firefox
Ne gère pas les dépendances
sudo apt upgrade
Gère les dépendances
(permet l'installation de nouveaux paquets pour résoudre les dépendances)
sudo apt --with-new-pkgs upgrade
(peut également supprimer des paquets pour satisfaire les dépendances) => plus agressive
sudo apt full-upgrade
Supprimez tous les paquets devenus obsolètes et qui ne sont plus nécessaires
Supprime les anciens noyaux installés
sudo apt-get autoremove --purge
Supprimez le cache des paquets qui ne peuvent plus être téléchargés
sudo apt autoclean
Télécharge et installe les dépendances manquantes pour réparer les paquets cassés.
sudo apt --fix-broken install
Affichage des infos d'un paquet
apt show firefox
Recherche de paquets
apt search mot-clé
Termine la configuration des paquets interrompus.
voir tous les paquets
dpkg --list
ou
dpkg --get-selections
ou
apt list --installed
voir si un paquet est à jour
apt-cache policy firefox
compter les paquets installés sur Ubuntu
sudo dpkg-query -f '${binary:Package}\n' -W | wc -l
# ou
sudo apt list --installed | wc -l
voir si des paquets sont cassés
apt-get check
dpkg -l | grep -v ^ii
dpkg -l | grep ^rc #(installé et reste des fichiers de configuration)
dpkg -l | grep ^iB #(installé et avec des dépendances cassées)
phased => déféré (retardé)
Cette commande permet de calculer un score entre 0 et 99 à partir de votre machine-id, utilisé par Ubuntu pour les phased updates (mises à jour progressives).
1 .Calcul du Score de Phase
echo $((0x$(cut -c1-16 /etc/machine-id | head -c 8) % 100))
ou
awk '{print strtonum("0x" substr($0,1,8)) % 100}' /etc/machine-id
2. Résumé
| Étape | Action | Exemple |
|---|---|---|
| 1 | Extraire les 16 premiers caractères de /etc/machine-id
|
a1b2c3d4e5f6g7h
|
| 2 | Garder les 8 premiers caractères | a1b2c3d4
|
| 3 | Convertir en décimal (hexadécimal 0x...)
|
2712849364
|
| 4 | Appliquer % 100
|
64
|
| 5 | Score final | 64 |
3. À Quoi Sert Ce Score ?
- Phased Updates : Ubuntu déploie les mises à jour par vagues (ex : 10%, 30%, 50% des machines).
- Votre score (
64) détermine si vous recevez une mise à jour :- Si la phase actuelle est ≤ 64 → Vous l’obtenez.
- Si la phase actuelle est ≤ 64 → Vous l’obtenez.
- Si la phase est > 64 → Vous devrez attendre.
4. Pourquoi Cette Méthode ?
- Déterminisme : Le score est toujours le même pour votre machine (car basé sur
machine-id).
- Répartition uniforme : Les scores sont distribués entre 0 et 99 pour équilibrer le déploiement.
5. Lister tous les fichiers phased
#check_phased_updates.sh
#!/bin/bash
# Liste des paquets en phased updates
PACKAGES=$(apt list --upgradable | grep -E "*" | cut -d'/' -f1)
echo "Checking phased updates"
# Parcourir chaque paquet et extraire le pourcentage de phased updates
for PACKAGE in $PACKAGES; do
echo $PACKAGE
apt-cache policy $PACKAGE | grep "phased"
done
chmod +x check_phased_updates.sh
./check_phased_updates.sh
DPKG
APTITUDE
sudo aptitude update
aptitude search '~U'
sudo aptitude upgrade
apt vs apt-get vs aptitude
apt: Version moderne et conviviale, combinant les fonctionnalités deapt-getetapt-cacheavec des couleurs et une barre de progression.apt-get: Outil plus ancien, toujours utilisé dans les scripts pour sa stabilité.aptitude: Alternative avec une interface en mode texte (interactive) et une gestion avancée des dépendances.