Die Installation von libgirepository-1.0-1:i386 führt zu Merkwürdigkeiten

Die Installation von libgirepository-1.0-1:i386 führt zu Merkwürdigkeiten

Dieser Apt-get-Austausch verwirrt mich (auf einer 64-Bit-CPU):

$ lsb_release -a                                                                                                                                                                       
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.2 LTS
Release:        14.04
Codename:       trusty

Beim Ausführen des Befehls entsteht folgende Ausgabe:

$ sudo apt-get install libgirepository-1.0-1:i386

Following packages have been installed and are no longer necessary:
  app-install-data-partner cdrdao fonts-lao fonts-thai-tlwg fonts-tlwg-garuda
  fonts-tlwg-kinnari fonts-tlwg-loma fonts-tlwg-mono fonts-tlwg-norasi
  fonts-tlwg-purisa fonts-tlwg-sawasdee fonts-tlwg-typewriter
  fonts-tlwg-typist fonts-tlwg-typo fonts-tlwg-umpush fonts-tlwg-waree
  foomatic-db-compressed-ppds gir1.2-dbusmenu-glib-0.4
  gir1.2-javascriptcoregtk-3.0 gnome-icon-theme gnome-icon-theme-symbolic
  gstreamer1.0-clutter humanity-icon-theme indicator-application kdesudo
  kubuntu-notification-helper libao-common libao4 libappindicator1
  libappindicator3-1 libcairo-script-interpreter2 libcairo2-dev
  libclutter-1.0-0 libclutter-1.0-common libclutter-gst-2.0-0
  libclutter-gtk-1.0-0 libcogl-common libcogl-pango15 libcogl15
  libdbusmenu-gtk3-4 libfontconfig1-dev libfreetype6-dev libgmime-2.6-0
  libharfbuzz-dev libharfbuzz-gobject0 libindicator3-7 libindicator7
  libjson-glib-1.0-0 libjson-glib-1.0-common libnautilus-extension1a
  libpeas-common libperl4-corelibs-perl libpixman-1-dev libpng12-dev
  libtotem-plparser18 libxcb-shm0-dev libxcomposite-dev libxft-dev
  libzeitgeist-2.0-0 printer-driver-min12xxw python-defer python3-pykde4
  syslinux-legacy ubuntu-extras-keyring ubuntu-release-upgrader-qt
  x11proto-composite-dev
  ...
Following packages will be REMOVED:
  aptdaemon apturl-kde gir1.2-atk-1.0 gir1.2-dee-1.0 gir1.2-freedesktop
  gir1.2-gdkpixbuf-2.0 gir1.2-glib-2.0 gir1.2-gst-plugins-base-0.10
  gir1.2-gstreamer-0.10 gir1.2-gtk-2.0 gir1.2-gtk-3.0 gir1.2-pango-1.0
  gir1.2-peas-1.0 gir1.2-soup-2.4 gir1.2-totem-1.0 gir1.2-totem-plparser-1.0
  gir1.2-udisks-2.0 gir1.2-unity-5.0 gir1.2-vte-2.90 gir1.2-webkit-3.0
  kubuntu-desktop libatk1.0-dev libgdk-pixbuf2.0-dev libgirepository-1.0-1
  libgtk2.0-dev libgtkglext1-dev libmuonprivate2 libpango1.0-dev
  libpangox-1.0-dev libpeas-1.0-0 libtotem0 muon muon-discover muon-notifier
  muon-updater python-appindicator python-aptdaemon
  python-aptdaemon.gtk3widgets python-gi python-gi-cairo python-gobject
  python-gst0.10 python-indicate python3-aptdaemon
  python3-aptdaemon.gtk3widgets python3-gi software-properties-common
  software-properties-gtk software-properties-kde totem totem-mozilla
  totem-plugins ubuntu-release-upgrader-gtk update-manager update-notifier
  usb-creator-common
Following NEW packages will be installed:
  libgirepository-1.0-1:i386   

Ich habe zwei Fragen.

  1. Warum glaubt apt-get, dass es so viele Pakete entfernen sollte? Ich habe ihm überhaupt nicht gesagt, dass es Totem entfernen soll.
  2. Wenn das nächste Mal eine wirklich seltsame apt-getSituation wie die oben beschriebene auftritt, wie kann ich dann selbst herausfinden, warum sich apt-get scheinbar so seltsam verhält?

Antwort1

Zunächst sollten Sie wissen, dass dies keine seltsame Aktion ist. Es ist völlig richtig und Sie haben irgendwie um diese Aktion gebeten!!

Warum passiert das?

Sie möchten installieren libgirepository-1.0-1:i386, haben aber bereits diese libgirepository-1.0-164-Bit-Version. Deshalb fordert Sie das System hier auf, die 64-Bit-Version durch diese 32-Bit-Version zu ersetzen.

Dieses Ersetzen hat einige Konsequenzen. Wenn Sie sich für das Ersetzen entscheiden, bedeutet dies, dass das System stattdessen die 32-Bit-Version löscht libgirepository-1.0-1und installiert. Wenn dieses Bibliothekspaket gelöscht wird, löscht das System daher auch andere davon abhängige Anwendungen, da diese Anwendungen nicht mehr verfügbar sind, wenn diese Bibliothek entfernt wird.

Zum Beispiel, warum Totem entfernt wird, schauen wir uns die Totem-Abhängigkeiten an

$ apt-cache rdepends totem 
totem
Reverse Depends:
  totem:i386
  totem:i386
  libtotem0:i386
  libtotem-dev:i386
  gnome-settings-daemon:i386
  totem-plugins-extra
  ubuntu-desktop
  totem-plugins
  totem-mozilla
  totem-dbg
  totem
 |nautilus
  libtotem0
  libtotem-dev
  gnome-settings-daemon
  totem:i386
  totem:i386
  libtotem0:i386
  libtotem-dev:i386
  gnome-settings-daemon:i386
  ubuntustudio-desktop
  ubuntu-sugar-remix
 |tunapie
  totem-plugins-extra
  totem-plugins-dvb-daemon
  totem-plugin-arte
  totem-plugin-arte
  streamtuner2
  remuco-totem
  gnome-core
  ezgo-multimedia
  bombono-dvd
  ubuntu-desktop
  totem-plugins
  totem-mozilla
  totem-dbg
  totem
 |nautilus
  libtotem0
  libtotem-dev
  gnome-settings-daemon

Wie Sie oben sehen, ist Totem von libtotem0und vielen anderen Paketen abhängig. Nehmen wir jedoch dieses Paket als Beispiel. Wenn Sie jetzt die Abhängigkeiten überprüfen, libgirepository-1.0-1werden Ihnen auch und viele andere angezeigt libtotem0. Um das Beispiel zu erklären: Wenn Sie das löschen libgirepository-1.0-1und die 32-Bit-Version installieren möchten, müssen Sie das entfernen, libtotem0um auch die 32-Bit-Version zu installieren und mit 32 Bit kompatibel zu sein, libgirepository-1.0-1und Sie werden Totem entfernen (auch wenn Sie es nicht so meinen).

Hoffe, dass jetzt alles klar ist

verwandte Informationen