Paketverwaltung, Abhängigkeiten

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
teststreifen
Beiträge: 47
Registriert: 27.02.2013 01:15:31

Paketverwaltung, Abhängigkeiten

Beitrag von teststreifen » 06.03.2013 00:04:15

Hallo,

in Debian bzw. Linux werden etliche Paketverwalter angeboten. Als Anfänger, der verschiedene Anleitungen nutzt, verwende ich unterschiedliche (aptitude, apt-get, synaptics, etc.). Dabei wähle ich häufig notwendige Pakete aus, kann die Abhängigkeiten aber nicht verfolgen.

Wie kann ich Änderungen, die ich am System vornehme, wirklich wieder rückgängig machen? Oder, welche Funktion muss ich nutzen um Pakete die abhängig installiert wurden automatisch wieder mit zu entfernen?

Ein Beispiel ist das umfangreiche OpenOffice, das ich gern gegen LibreOffice tauschen möchte. Wie kann ich möglichst viele Teile, die zu OpenOffice gehören entfernen?

Danke :o
Ein PC ist kein Rad.
Programmierst Du mir jetzt mein OS?
Es wäre nie besser gewesen.

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Paketverwaltung, Abhängigkeiten

Beitrag von Cae » 06.03.2013 05:41:16

Normalerweise gibt's ein (oder mehrere) Paket(e), das (die) du installierst. Davon werden dann einige weitere Pakete ueber die Abhaengigkeiten installiert, die wiederum selbst noch Abhaengigkeiten haben koennen (u.s.w.u.s.f). Wenn du das "Ursprungspaket" wieder deinstallierst, gibt es keinen Grund mehr fuer die weiteren Pakete, installiert zu sein. Pakete mit genau diesem Status entfernt

Code: Alles auswählen

# apt-get autoremove
. Vermutlich koennen aptitude und Synaptic das auch irgendwie, es wird sicher in deren Doku beschrieben.

Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

pferdefreund
Beiträge: 3800
Registriert: 26.02.2009 14:35:56

Re: Paketverwaltung, Abhängigkeiten

Beitrag von pferdefreund » 06.03.2013 13:35:49

das gute alte deborphan kann sowas anlisten und mit
apt-get --purge remove `deborpham` - eventuell mehrfach - wird man das Zeug auch los, manchmal erwischt der autoremove nicht wirklich alle, hatte ich mal vor einiger Zeit.

uname
Beiträge: 12489
Registriert: 03.06.2008 09:33:02

Re: Paketverwaltung, Abhängigkeiten

Beitrag von uname » 06.03.2013 13:43:52

Den Befehl Debiandeborphan hatte ich fast vergessen. Auf meinem Testserver wurden gleich 50 Pakete gelöscht obwohl ich immer "autoremove" genutzt habe.

Ich mache das im übrigen so:

Code: Alles auswählen

apt-get --purge remove $(deborphan)

Benutzeravatar
goeb
Beiträge: 348
Registriert: 26.08.2006 18:12:08
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketverwaltung, Abhängigkeiten

Beitrag von goeb » 06.03.2013 15:32:07

uname hat geschrieben:

Code: Alles auswählen

apt-get --purge remove $(deborphan)
apt-get kennt mittlerweile auch den purge-Befehl:

Code: Alles auswählen

apt-get purge $(deborphan)

reba
Beiträge: 536
Registriert: 27.06.2011 08:59:37

Re: Paketverwaltung, Abhängigkeiten

Beitrag von reba » 06.03.2013 18:06:50

Danke euch für die Gedächtnisauffrischung!

Trotz regelmäßiger "autoremove"-Benutzung 135 verwaiste Dateien!

teststreifen
Beiträge: 47
Registriert: 27.02.2013 01:15:31

Re: Paketverwaltung, Abhängigkeiten

Beitrag von teststreifen » 06.03.2013 19:25:39

goeb hat geschrieben: apt-get kennt mittlerweile auch den purge-Befehl:

Code: Alles auswählen

apt-get purge $(deborphan)
Danke goeb :)
nach einer Installation von Squeeze 6.0.7, sowie dem Anpassen der Netzwerk-, Grafikkarten-, und Sound"treiber", hat diese Funktion auf meinem PC 207 Pakete entfernt. Ich bin etwas gespannt, wie sich das auswirkt.

Code: Alles auswählen

