J'ai un paquet dans Debian qui a été corrigé manuellement (pas idéal, je sais) que je dois conserver dans sa version actuelle afin que les mises à niveau n'écrasent pas les modifications corrigées (je vais inspecter et appliquer manuellement les mises à jour de sécurité). Si je comprends bien, il y a plusieurs façons d'aborder cela:
- apt-pinning (voir
apt_preferences(5)
) aptitude hold
dpkg --set-selections
- le mettre avec
dselect
?
J'ai lu qu'un blocage n'affectera pas un autre (donc, par exemple, l'utilisation aptitude hold
n'empêchera pas apt-get
ou ne mettra pas dselect
à jour le paquet). Que faut-il faire pour garantir à 100% que les outils Debian ne mettront jamais à jour le paquet à moins que je ne retire le blocage?
Réponses:
aptitude
etdpkg
ont des fonctions de maintien séparées qui ne se respecteront pas, malheureusement. Vous devez donc définir les deux si vous utilisez les deux outils:apt / dpkg:
echo $PACKETNAME hold | dpkg --set-selections
aptitude:
aptitude hold $PACKETNAME
la source
apt-mark hold
qui, selon help.ubuntu.com/community/… , fait la même chose quedpkg --set-selections
.Une meilleure approche dans ce cas particulier (package corrigé) pourrait être d'installer la version corrigée dans
/usr/local
. Debian n'y touchera pas.la source
Pour autant que je sache,
aptitude hold <package>
sera honoré par les autres à moins que vous ne commandiez explicitement sa mise à niveau (comme en appuyant sur + alors que le curseur est sur le champ "packages évolutifs" dans aptitude).la source