Ich habe ein Paket in Debian, das manuell gepatcht wurde (nicht ideal, ich weiß), das ich auf der aktuellen Version belassen muss, damit Aktualisierungen die gepatchten Änderungen nicht überschreiben (ich werde die Sicherheitsupdates manuell überprüfen und anwenden). So wie ich es verstehe, gibt es ein paar Möglichkeiten, dies zu erreichen:
- apt-pinning (siehe
apt_preferences(5)
) aptitude hold
dpkg --set-selections
- einstellen mit
dselect
?
Ich habe gelesen, dass ein Hold keinen Einfluss auf einen anderen hat (z. B. aptitude hold
verhindert apt-get
oder verhindert die Verwendung nicht, dass dselect
das Paket aktualisiert wird). Was muss getan werden, um zu 100% sicherzustellen, dass Debians Tools das Paket niemals aktualisieren, es sei denn, ich entferne die Sperrung?
Antworten:
aptitude
unddpkg
getrennt haben Haltefunktionen , die sich leider nicht respektieren. Sie müssen also beide festlegen, wenn Sie beide Tools verwenden:apt / dpkg:
echo $PACKETNAME hold | dpkg --set-selections
Eignung:
aptitude hold $PACKETNAME
quelle
apt-mark hold
welche gibt, die laut help.ubuntu.com/community/… dasselbe tun wiedpkg --set-selections
.Ein besserer Ansatz in diesem speziellen Fall (gepatchtes Paket) könnte darin bestehen, die gepatchte Version in zu installieren
/usr/local
. Debian wird das nicht anfassen.quelle
Soweit ich weiß,
aptitude hold <package>
werden wir von den anderen gewürdigt , es sei denn, Sie bestellen ausdrücklich ein Upgrade (z. B. +, während sich der Cursor in aptitude auf dem Feld "aktualisierbare Pakete" befindet).quelle