GNU/Linux >> LINUX-Kenntnisse >  >> Debian

Debian – Wie installiere ich ein einzelnes Paket von Debian Testing oder Unstable auf Stable?

Ich möchte ein einzelnes Paket (und seine Abhängigkeiten, aber nur soweit diese in Wheezy nicht erfüllbar sind) von Debian Jessie auf meinem Wheezy-System installieren, ohne „alles und die Küchenspüle“ auf die Jessie-Versionen zu aktualisieren. Insbesondere möchte ich kpcli installieren, das als Paket in Jessie, aber nicht in Wheezy verfügbar ist.

Alles, was ich gefunden habe, deutet darauf hin, dass ich die Jessie-Repositories zu meiner Quellenliste hinzufügen, das Anheften so einstellen sollte, dass alles auf Keuchen bleibt, und nur das einzelne Paket von Jessie nehmen sollte, und es wird sich so ziemlich einfach einfügen. Allerdings passt es bei mir nicht zusammen. Wenn ich /etc/apt.d/sources.list.d/jessie.list mit folgendem Inhalt erstelle:

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

und erstellen Sie dann /etc/apt/preferences.d/jessie mit:

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

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

und führen Sie apt-get -u update aus gefolgt von apt-get -u install kpcli/jessie , dann erwarte ich, dass apt-get kpcli und vielleicht hinzuzieht eine kleine Handvoll anderer Pakete von Jessie und lasse den Rest meines installierten Systems unberührt. (Mein System ist eine vollständig aktuelle Installation von Wheezy.) Alternativ würde ich erwarten, dass es nichts tut, wenn ich die Pin-Priorität zu niedrig habe. Stattdessen möchte apt-get auf meinem System mehrere hundert Pakete aktualisieren.

Was, genau benötigt wird, um nur dieses eine einzelne Paket einer Jessie-Version zu installieren, während der Rest meines Wheezy-Systems unberührt bleibt?

Beachten Sie, dass in diesem speziellen Fall die Software tatsächlich in Perl geschrieben ist, sodass keine Kompilierung in Binärdateien oder ähnliches erforderlich ist. Es gibt jedoch eine Handvoll Abhängigkeiten von Perl-Modulen. Daher wäre eine mögliche Alternative, die .deb (manuell heruntergeladen) mit etwas zu installieren, das nur (1) die Angabe eines einzelnen, lokalen .deb-Archivs erlaubt, das installiert werden soll, wie dpkg -i , und (2) handhabt Abhängigkeiten auf intelligente Weise, was einfach dpkg -i ist nicht. Trotz all der Suche, die ich bei mehreren Gelegenheiten durchgeführt habe und keine einfach zu befolgende Anleitung dafür gefunden habe, wäre eine generische Lösung (eine, die auch für binäre, kompilierte Pakete funktioniert) großartig .

Akzeptierte Antwort:

Für jeden Eintrag (Stable, Testing, Unstable) haben Sie die Pin-Priorität 500. Sie sollten Pin> 1000 nicht verwenden. Ich verwende 1001 nur, wenn ich etwas herunterstufen möchte. Ich habe in /etc/apt/sources.list die Einträge testing+sid+experimental angegeben und den folgenden /etc/apt/preferences Datei:

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

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

Der Wert 500 ist voreingestellt für unstable. Versuchen wir also, iceweasel zu überprüfen:

# 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

Wenn ich also versuchen würde, iceweasel zu installieren, würde es vom Testing-Zweig heruntergeladen werden, weil es die höchste Priorität hat.

Verwandte:Benutzerdefiniertes xkb-Layout, in dem ein Schlüssel zwei Unicode-Codepunkte erstellt?

Versuchen Sie, die Prioritäten zu ändern:

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

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

Debian
  1. So aktualisieren Sie das Debian-Linux-System von Wheezy auf die stabile Version von Jessie

  2. So installieren Sie Proxmox VE 4 auf Debian 8 (Jessie)

  3. So installieren Sie Nginx unter Debian 8 (Jessie)

  4. Debian – Wie installiere ich einige Pakete von „unstable“ Debian auf einem Computer, auf dem „stable“ Debian läuft?

  5. So installieren Sie den neuesten Firefox (nicht ESR) auf Debian 10 Buster (stable) oder Bullseye (testing)

So aktualisieren Sie von Debian 8 Jessie auf Debian 9 Stretch

So installieren Sie Ansible unter Debian 8 (Jessie)

So installieren Sie Magento auf Debian 8 Jessie

So installieren Sie Drupal auf Debian 8 Jessie

So installieren Sie TeamViewer unter Debian 8 Jessie

So installieren Sie Docker unter Debian 8 Jessie