it-swarm.dev

Jak downgrade balíčku pomocí apt-get?

Jak mohu downgrade balíčku na starší verzi pomocí apt-get?

Přijatelné jsou i jiné nástroje, ale přednost se dává apt-get.

327
user61928

USE

apt-get install «pkg»=«version»

NEBO

Sudo aptitude install «pkg»=«version»

Kde "pkg" je název balíčku a "verze" je číslo verze.

116
user91632

Pokud máte číslo verze nebo cílové vydání, apt-get podporuje výběr konkrétní verze nebo cílového vydání. Více podrobností najdete na manuální stránka apt-get . Je také přístupný z terminálu zadáním man apt-get

Sudo apt-get install <package-name>=<package-version-number> NEBO

Sudo apt-get -t=<target release> install <package-name>

je příkaz, který má být spuštěn. To může být použito ke snížení klasifikace balíčku na konkrétní verzi.

V připomínkách bylo užitečně zdůrazněno, že

  • apt-cache showpkg <package-name> uvádí všechny dostupné verze. (h/t Sparhawk )
  • apt-mark hold <package-name> "drží" balíček v aktuální verzi, což zabraňuje automatickým upgradům. (h/t Luís de Sousa )
322
Mahesh

Pokud jste upgradovali software pomocí ppa, můžete jej downgradovat pomocí ppa-purge. Nejprve musíte nainstalovat ppa-purge pomocí tohoto kódu:

Sudo apt-get install ppa-purge

Pak můžete ppa odstranit pomocí příkazu

Sudo ppa-purge ppa: user/ppa-name

tím se software automaticky sníží na původní verzi, která byla dodána s Ubuntu.

28
Apurba

Chcete-li downgrade, musíte udělat příkaz jako

 Sudo apt-get install pkg_name=version

ve vašem terminálu.

Na místo version vložte předchozí verzi, na kterou chcete přejít na nižší verzi.

11
rɑːdʒɑ

Podle mého názoru byste měli nejprve odinstalovat nebo vyčistit balíček, například:

Sudo apt-get remove <package>

nebo

Sudo apt-get purge <package>

Poté si můžete stáhnout verzi, kterou chcete nainstalovat, a ponechat ji ve složce, řekněme abc.deb v sekci Ke stažení. Otevřete terminál, přejděte do složky pomocí příkazu cd a nainstalujte předchozí verzi pomocí dpkg:

Sudo dpkg -i abc.deb

Nebo existuje malý nástroj s názvem ppa-purge Pokud máte v úmyslu downgradovat balíčky aktualizované prostřednictvím PPA.

Viz toto vlákno: http://www.webupd8.org/2009/12/remove-ppa-repositories-via-command.html

9
Theeternalflame

Tato otázka je stará, ale Google mě sem zavedl a nenašel jsem jednoduché oduševnění, které nevyžadují ruční předávání verzí při snižování počtu balíčků na starší verze.

Možná někdo, kdo to také potřebuje, najde také užitečné řešení.

Existuje nástroj s názvem apt-show-versions ukazuje nainstalované verze.

Spustit $ Sudo apt-show-versions -i Pokud je mezipaměť balíčku zastaralá.

Můžete snadno downgradovat všechny požadované balíčky doladěním regexu, ale tady je:

$ Sudo apt-get install $(apt-show-versions | grep -P 'newer than version in archive' | awk -F: '{print $1"/'$(lsb_release -cs)'"}')

Musíš mít lsb-release nainstalován pro poslední.

2
gudvinr