dpkg / apt-get möchte verschiedene Pakete installieren und überschreiben

dpkg / apt-get möchte verschiedene Pakete installieren und überschreiben

Ich möchte Pound installieren. Gehen Sie dazu wie folgt vor:

apt-get install pound

ergibt dies:

root@myhost:~# apt-get install pound
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  linux-headers-3.2.0-23-generic linux-headers-3.2.0-23
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
  pound
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.
Need to get 98.3 kB of archives.
After this operation, 226 kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/universe pound amd64 2.5-1.1 [98.3 kB]
Fetched 98.3 kB in 0s (418 kB/s)
Selecting previously unselected package pound.
(Reading database ... 102644 files and directories currently installed.)
Unpacking pound (from .../pound_2.5-1.1_amd64.deb) ...
Processing triggers for ureadahead ...
ureadahead will be reprofiled on next reboot
Processing triggers for man-db ...
Setting up mysql-server-5.5 (5.5.32-0ubuntu0.12.04.1) ...

Configuration file `/etc/apparmor.d/usr.sbin.mysqld'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.

Der MySQL-Server ist installiert und läuft. Ich möchte nicht versuchen, ihn erneut zu installieren.

Das Pound-Paket benötigt keinen MySQL-Server als Abhängigkeit.

Wie behebe ich das?

Ich möchte dies nicht aktualisieren, da dies ein Produktionssystem zum Absturz bringen würde. Es scheint etwas zu geben, dpkgdas jedes installierte Paket dazu zwingt, eine Neuinstallation oder Aktualisierung des MySQL-Servers zu erzwingen.

Antwort1

Es klingt, als würden Sie Ihr mysql-server-5.5-Paket aktualisieren. Diese Version entspricht den inUSN-1909-1, es klingt also, als hätten Sie kein Sicherheitsupdate installiert.

Sie sollten überprüfen, was in den verschiedenen Versionen der Konfigurationsdatei anders ist (indem Sie Dbeispielsweise in der Eingabeaufforderung drücken). Anschließend können Sie, wie in der Eingabeaufforderung angegeben, Ihre aktuelle Version (dieser Datei) mit beibehalten N, die Version von Ubuntu mit akzeptieren Yoder mit eine Shell starten, um selbst damit umzugehen (z. B. die Änderungen einzubinden) Z.

als Antwort auf Ihr Update:

Irgendwann in der Vergangenheit hat jemand (Sie oder ein anderer Administrator dieser Maschine) ein MySQL-Upgrade gestartet, möglicherweise ohne es zu bemerken. Oder vielleicht ist das System so konfiguriert, dass Sicherheitsupdates automatisch angewendet werden, und das MySQL-Update ist aus irgendeinem Grund fehlgeschlagen. Sie können dies in der apt-getAusgabe sehen:

0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.

dpkg -s mysql-server-5.5Wenn Sie dies überprüft hätten , wäre die Statuszeile zweifellos nicht angezeigt install ok installed.

Wie dem auch sei, was beim ersten Mal passierte, war, dass dpkg tatsächlich die Dateien aus dem neuen Paket entpackte (und dabei wahrscheinlich auch MySQL stoppte, vielleicht wurde es deshalb abgebrochen). Es kam sogar so weit, MySQL zu „konfigurieren“, aber dabei trat entweder ein Fehler auf oder es wurde abgebrochen.

aptversucht, das zu beheben, indem das Paket konfiguriert wird. Sie können das Problem möglicherweise umgehen, indem Sie dpkg -idirekt verwenden ( dpkgSie können aber auch versuchen, es zu konfigurieren, ich bin mir nicht sicher).

Die eigentliche Lösung besteht darin, dass Sie eine Ausfallzeit einplanen und das MySQL-Upgrade abschließen müssen (und seien Sie vorsichtig, es könnte ein Konfigurationsfehler aufgetreten sein). Insbesondere, da die von Ihnen verwendete Version (laut Oracle) Remote-Schwachstellen, die sowohl die Vertraulichkeit als auch die Integrität beeinträchtigen können.

Antwort2

Sie haben die Nachricht erhalten 2 not fully installed or removed, bevor Sie überhaupt mit Ihrem Apt-Lauf begonnen haben. Das istnichtnormal. Dies bedeutet normalerweise, dass Ihre Paketdatenbank in einem defekten oder inkonsistenten Zustand ist. Wenn Sie dies jemals sehen,SOFORT ABBRECHENUm das Problem zu beheben , sollten Sie zunächst versuchen apt-get -f install, Folgendes auszuführen. Wenn dies nicht funktioniert, können Sie andere Dinge tun, aber führen Sie niemals andere Aktionen mit der Paketdatenbank aus, wenn Sie Nachrichten sehen, die Wörter wie enthalten not fully installed or removed. Beheben Sie zuerst das Problem.

Ich bin eigentlich ein wenig überrascht, dass apt Sie in diesem Fall fortfahren lässt. Ich erlebe solche Situationen nicht oft, aber soweit ich mich erinnere, lässt apt Sie nicht fortfahren, bis Sie die Dinge repariert haben.

Wie Sie sehen, poundhat Apt bei der Installation jedenfalls versucht, die Installation der MySQL-Pakete abzuschließen. Dabei handelte es sich um die Pakete, vor denen Apt Sie ursprünglich mit der oben genannten 2 not fully installed or removedMeldung gewarnt hatte.

HINWEIS: @derobert hat in seiner Antwort dasselbe Thema aus einer etwas anderen Perspektive behandelt. Da Sie ihn anscheinend nicht verstanden haben, dachte ich, ich würde meinen Senf dazugeben.

verwandte Informationen