Die folgenden Pakete wurden zurückgehalten

Die folgenden Pakete wurden zurückgehalten

Ich verwende 64-Bit-Debian Wheezy. In letzter Zeit apt-get upgradeerhalte ich folgende Meldung:

The following packages have been kept back:
  libsmbclient libtevent0 samba-libs

Es macht mich verrückt. Ich dachte, ich entferne einfach Samba, da ich es sowieso nicht verwende, aber irgendein Genie hat Gnome davon abhängig gemacht:

# apt-get remove libsmbclient
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  gnome gnome-core gvfs-backends libgnomevfs2-extra libsmbclient mencoder mplayer

Wie aktualisiere ich diese Pakete sicher?

Es sind nicht viele benutzerdefinierte Dinge installiert:

deb http://ftp.pl.debian.org/debian/ wheezy main 
deb-src http://ftp.pl.debian.org/debian/ wheezy main 

deb http://security.debian.org/ wheezy/updates main 
deb-src http://security.debian.org/ wheezy/updates main 

# wheezy-updates, previously known as 'volatile'
deb http://ftp.pl.debian.org/debian/ wheezy-updates main 
deb-src http://ftp.pl.debian.org/debian/ wheezy-updates main 

# wheezy-backports
deb http://ftp.pl.debian.org/debian/ wheezy-backports main contrib non-free

# virtualbox
deb http://download.virtualbox.org/virtualbox/debian/ wheezy contrib

[AKTUALISIEREN]

Was ich versucht habe:

  1. apt-get dist-upgrade- Ergebnis ist das gleiche (Pakete wurden zurückgehalten).
  2. verwendet aptitude, aber es wird lediglich vorgeschlagen, Gnome und einige andere Gnome-bezogene Pakete zu entfernen und eine ganze Menge i386-Pakete zu installieren (sieht aus wie nur Bibliotheken).
  3. apt-get install libsmbclientgibtlibsmbclient : Depends: samba-libs (= 2:4.1.9+dfsg-1~bpo70+1) but it is not going to be installed
  4. apt-get install libtevent0gibt libtevent0 : Depends: libtalloc2 (>= 2.1.0) but 2.0.7+git20120207-1 is to be installed.
  5. apt-get install samba-libsgibtsamba-libs : Depends: samba-dsdb-modules (= 2:4.1.9+dfsg-1~bpo70+1) but it is not going to be installed

[UPDATE 2]