0 aktualisiert, 0 neu installiert, 207 zu entfernen und 0 nicht aktualisiert.
Nach dieser Operation werden 448 MB Plattenplatz freigegeben.
Möchten Sie fortfahren [J/n]? J
Ein PC ist kein Rad.
Programmierst Du mir jetzt mein OS?
Es wäre nie besser gewesen.

Benutzeravatar
goeb
Beiträge: 348
Registriert: 26.08.2006 18:12:08
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketverwaltung, Abhängigkeiten

Beitrag von goeb » 06.03.2013 19:34:37

Mit deborphan -a wäre es wahrscheinlich noch mehr. Wenn man öfters installiert, wieder deinstalliert, und ab und zu dann deborphan verwendet kann man Pakete die man behalten will in /var/lib/deborphan/keep eintragen, dann bleibt die Ausgabe etwas kürzer.

teststreifen
Beiträge: 47
Registriert: 27.02.2013 01:15:31

Re: Paketverwaltung, Abhängigkeiten

Beitrag von teststreifen » 06.03.2013 19:50:07

cernes hat geschrieben:...hat diese Funktion auf meinem PC 207 Pakete entfernt. Ich bin etwas gespannt, wie sich das auswirkt.
Es waren leider auch welche darunter, die das Desktop Einvironment benötigte. Also ist demnach die Verwendung des Befehls

Code: Alles auswählen

apt-get purge $(deborphan)
nicht sicher. Nun kann ich mich an einer Installation von KDE über die Kommandozeile versuchen, oder (zum Spaß...) noch einmal "deborphan" mit dem Schalter "-a" ausprobieren.

Schönen Abend noch :|
Ein PC ist kein Rad.
Programmierst Du mir jetzt mein OS?
Es wäre nie besser gewesen.

Benutzeravatar
goeb
Beiträge: 348
Registriert: 26.08.2006 18:12:08
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketverwaltung, Abhängigkeiten

Beitrag von goeb » 06.03.2013 20:05:59

Tja, wenn apt-get 207 Pakete löschen will und du das blind bestätigst (wären auf meinem System ungefähr 20% aller installierten Pakete, aber das System ist noch relativ jung)… mit dem Metapaket Debiankde-standard sollte erstmal alles Nötige wieder installiert werden.

Benutzeravatar
DeKa
Beiträge: 35
Registriert: 04.03.2013 12:16:43
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Die Erde

Re: Paketverwaltung, Abhängigkeiten

Beitrag von DeKa » 06.03.2013 21:41:19

Hallo,
da muss ich mehrere Ausrufezeichen anhängen. :!: :!: :!: :!: :!: :!:
Mit dem angegebenen Befehl "~$ sudo apt-get --purge -s remove " kommt diese Ausgabe bei mir:

Code: Alles auswählen

deka@deka-laptop:~$ sudo apt-get --purge -s remove $(deborphan)
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Das folgende Paket wurde automatisch installiert und wird nicht mehr benötigt:
  deb-multimedia-keyring
