redis-server wird immer wieder entfernt

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
sandrac

redis-server wird immer wieder entfernt

Beitrag von sandrac » 06.01.2019 10:44:57

Guten Morgen

Ich installiere auf einem Testserver redis-server und redis-tools von backport, da ich gerne die neue Version hätte. DIes ist mittels

Code: Alles auswählen

apt-get -t stretch-backports install redis-server redis-tools
gar kein Problem.
Wenn ich nun jedoch die Updates ausführen möchte

Code: Alles auswählen

apt-get update && apt-get dist-upgrade && apt-get autoremove
wird mir der redis-server immer wieder entfernt.

Code: Alles auswählen

OK:1 http://security.debian.org/debian-security stretch/updates InRelease
OK:2 http://ftp.debian.org/debian stretch-backports InRelease
Ign:3 http://ftp.de.debian.org/debian stretch InRelease
OK:4 http://ftp.de.debian.org/debian sid InRelease
OK:5 http://ftp.de.debian.org/debian stretch-backports InRelease
OK:6 http://ftp.de.debian.org/debian stretch Release
OK:7 https://packages.sury.org/php stretch InRelease
Paketlisten werden gelesen... Fertig
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
Paketaktualisierung (Upgrade) wird berechnet... Fertig
Die folgenden Pakete werden ENTFERNT:
  redis-server
Die folgenden Pakete werden aktualisiert (Upgrade):
  redis-tools
1 aktualisiert, 0 neu installiert, 1 zu entfernen und 0 nicht aktualisiert.
Es müssen noch 0 B von 523 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 152 kB Plattenplatz freigegeben.
Möchten Sie fortfahren? [J/n]
Hat jemand eine Idee weshalb dies so ist?

Vielen Dank schon jetzt für jeden Tipp.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: redis-server wird immer wieder entfernt

Beitrag von rendegast » 06.01.2019 16:15:35

OK:4 http://ftp.de.debian.org/debian sid InRelease
Einfach nur ein sid-Problem?
Die gewünschte Version aus stretch-backports wird gegen die aus sid getauscht,
die Versionsabhängigkeit führt zur Entfernung des Teilpakets?



Viele, die sid unbedarft mit stable mischen, vegessen eine geeignete Priority-Policy.
vielleicht erstmal

Code: Alles auswählen

apt-cache policy
apt-cache policy redis-server redis-tools

dpkg -l  |  egrep -v "^ii"
dpkg -l  |  grep redis
Falls vorhanden, noch

Code: Alles auswählen

aptitude search "?installed"  |  grep redis
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

sandrac

Re: redis-server wird immer wieder entfernt

Beitrag von sandrac » 06.01.2019 16:31:19

Vielen Dank für deine Antwort. Ich habe auf dem Testserver mit Postfix tests gemacht welches aus sid stammt. Dies gibt es leider in keinem Repository in der aktuellen Version.

Andere Pakete werden ja auch nicht vom sid Repository überschrieben. Aber voraussichtlich wird schon das mein Problem sein.
Ich habe zwar extra eine Datei /etc/apt/apt.conf.d/99myDefaultRelease und dem Inhalt APT::Default-Release "stretch"; erstellt. Müsste das nicht ausreichen?

Edit hier noch die gewünschten ausgaben:
apt-cache policy

Code: Alles auswählen

Paketdateien:
 100 /var/lib/dpkg/status
     release a=now
 990 https://packages.sury.org/php stretch/main amd64 Packages
     release o=deb.sury.org,n=stretch,c=main,b=amd64
     origin packages.sury.org
 100 http://ftp.de.debian.org/debian stretch-backports/main amd64 Packages
     release o=Debian Backports,a=stretch-backports,n=stretch-backports,l=Debian Backports,c=main,b=amd64
     origin ftp.de.debian.org
 100 http://ftp.debian.org/debian stretch-backports/main amd64 Packages
     release o=Debian Backports,a=stretch-backports,n=stretch-backports,l=Debian Backports,c=main,b=amd64
     origin ftp.debian.org
 500 http://ftp.de.debian.org/debian sid/contrib amd64 Packages
     release o=Debian,a=unstable,n=sid,l=Debian,c=contrib,b=amd64
     origin ftp.de.debian.org
 500 http://ftp.de.debian.org/debian sid/non-free amd64 Packages
     release o=Debian,a=unstable,n=sid,l=Debian,c=non-free,b=amd64
     origin ftp.de.debian.org
 500 http://ftp.de.debian.org/debian sid/main amd64 Packages
     release o=Debian,a=unstable,n=sid,l=Debian,c=main,b=amd64
     origin ftp.de.debian.org
 990 http://security.debian.org/debian-security stretch/updates/main amd64 Packages
     release v=9,o=Debian,a=stable,n=stretch,l=Debian-Security,c=main,b=amd64
     origin security.debian.org
 990 http://ftp.de.debian.org/debian stretch/main amd64 Packages
     release v=9.6,o=Debian,a=stable,n=stretch,l=Debian,c=main,b=amd64
     origin ftp.de.debian.org
Mit Pinning verwaltete Pakete:
apt-cache policy redis-server redis-tools

Code: Alles auswählen

redis-server:
  Installiert:           5:5.0.3-3~bpo9+2
  Installationskandidat: 5:5.0.3-3
  Versionstabelle:
     5:5.0.3-3 500
        500 http://ftp.de.debian.org/debian sid/main amd64 Packages
 *** 5:5.0.3-3~bpo9+2 100
        100 http://ftp.debian.org/debian stretch-backports/main amd64 Packages
        100 http://ftp.de.debian.org/debian stretch-backports/main amd64 Packages
        100 /var/lib/dpkg/status
     3:3.2.6-3+deb9u2 990
        990 http://ftp.de.debian.org/debian stretch/main amd64 Packages
     3:3.2.6-3+deb9u1 990
        990 http://security.debian.org/debian-security stretch/updates/main amd64 Packages