Es scheint, dass die Ursache dieses Problems irgendwo im Backports-Repository liegt. Ich habe einmal mit Bumblebee und auch einigen DVD-Ripping-Sachen experimentiert und ich erinnere mich, dass ich etwas von Backports installieren musste. Ich brauche es nicht mehr. Bumblebee hat bei meiner Hardware sowieso versagt und die DVD wurde am Ende unter Windows gerippt :(

Jetzt habe ich es getan aptitude search '~S ~i ~Abackports'und das hier bekommen:

i   initramfs-tools                   - generic modular initramfs generator
i A libavutil53                       - Libav utility library
i   libldb1                           - LDAP-like embedded database - shared library
i A libnettle4                        - low level cryptographic library (symmetric and one-way cryptos)
i A libntdb1                          - New Trivial Database - shared library
i A libopus0                          - Opus codec runtime library
i   libswscale2                       - Libav video scaling library
i A libtdb1                           - Trivial Database - shared library
i A libwbclient0                      - Samba winbind client library
i A python-talloc                     - hierarchical pool based memory allocator - Python bindings
i   samba-common                      - common files used by both the Samba server and client

Ich denke, ich sollte diese Pakete downgraden und dann sollte alles in Ordnung sein. Habe ich Recht? Wie soll ich das machen?

[UPDATE 3]

Ich habe versucht, diese Pakete aus dem Backports-Repo zu entfernen oder herunterzustufen, und habe dies nur teilweise geschafft.

Als ich ein Downgrade durchführen wollte, libntdb1stellte ich fest, dass es im stabilen Repo nicht vorhanden ist. Als ich versuchte, es zu entfernen, wollte apt erneut auch Gnome entfernen. Als ich apt-cache rdepends libntdb1das tat, stellte sich heraus, dass nur die umgekehrte Abhängigkeit vorhanden ist samba-libs. Es ist samba-libsauch im stabilen Repo nicht vorhanden UND ich kann es auch nicht entfernen, weil es erneut versucht, Gnome und eine ganze Menge Zeug zu entfernen. Was zum Teufel ist hier los? Beachten Sie, dass es samba-libsnicht aufgeführt wird, wenn ich es mache aptitude search '~S ~i ~Abackports'. Wie werde ich dieses Ding los?

Auch als ich versuchte, ein Downgrade durchzuführen libldb1, libwbclient0konnte ich es nicht, weil aptich in beiden Fällen Gnome entfernen wollte. Warum?

Jetzt habe ich also drei Pakete aus dem Backports-Repo, die wie folgt aufgelistet sind aptitude search '~S ~i ~Abackports':

i   libldb1              - LDAP-like embedded database - shared library
i A libntdb1             - New Trivial Database - shared library
i A libwbclient0         - Samba winbind client library

UND samba-libsdas kommt anscheinend auch aus Backports, ist aber nicht aufgeführt beiaptitude search '~S ~i ~Abackports'

Antwort1

Es ist möglich, Deb-Pakete mit folgendem Befehl auf ein bestimmtes Repo herunterzustufen apt:

# apt-get install libsmbclient/wheezy libtevent0/wheezy samba/wheezy
  • Die Konstruktion „[Paket]/Wheezy“ bedeutet, dass der Benutzer ein Paket aus dem Wheezy-Repository möchte.nurund nicht das neueste.
  • Es ist wichtig, anzugebenallegewünschte Pakete auf einmal, damit aptAbhängigkeiten richtig aufgelöst und andere Wheezy-Pakete abgerufen werden können.

Wenn aptSie nicht aufgefordert werden, wichtige Pakete zu löschen, die Sie behalten möchten, können Sie loslegen. Es wird einige Warnungen zu Abhängigkeitsproblemen geben, aber Sie können diese Warnungen ignorieren, solange sie nicht schwerwiegend sind.

Nach einem erfolgreichen Downgrade werden Bibliotheken wie libtevent0, libldb1 usw. nicht mehr benötigt. Sie können apt-get --purge autoremoveund/oder deborphan(falls installiert) verwenden, um verwaiste Pakete zu finden und zu bereinigen, die auf dem System nicht nützlich sind.

(Meine vorherige Antwort verliert ihre Gültigkeit und wird demnächst gelöscht. Sie ist sowieso falsch – ein Downgrade ist mit möglich apt.)

Antwort2

Ich verwende den interaktiven Paketsolver von Aptitude:

ausführen sudo aptitude. Geben Sie dann U(großes u) ein, um anzugeben, dass Sie alles aktualisieren möchten. Sie werden benachrichtigt, dass ein Konflikt vorliegt, und erhalten einen Lösungsvorschlag. Verwenden Sie , eum den interaktiven Löser aufzurufen, und dann .(Punkt) und ,(Komma), um die verschiedenen gefundenen Lösungen zu durchlaufen, und !akzeptieren Sie dann eine der Lösungen.

Sie können auch versuchen, ihm bei der Suche nach einer (für Sie) besseren Lösung zu helfen, indem Sie zu einem Teil einer Lösung wechseln (wo beispielsweise vorgeschlagen wird, Gnome zu entfernen) und ihm mitteilen, dass Sie dies akzeptieren (mit A) oder ablehnen (mit ).R

Antwort3

Schnellste und einfachste Lösung:

Sie müssen jedes Paket einzeln installieren.

Sieh dir das anSuperuserLösung: Lösung für zurückgehaltene Apt-Pakete

Warnung: Renne nicht sudo apt-get dist-upgradebis Sie die Pakete, die Sie installieren müssen, vollständig installiert haben. DANACH, und NUR DANACH, können Sie sudo apt-get update& ausführen.sudo apt-get dist-upgrade

Antwort4

Öffnen Sie ein Terminal und geben Sie ein:

apt-cache rdepends packagename

und ersetzenPaketnamenmit dem Paket, das Sie entfernen möchten. Es werden die Pakete aufgelistet, die das Paket benötigen, das Sie entfernen möchten. Entfernen Sie zuerst diese Pakete und versuchen Sie dann, das eigentliche Paket zu entfernen.

verwandte Informationen