Scénario: dans la configuration de système contrôlée par la version et basée sur Puppet, Chef, etc., il est nécessaire de reproduire un certain état du système. Ceci est fait en spécifiant explicitement les versions de package système.
Récemment, nous avons rencontré un problème où certaines versions de paquet manquaient dans les référentiels Debian. Un exemple: le package "patch" était requis dans la version 2.7.5-1 + deb9u1, mais seul 2.7.5-1 + deb9u2 était disponible. Un autre exemple encore plus sévère: "linux-headers-4.9.0-9-common" est requis (en raison de l'installation du noyau associé) et seul "linux-headers-4.9.0-11-common" est disponible.
Cela rend impossible la reproduction d'un certain état d'un système.
Les packages ci-dessus ne sont que des exemples (que j'ai en fait rencontrés). Je suis intéressé à comprendre et à résoudre le problème général.
Quelle est l'idée derrière ces mises à jour, packages "disparus" et versions de packages?
Où puis-je obtenir les versions précédentes (pas vraiment les anciennes versions, mais des versions vieilles de quelques semaines) de paquets Debian? Il devrait être possible d'automatiser le processus d'installation de manière générale.
stable
reste cohérent, au moins jusqu'à la prochaine publication. stable-updates, testing et unstable ne contiennent que la dernière version d'un paquet donné. Pour toute autre chose, vous devrez regarder sur archive.debian.org (ou snapshot.debian.org comme mentionné dans la réponse de SK)
linux
nom pkg est une exception: en général, les paquets de Debian stable portent le même nom et changent seulement de numéro de version. linux-image-amd64
ne change jamais de nom et dépend toujours du dernier linux-image-4.9.0-*
. Le nouveau linux-image-4.9.0-*
nom pkg marque les modifications ABI du noyau incompatibles requises pour sauvegarder certaines corrections de bugs et permet de gérer la recompilation nécessaire des modules personnalisés (dkms, etc.). De même pour linux-headers-*
.
apt-get changelog packagename