Ich möchte alle von der Distribution gelieferten Kernel-Updates aufgrund einer unangenehmen Sache blockieren, die mir kürzlich passiert ist. (Ich verwende ein Ubuntu 12.04 amd64-Derivat.)
Ich möchte alle Updates auf installierte Kernel der Minor-Version 3.2 in den linux-headers
blockieren , linux-headers-generic
, linux-image
, und linux-image-extra
Pakete. Das Problem, auf das ich stoße, ist, dass diese alle eine Version haben und wenn ich eine bestimmte Version blockiere, nichts gewonnen wird, weil eine neue Version installiert wird (zB:wenn ich linux-image-3.2.0-35
linux-image-3.2.0-36
wird nicht blockiert und könnte möglicherweise noch mit einem dist-upgrade
installiert werden von apt
.)
Akzeptierte Antwort:
Was Sie verwenden müssen, ist eine Funktion von apt-get namens holding
Sie können dies entweder über Synaptic oder Dpkg tun. Hier ist, wie ich meinen Kernel mit der dpkg-Methode halten würde.
Überprüfen Sie zuerst Ihren Kernel-Image-Namen
dpkg -l | grep linux-image
Ausgabe für mich:
ii linux-image-3.2.0-4-amd64 3.2.35-2 amd64 Linux 3.2 for 64-bit PCs
ii linux-image-amd64 3.2+46 amd64 Linux for 64-bit PCs (meta-package)
dann sagen Sie dpkg, dass es das Metapaket halten soll (die generische Version ohne Versionsnummern)
echo linux-image-amd64 hold | sudo dpkg --set-selections
Sie können dann mit dpkg -l linux-image-amd64
überprüfen, ob dies funktioniert hat
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==========================-==================-==================-==========================================================
hi linux-image-amd64 3.2+46 amd64 Linux for 64-bit PCs (meta-package)
Beachten Sie das "hi" unten, h bedeutet "gehalten" und i bedeutet "aktuell installiert". Dieses Paket wird installiert, aber wird nicht aktualisiert werden.
Sie können dies über
rückgängig machenecho linux-image-amd64 install | sudo dpkg --set-selections
und kann erneut über dpkg -l linux-image-amd64
überprüfen
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==========================-==================-==================-==========================================================
ii linux-image-amd64 3.2+46 amd64 Linux for 64-bit PCs (meta-package)
Beachten Sie „ii“, das erste i bedeutet, dass dieses Paket installiert werden soll, und das zweite i bedeutet, dass es derzeit installiert ist. Dieses Paket ist installiert und wird aktualisiert werden.
Weitere Informationen zu diesen Flags finden Sie unter man dpkg
insbesondere die Abschnitte „Paketauswahlstatus“.