GNU/Linux >> Znalost Linux >  >> Debian

Jak zabránit aktualizaci balíčku v Ubuntu, Debianu nebo Linux Mintu [APT]

Existuje několik způsobů, jak zabránit aktualizaci balíčku v Debianu, Ubuntu, Linux Mintu, elementary OS a dalších distribucích Linuxu založených na Debianu/Ubuntu. Tento článek představuje tři způsoby, jak vyloučit balíčky úložiště z upgradu.

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ě.


Debian
  1. Jak nainstalovat DaVinci Resolve 16.2 nebo 17 Beta v Ubuntu, Linux Mint nebo Debianu (generovat balíček DEB)

  2. Jak nainstalovat Oracle Java 14 (JDK 14) na Ubuntu, Debian nebo Linux Mint z úložiště APT PPA

  3. Zde je návod, jak pomocí příkazového řádku vyhledat dostupné balíčky v Debianu, Ubuntu nebo Linux Mintu [APT]

  1. Jak nainstalovat Pip na Ubuntu 18.04, Debian 9 a Linux Mint 19

  2. Jak ignorovat balíček z upgradu v Arch Linuxu

  3. Jak nainstalovat a nakonfigurovat Node.js a npm v Ubuntu, Debianu nebo Linux Mintu

  1. Jak zkompilovat a nainstalovat wxWidgets na Ubuntu/Debian/Linux Mint

  2. Jak zakázat Ipv6 na Ubuntu, Linux Mint, Debian

  3. Jak vypsat všechny balíčky v úložišti na Ubuntu, Debian nebo Linux Mint [APT]