GNU/Linux >> Znalost Linux >  >> Debian

Debian – Jak nainstalovat jeden balíček z testování Debianu nebo nestabilního na stabilní?

Chci nainstalovat jeden balíček (a jeho závislosti, ale pouze do té míry, do jaké nejsou ve Wheezy uspokojivé) z Debian Jessie na můj systém Wheezy, aniž bych upgradoval „vše a kuchyňský dřez“ na verze Jessie. Konkrétně bych chtěl nainstalovat kpcli, který je k dispozici zabalený v Jessie, ale ne ve Wheezy.

Vše, co jsem našel, naznačuje, že bych měl přidat úložiště Jessie do svého seznamu zdrojů, nastavit připínání, aby vše zůstalo bez sípání, a vzít si pouze jeden balíček od jessie, a v podstatě to zapadne na své místo. Nicméně mi to nějak nesedí. Pokud vytvořím /etc/apt.d/sources.list.d/jessie.list s následujícím obsahem:

deb ftp://ftp.debian.org/debian/ jessie main
deb-src ftp://ftp.debian.org/debian/ jessie main

a poté vytvořte /etc/apt/preferences.d/jessie pomocí:

Package: *
Pin: release a=wheezy
Pin-Priority: 1001

Package: kpcli
Pin: release a=jessie
Pin-Priority: 450

a spusťte apt-get -u update následuje apt-get -u install kpcli/jessie , pak očekávám, že apt-get zatáhne kpcli a možná malou hrstku dalších balíčků od Jessie a zbytek mého nainstalovaného systému ponechám nedotčený. (Můj systém je plně aktuální instalace Wheezy.) Případně, pokud mám prioritu pinů příliš nízkou, očekával bych, že nic neudělá. Spíše v mém systému chce apt-get upgradovat několik stovek balíčků.

Co, přesně je potřeba nainstalovat pouze tento jediný balíček verze Jessie a ponechat zbytek mého systému Wheezy nedotčený?

Všimněte si, že v tomto konkrétním případě je software ve skutečnosti napsán v Perlu, takže se nejedná o žádnou kompilaci do binárního kódu nebo něco podobného; existuje však několik závislostí modulu Perl. Jednou z možných alternativ by tedy byla instalace .deb (staženého ručně) pomocí něčeho, co pouze (1) umožňuje specifikovat jeden místní archiv .deb, který se má nainstalovat, jako dpkg -i a (2) zpracovává závislosti inteligentním způsobem, což je jednoduché dpkg -i ne Nicméně přes veškeré hledání, které jsem několikrát provedl a nepodařilo se mi přijít s jednoduchým návodem, jak to udělat, by bylo skvělé obecné řešení (které funguje i pro binární, zkompilované balíčky). .

Přijatá odpověď:

Pro každý záznam (stabilní, testovací, nestabilní) máte pin s prioritou 500. Neměli byste používat pin> 1000. 1001 používám pouze tehdy, když chci něco snížit. Mám položky testing+sid+experimental specifikované v /etc/apt/sources.list a následující /etc/apt/preferences soubor:

Package: *
Pin: release o=Debian,a=testing
Pin-Priority: 900

Package: *
Pin: release o=Debian,a=experimental
Pin-Priority: 130

Hodnota 500 je výchozí pro nestabilní. Takže zkusme zkontrolovat iceweasel:

# apt-cache policy iceweasel
iceweasel:
  Installed: (none)
  Candidate: 17.0.10esr-1~deb7u1
  Version table:
     26.0-1 0
        130 http://ftp.pl.debian.org/debian/ experimental/main amd64 Packages
     24.2.0esr-1 0
        500 http://ftp.pl.debian.org/debian/ sid/main amd64 Packages
     17.0.10esr-1~deb7u1 0
        900 http://ftp.pl.debian.org/debian/ testing/main amd64 Packages

Pokud bych se tedy pokusil nainstalovat iceweasel, stáhlo by se z testovací větve, protože má nejvyšší prioritu.

Související:Vlastní rozložení xkb, ve kterém jedna klávesa vytvoří dva body kódu unicode?

Zkuste změnit priority na:

Package: *
Pin: release a=wheezy
Pin-Priority: 900

Package: kpcli
Pin: release a=jessie
Pin-Priority: 910

Debian
  1. Jak upgradovat systém Debian Linux z Wheezy na stabilní verzi Jessie

  2. Jak nainstalovat Proxmox VE 4 na Debian 8 (Jessie)

  3. Jak nainstalovat Nginx na Debian 8 (Jessie)

  1. Debian – Jak nainstalovat některé balíčky z „nestabilního“ Debianu na počítač Se spuštěným „stabilním“ Debianem?

  2. Jak nainstalovat nejnovější Firefox (bez ESR) na Debian 10 Buster (stabilní) nebo Bullseye (testování)

  3. Jak mohu spustit stabilní Debian, ale nainstalovat některé balíčky z testování?

  1. Jak nainstalovat Yarn na Debian 9

  2. Jak nainstalovat Yarn na Debian 10

  3. Jak nainstalovat Debian 8 (Jessie) Minimal Server