RPMs festnageln, unerwuenschtes Update verhindern
Um apt das update bestimmter Pakete (z. B. eigene kompilierte) zu verbieten, kann das sogenannte Pinning eingesetzt werden.
Das erreicht man, indem man in der Datei /etc/apt/preferences einen Eintrag hinzufügt. Falls die /etc/apt/preferences nicht existiert, einfach anlegen. (z. B. mit touch /etc/apt/preferences wird eine leere Datei erstellt, oder mit einem Editor deiner Wahl)
Beispiel: webmin festhalten
Package: webmin Pin: version 1.14* Pin-Priority: 1001
Dadurch wird apt das Paket webmin nicht mehr automatisch auf eine Version 1.150 oder höher updaten, sondern maximal bis 1.149. Nur wenn explizit mit
apt-get install webmin=1.150
eine bestimmte Verson angefordert wird würde diese auch installiert.
Die möglichen Optionen zum pinnen kann man hier finden:
http://laiskiainen.org/apt/tricks/ (Kapitel Pinning)
oder hier zum weiteren nachlesen:
http://www.linux-magazin.de/Artikel/ausgabe/2002/11/apt/apt.html http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.de.html (Kapitel 4.10)
Mit dem Pinning ist es z. B. auch möglich, bestimmten Paketen einen Vorrang zu geben.
Beispiel:
Package: kde* Pin: version 3.2* Pin-Priority: 1001
damit würden nur kde 3.2 Pakete installiert, keine kde 3.3er. Oder man bevorzugt Pakete aus packman gegenüber SuSE, dann würde über Components gepinnt, und das packman-Repository erhält eine höhere Nummer als SuSE-Repositories Das ist sinnvoll für Multimedia-Pakete, da SuSE bestimmte Pakete aus lizenzrechtlichen Gründen "verkrüppelt".
Beispiel
Package: * Pin: release c=packman Pin-Priority: 1001 Package: * Pin: release c=packman-i686 Pin-Priority: 1002
siehe auch hier:
http://www.openoffice.de/linux/buch/pinning.html http://www.linux-magazin.de/Artikel/ausgabe/2002/11/apt/apt.html http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.de.html (Kapitel 4.10)
Wer die genaue Syntax der /etc/apt/preferences sucht wird in der zugehörigen man-page fündig:
man apt_preferences