redis-tools:
  Installiert:           5:5.0.3-3~bpo9+2
  Installationskandidat: 5:5.0.3-3
  Versionstabelle:
     5:5.0.3-3 500
        500 http://ftp.de.debian.org/debian sid/main amd64 Packages
 *** 5:5.0.3-3~bpo9+2 100
        100 http://ftp.debian.org/debian stretch-backports/main amd64 Packages
        100 http://ftp.de.debian.org/debian stretch-backports/main amd64 Packages
        100 /var/lib/dpkg/status
     3:3.2.6-3+deb9u2 990
        990 http://ftp.de.debian.org/debian stretch/main amd64 Packages
     3:3.2.6-3+deb9u1 990
        990 http://security.debian.org/debian-security stretch/updates/main amd64 Packages
dpkg -l | egrep -v "^ii"

Code: Alles auswählen

Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                          Version                                               Architektur  Beschreibung
+++-=============================-=====================================================-============-===============================================================================
rc  apt-listchanges               3.10                                                  all          package change history notification tool
rc  libglib2.0-bin                2.50.3-2                                              amd64        Programs for the GLib library
rc  linux-image-4.9.0-2-amd64     4.9.18-1                                              amd64        Linux 4.9 for 64-bit PCs (signed)
rc  packagekit                    1.1.5-2+deb9u1                                        amd64        Provides a package management service
ic  python-pbr                    1.10.0-1                                              all          inject useful and sensible default behaviors into setuptools - Python 2.x
rc  python3.5-minimal             3.5.3-1+deb9u1                                        amd64        Minimal subset of the Python language (version 3.5)
rc  reportbug                     7.1.7+deb9u2                                          all          reports bugs in the Debian distribution
rc  software-properties-common    0.96.20.2-1                                           all          manage the repositories that you install software from (common)
rc  unattended-upgrades           0.93.1+nmu1                                           all          automatic installation of security upgrades
dpkg -l | grep redis

Code: Alles auswählen

ii  libhiredis0.14:amd64          0.14.0-3                                              amd64        minimalistic C client library for Redis
ii  php-redis                     4.2.0-1+0~20181214085306.9+stretch~1.gbpf8a642        amd64        PHP extension for interfacing with Redis
ii  redis-server                  5:5.0.3-3~bpo9+2                                      amd64        Persistent key-value database with network interface
ii  redis-tools                   5:5.0.3-3~bpo9+2                                      amd64        Persistent key-value database with network interface (client)
aptitude search "?installed" | grep redis
Habe es kurz installiert:

Code: Alles auswählen

i A libhiredis0.14 - minimalistic C client library for Redis
i  php-redis - PHP extension for interfacing with Redis
i  redis-server - Persistente Schlüssel-Wert-Datenbank mit Netzwerkschnittstelle
i  redis-tools - Persistente Schlüssel-Wert-Datenbank mit Netzwerkschnittstelle (Client)

Benutzeravatar
novalix
Beiträge: 1908
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: redis-server wird immer wieder entfernt

Beitrag von novalix » 06.01.2019 17:50:53

Die Pin Priority von sid (500) ist höher als die von stretch-backports (100).
Damit ist das Szenario, dass @rendegast hier skizziert hat, sehr wahrscheinlich.

Du solltest die Rangfolge über pinning anders justieren.
In einer Datei "/etc/apt/preferences.d/sid"

Code: Alles auswählen

Package: *
Pin: release a=unstable
Pin-Priority: 100
und in einer weiteren Datei "/etc/apt/preferences.d/bpo"

Code: Alles auswählen

Package: *
Pin: release a=stretch-backports
Pin-Priority: 500
dreht sich die Rangfolge.
Du könntest der Vollständigkeit halber noch eine weitere Datei für stable mit der Priority 900 anlegen, die hat es aber eh schon.
Schau beim update und beim upgrade genau was passiert bzw. passieren würde (Schalter -s).
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

sandrac

Re: redis-server wird immer wieder entfernt

Beitrag von sandrac » 06.01.2019 19:39:40

Vielen Dank. So wird es nicht mehr entfernt
Du könntest der Vollständigkeit halber noch eine weitere Datei für stable mit der Priority 900 anlegen, die hat es aber eh schon.
Im Verzeichnis /etc/apt/preferences.d existiert ansonsten keine Datei.

Wäre der Inhalt dann

Code: Alles auswählen

Package: *
Pin: release a=stretch
Pin-Priority: 900
oder wäre es a=stable?

Nochmals Danke für die Hilfe

Benutzeravatar
novalix
Beiträge: 1908
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: redis-server wird immer wieder entfernt

Beitrag von novalix » 07.01.2019 13:42:12

Zu der Zeit als ich mich in das Paketmanagement eingelesen habe, gingen im pinning nur die Zweigbezeichnungen:

Code: Alles auswählen

Package: *
Pin: release a=stable
Pin-Priority: 900
Mittlerweile ist das wohl ein wenig aufgebohrt. In der manpage

Code: Alles auswählen

man apt_preferences
wird auch so etwas wie folgendes als Beispiel genannt:

Code: Alles auswählen

Package: *
Pin: release n=stretch
Pin-Priority: 900
Das sollte ebenso funktionieren.
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

sandrac

Re: redis-server wird immer wieder entfernt

Beitrag von sandrac » 08.01.2019 14:29:23

Vielen Dank

Antworten