Proč bránit aktualizaci balíčku? Řekněme, že instalujete balíček starší, než je verze dostupná v repozitářích Debian, Ubuntu nebo Linux Mint, nebo víte, že aktualizace způsobuje problémy a chcete aktualizovat všechny balíčky mínus jeden (nebo dva, tři…).
Zde je příklad. Používám také prohlížeč Chromium Záplaty hardwarové akcelerace z PPA Saiarcot895-dev v Ubuntu 18.10. Aby hardwarová akcelerace fungovala s ovladači Nvidia, je nutný opravený balíček vdpau-va-driver, který v tomto PPA pro nejnovější Ubuntu 18.10 zatím není k dispozici. Naštěstí lze balíček Ubuntu 18.04 nainstalovat do Ubuntu 18.10, ale každý upgrade prostřednictvím „upgrade apt“ nebo pomocí nástroje Software Updater tento balíček aktualizuje, což nechci. Takže v tomto případě bych tento balíček ponechal mimo aktualizace, abych aktualizoval všechny ostatní balíčky, aniž bych se o to musel starat.
Pamatujte, že zamezení budoucích aktualizací balíčku může v některých situacích způsobit problémy, pokud je balíček, který držíte, používán jako závislost na jiném balíčku, který lze upgradovat. Snažte se tedy zabránit upgradu příliš mnoha balíčků, zejména knihoven.
Ze stejné série:Jak najít dostupné balíčky z příkazového řádku v Debianu, Ubuntu nebo Linux Mintu [APT]
Zde jsou 3 způsoby, jak zabránit aktualizaci balíčku v Debianu, Ubuntu, Linux Mintu.
1. Zabránit aktualizacím balíčků pomocí GUI:Synaptic Package Manager
Synaptic Package Manager, grafický program pro správu balíčků Gtk pro apt, dokáže balíčky uzamknout, což zabrání jejich aktualizaci.
Je důležité si uvědomit, že použití Synaptic k zamykání balíčků nebrání jejich aktualizaci z příkazového řádku – spuštěním apt upgrade
nebo apt-get upgrade
bude stále aktualizovat balíček, který je uzamčen v Synaptic. Zamykání balíčků v Synaptic zabraňuje upgradům balíčků pomocí aplikace Ubuntu Software Updater a případně dalších grafických správců balíčků. Nezabrání to však aktualizaci balíčků pomocí aplikace Linux Mint Update Manager. Doporučuji tedy použít apt-mark
nebo dpkg
(viz níže), abyste zabránili aktualizaci balíčků.
Správce balíčků Synaptic můžete nainstalovat pomocí tohoto příkazu:
sudo apt install synaptic
Chcete-li zabránit aktualizaci balíčku pomocí Synaptic, najděte jej, vyberte balíček a klikněte na nabídku Synaptic Package -> Lock Version
:
Balík můžete také odemknout stejným způsobem.
Chcete-li zobrazit všechny blokované pakety v Synaptic, klikněte na Status
vlevo dole a poté klikněte na Pinned
nad Status
Sekce:
2. Zabránit aktualizaci balíčku pomocí apt-mark
Zabránění aktualizací balíčků pomocí apt-mark by mělo zabránit jejich aktualizaci pomocí Ubuntu Software Updater a také upgradům příkazového řádku (apt upgrade
/ apt-get upgrade
).
Balíček můžete použít pro budoucí aktualizace (a pro automatické odstranění) s apt-mark
pomocí tohoto příkazu:
sudo apt-mark hold PACKAGE
Nahraďte PACKAGE
s balíčkem, jehož aktualizaci chcete zabránit.
Můžete zkontrolovat, které balíčky jsou označeny jako hold
(aby nebyly aktualizovány) pomocí:
apt-mark showhold
Chcete-li odstranit blokování (aby bylo možné balíček aktualizovat), použijte:
sudo apt-mark unhold PACKAGE
Pro oba hold
a unhold
Můžete zadat více balíčků, stejně jako při instalaci softwaru s apt
(balíky oddělte mezerou).
3. Zabránit aktualizacím balíčku pomocí dpkg
Před časem existovali někteří správci grafických balíčků, kteří ignorovali stav apt-mark-hold. Nejsem si jistý, zda tomu tak stále je, ale pro jistotu (a v případě, že používáte starou verzi Debian / Ubuntu / Linux Mint) existuje další způsob, jak získat aktualizace balíčků v Ubuntu, Linux Mint nebo Debian zde zabránit:dpkg.
Chcete-li zabránit aktualizaci balíčku pomocí dpkg, použijte:
echo "PACKAGE hold" | sudo dpkg --set-selections
Nahraďte PACKAGE
s balíčkem, jehož aktualizaci chcete zabránit.
Všechna zadržení paketů můžete zobrazit pomocí tohoto příkazu:
dpkg --get-selections | grep hold
K odemknutí (umožnění aktualizace balíčku) použijte:
echo "PACKAGE install" | sudo dpkg --set-selections
ne jak apt-mark
, toto řešení neumožňuje zadat více balíčků současně.
-
Jak nainstalovat DaVinci Resolve 16.2 nebo 17 Beta v Ubuntu, Linux Mint nebo Debianu (generovat balíček DEB)
-
Jak nainstalovat Oracle Java 14 (JDK 14) na Ubuntu, Debian nebo Linux Mint z úložiště APT PPA
-
Zde je návod, jak pomocí příkazového řádku vyhledat dostupné balíčky v Debianu, Ubuntu nebo Linux Mintu [APT]