Verwenden Sie »apt-get autoremove«, um es zu entfernen.
Die folgenden Pakete werden ENTFERNT:
  chromium-browser-l10n* conky* cups-driver-gutenprint*
  debian-multimedia-keyring* dhcp3-client* dhcp3-common*
  gstreamer0.10-pitfdll* libartsc0* libaudiofile0* libavahi-ui0*
  libavahi1.0-cil* libavcore0* libavdevice53* libavformat52* libavutil49*
  libbeagle1* libbind9-60* libboost-iostreams1.42.0* libboost-iostreams1.48.0*
  libcamel-1.2-29* libcamel1.2-14* libcamel1.2-19* libcdio-paranoia0*
  libcelt0-0* libclutter-gtk-0.10-0* libcryptsetup1* libcryptui0a*
  libcurl3-nss* libdb4.7* libdb4.8* libdevkit-power-gobject1* libdns64*
  libdns81* libdpkg-ruby1.8* libdvbpsi6* libebackend1.2-0* libecal-1.2-10*
  libeggdbus-1-0* libegroupwise1.2-13* libevent-1.4-2* libevince2* libexiv2-9*
  libgadu3* libgalago3* libgconfmm-2.6-1c2* libgcr0* libgdata-google1.2-1*
  libgdata7* libgegl-0.0-0* libgettext-ruby1.8* libgirepository1.0-0*
  libgl1-mesa-dri-experimental* libglade2.0-cil* libglademm-2.4-1c2a*
  libglew1.5* libgmtk0* libgnome-bluetooth7* libgnome-keyring1.0-cil*
  libgnome-media0* libgnome-speech7* libgnome-window-settings1* libgnomekbd4*
  libgp11-0* libgraphite3* libgs8* libgsf-1-114* libgtkhtml-editor-common*
  libgtkhtml3.14-19* libgucharmap7* libhttpclient-ruby1.8* libhunspell-1.2-0*
  libimobiledevice1* libiptcdata0* libisccfg60* libiso9660-7* libkarma0*
  liblapack3gf* liblocale-ruby1.8* liblwres60* libmagickwand3* libmagickwand4*
  libmateconf* libmatenotify* libmatroska0* libmatroska4* libmjpegtools-1.9*
  libmodplug0c2* libmpfr1ldbl* libmtp8* libmusicbrainz4c2a* libnice0* libnl1*
  libnm-glib2* libntfs-3g804* liboil0.3* liboobs-1-4* libopenspc0*
  libpolkit-gtk-1-0* libpoppler-glib6* libpostproc51* libpython2.6* libquvi0*
  librasqal2* libruby* libsilc-1.1-2* libsilcclient-1.1-3* libslab0a*
  libsoundtouch1c2* libsqlite0* libsysfs2* libtextcat0*
  libtracker-client-0.8-0* libtracker-sparql-0.12-0* libwebkit-1.0-2*
  libwpg-0.1-1* libwps-0.1-1* libx264-104* libx264-120* libx264-125*
  libx264-129* libx264-98* libxapian15* libxcb-atom1* libxcb-aux0*
  libxcb-event1* libxcb-render-util0* libxfce4menu-0.1-0*
  libxml-parser-ruby1.8* libyajl1* min12xxw* pnm2ppa* ttf-bengali-fonts*
  ttf-gujarati-fonts* ttf-opensymbol* ttf-punjabi-fonts* ttf-tamil-fonts*
  ttf-telugu-fonts*
0 aktualisiert, 0 neu installiert, 137 zu entfernen und 0 nicht aktualisiert.
Zum Glück ist der Schlüssel "-s" eine Simulation. :hail:

Also nicht jeden Tipp gleich befolgen, hinterfragen ist immer erwünscht :suche: :google:
Gruß DeKa

"Ein Debian zu benutzen ist keine große Sache. Es ist so einfach wie unwiderruflich."

Benutzeravatar
goeb
Beiträge: 348
Registriert: 26.08.2006 18:12:08
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketverwaltung, Abhängigkeiten

Beitrag von goeb » 06.03.2013 22:08:01

Mein Tipp bezog sich eigentlich auch nur auf --purge remove, mindestens seit Lenny kennt apt-get den Befehl purge, der das selbe bewirkt, nur in kürzer. :wink: In deiner Liste sind aber fast nur Bibliotheken, du kannst ja alles mal der Reihe nach durchprobieren:

Code: Alles auswählen

for p in $(deborphan | awk '{print $2}'); do clear; echo "Paket: $p"; echo; apt-get purge $p; done
Und wie schon gesagt, in /var/lib/deborphan/keep kann man die Pakete festlegen die deborphan nie melden soll. Wenn man das macht, bleibt die Liste von deborphan übersichtlich und man kann es ab und zu mal aufrufen um zu sehen was sich in der Zwischenzeit alles für Müll angesammelt hat ohne von 200 Paketen erschlagen zu werden.

niesommer
Beiträge: 2493
Registriert: 01.10.2006 13:19:37
Lizenz eigener Beiträge: GNU General Public License

Re: Paketverwaltung, Abhängigkeiten

Beitrag von niesommer » 06.03.2013 22:12:34

Hallo,
also mit apt-get autoremove kann es dir auch passieren das das ganze system (ich meine einen Großen Teil) deinstalliert wird. Mit beiden befehlen sollte man sehr vorsichtig umgehen. Mir ist das auch schon mal so gegangen, und wenn ich mich recht erinnere hatten wir das auch schon ein paar mal hier im Forum behandelt.
Den Tip mit dem

Code: Alles auswählen

apt-get --purge -s remove $(deborphan)
finde ich sehr gut, ich hoffe nur das ich mir das merken kann und nicht gleich wieder vergesse. :THX:

Gruß niesommer
Gruß niesommer

Antworten