[gentoo-user-de] Die Welt aufräumen

29/07/2012 - 19:30 von Matthias Hanft | Report spam
Hallo,

damals, als ich noch jung und unbedarft mit Gentoo war, habe ich aus
lauter Vorsicht ("nie mehrere Änderungen gleichzeitig durchführen":
alte Admin-Weisheit) alle Pakete immer einzeln geupdatet: erst mit
"emerge -p(D)uv world" nachgeschaut, was denn da so alles upzudaten
wàre und dann alles einzeln vorsichtig mit "emerge -uv <pkgname>"
geupdatet.

Das funktioniert natürlich, aber was ich damals noch nicht wußte,
ist, daß alle so geupdateten Pakete automatisch in "world" einge-
tragen werden.

Jetzt steht da viel Müll drin, den ich eigentlich gar nicht brauche
- wie kriege ich den denn da wieder raus? Ja, mit "emerge --deselect
<was_auch_immer>", aber wie finde ich "was_auch_immer" denn raus?

Soll ich einfach aus /var/lib/portage/world alles rauslöschen, was
ich nicht explizit installiert habe? Kann es wirklich so einfach
sein? :-)

Da stehen aber teilweise auch noch mehrere Varianten drin... eigen-
artig ist auch: mit "emerge -pc" zeigt er mir gar nix an, aber z.B.
"emerge -pc automake" bringt




These are the packages that would be unmerged:






sys-devel/automake
selected: 1.4_p6-r1 1.5-r1 1.6.3-r1 1.7.9-r2 1.8.5-r4 1.9.6-r3 1.10.3
protected: none
omitted: 1.11.1

Da gibts bestimmt noch wesentlich mehr solche Leichen... muß ich da
auch wieder in /var/lib/portage danach suchen?

Oder gibts ein Tool und/oder wenigstens ein Howto zum "Mal-wieder-
richtig-Saubermachen"?

Danke & Gruß Matthias.
 

Lesen sie die antworten

#1 Felix Kuperjans
29/07/2012 - 20:00 | Warnen spam
Hallo Matthias,

Am 29.07.2012 19:28, schrieb Matthias Hanft:
Hallo,

damals, als ich noch jung und unbedarft mit Gentoo war, habe ich aus
lauter Vorsicht ("nie mehrere Änderungen gleichzeitig durchführen":
alte Admin-Weisheit) alle Pakete immer einzeln geupdatet: erst mit
"emerge -p(D)uv world" nachgeschaut, was denn da so alles upzudaten
wàre und dann alles einzeln vorsichtig mit "emerge -uv <pkgname>"
geupdatet.


Mit -1 bzw. --oneshot als Option würde dieses Verhalten dein world file
nicht zuspammen. Das empfiehlt sich in Zukunft dringend, falls du noch
mal Pakete einzeln updatest.
BTW werden dabei *keine* Eintràge aus dem world file entfernt, also wenn
ein explizit installiertes Paket damit geupdatet wird, bleibt es Teil
des world sets, es wird nur nicht neu hinzugefügt.

Das funktioniert natürlich, aber was ich damals noch nicht wußte,
ist, daß alle so geupdateten Pakete automatisch in "world" einge-
tragen werden.

Jetzt steht da viel Müll drin, den ich eigentlich gar nicht brauche
- wie kriege ich den denn da wieder raus? Ja, mit "emerge --deselect
<was_auch_immer>", aber wie finde ich "was_auch_immer" denn raus?

Soll ich einfach aus /var/lib/portage/world alles rauslöschen, was
ich nicht explizit installiert habe? Kann es wirklich so einfach
sein? :-)


Ja im wesentlichen genügt das. Ein "emerge --depclean" und
"revdep-rebuild" hinterher, dann sollte es passen.
Ich würde die Aufràumaktion aber eher Schritt für Schritt angehen:
* Zuerst mal mehrfach genannte Atoms entfernen (evtl. wurde mal die
Version explizit angegeben), i.d.R. brauchst du im world set aber nur
den Namen, keine Versionsnummer
* Zusàtzlich offensichtlich nicht explizit installierte Bibliotheken
(dev-libs/... etc.) entfernen
* Nachdem dann --depclean das erste Mal gewütet hat, die Liste weiter
reduzieren, aber am besten jedes Mal überprüfen, dass nichts
versehentlich wegkommt, was du noch benötigst
* Optimalerweise stehen im world file immer nur die Dinge, die man
explizit selber haben und nutzen will, niemals indirekt notwendige
Software. Es làsst sich manchmal aber nicht vermeiden diese trotzdem zu
ergànzen (wenn sie nicht als Abhàngigkeit geführt wird, z.B. weil sie
optional ist).

Da stehen aber teilweise auch noch mehrere Varianten drin... eigen-
artig ist auch: mit "emerge -pc" zeigt er mir gar nix an, aber z.B.
"emerge -pc automake" bringt

>>> These are the packages that would be unmerged:
sys-devel/automake
selected: 1.4_p6-r1 1.5-r1 1.6.3-r1 1.7.9-r2 1.8.5-r4 1.9.6-r3 1.10.3
protected: none
omitted: 1.11.1


Nimm zum Aufràumen niemals emerge -c, nutze unbedingt --depclean und
lösche die Eintràge vorher aus /var/lib/portage/world (verhindert, dass
durch Abhàngigkeiten benötigte Versionen deinstalliert werden)!
Gerade bei automake sind oft mehrere Versionen parallel tatsàchlich nötig!

Da gibts bestimmt noch wesentlich mehr solche Leichen... muß ich da
auch wieder in /var/lib/portage danach suchen?

Oder gibts ein Tool und/oder wenigstens ein Howto zum "Mal-wieder-
richtig-Saubermachen"?

Danke & Gruß Matthias.




Viele Grüße,
Felix

Ähnliche fragen