Dans les distributions basées sur redhat, l'outil yum dispose d'une commande distro-sync qui synchronise les packages avec les référentiels actuels. Cette commande est utile pour revenir à un état de base si les packages de base ont été modifiés depuis une source externe. La documentation pour la commande est:
distribution-synchronization ou distro-sync Synchronise l'ensemble de packages installés avec les derniers packages disponibles. Pour ce faire, effectuez une obsolète, une mise à niveau ou une mise à niveau, le cas échéant. Cela fera "normalement" la même chose que la commande de mise à niveau. Toutefois, si le paquet FOO est installé à la version 4 et que la dernière version disponible est uniquement la version 3, cette commande rétrogradera FOO à la version 3.
Existe-t-il une opération équivalente dans Ubuntu?
Je pense que vous pouvez le faire en ajoutant un profil /etc/apt/preferences qui a épinglé tous les paquets à la distribution/version représentée par le repo. La prochaine fois que vous lancerez apt-get upgrade, il sera rétrogradé si nécessaire pour satisfaire aux règles spécifiées. Voir man apt_preferences pour plus de détails.
http://wiki.debian.org/AptPreferences
Le revers de la médaille, c’est d’empêcher que cela ne se produise tout d’abord en épinglant les paquets que vous avez tout intérêt à garder stables. Donc, si elles sont mises à jour par une source extérieure , la prochaine mise à niveau d'apt-get reviendra à cela, et non à l'ensemble de votre système d'exploitation.
Non, il n'y a pas de telle commande dans le système de paquets apt, pour ce que je sais.
La commande dist-upgrade
de apt-get
est similaire, mais elle ne rétrograde pas les packages. La commande install
peut déclasser un paquet comme dans
Sudo apt-get install "package"="version"
mais comme vous le voyez, vous devez indiquer explicitement le numéro de version souhaité, que vous pouvez récupérer
apt-cache policy "package"