1 |
Hallo Matthias, |
2 |
|
3 |
Am 29.07.2012 19:28, schrieb Matthias Hanft: |
4 |
> Hallo, |
5 |
> |
6 |
> damals, als ich noch jung und unbedarft mit Gentoo war, habe ich aus |
7 |
> lauter Vorsicht ("nie mehrere Änderungen gleichzeitig durchführen": |
8 |
> alte Admin-Weisheit) alle Pakete immer einzeln geupdatet: erst mit |
9 |
> "emerge -p(D)uv world" nachgeschaut, was denn da so alles upzudaten |
10 |
> wäre und dann alles einzeln vorsichtig mit "emerge -uv <pkgname>" |
11 |
> geupdatet. |
12 |
Mit -1 bzw. --oneshot als Option würde dieses Verhalten dein world file |
13 |
nicht zuspammen. Das empfiehlt sich in Zukunft dringend, falls du noch |
14 |
mal Pakete einzeln updatest. |
15 |
BTW werden dabei *keine* Einträge aus dem world file entfernt, also wenn |
16 |
ein explizit installiertes Paket damit geupdatet wird, bleibt es Teil |
17 |
des world sets, es wird nur nicht neu hinzugefügt. |
18 |
> |
19 |
> Das funktioniert natürlich, aber was ich damals noch nicht wußte, |
20 |
> ist, daß alle so geupdateten Pakete automatisch in "world" einge- |
21 |
> tragen werden. |
22 |
> |
23 |
> Jetzt steht da viel Müll drin, den ich eigentlich gar nicht brauche |
24 |
> - wie kriege ich den denn da wieder raus? Ja, mit "emerge --deselect |
25 |
> <was_auch_immer>", aber wie finde ich "was_auch_immer" denn raus? |
26 |
> |
27 |
> Soll ich einfach aus /var/lib/portage/world alles rauslöschen, was |
28 |
> ich nicht explizit installiert habe? Kann es wirklich so einfach |
29 |
> sein? :-) |
30 |
Ja im wesentlichen genügt das. Ein "emerge --depclean" und |
31 |
"revdep-rebuild" hinterher, dann sollte es passen. |
32 |
Ich würde die Aufräumaktion aber eher Schritt für Schritt angehen: |
33 |
* Zuerst mal mehrfach genannte Atoms entfernen (evtl. wurde mal die |
34 |
Version explizit angegeben), i.d.R. brauchst du im world set aber nur |
35 |
den Namen, keine Versionsnummer |
36 |
* Zusätzlich offensichtlich nicht explizit installierte Bibliotheken |
37 |
(dev-libs/... etc.) entfernen |
38 |
* Nachdem dann --depclean das erste Mal gewütet hat, die Liste weiter |
39 |
reduzieren, aber am besten jedes Mal überprüfen, dass nichts |
40 |
versehentlich wegkommt, was du noch benötigst |
41 |
* Optimalerweise stehen im world file immer nur die Dinge, die man |
42 |
explizit selber haben und nutzen will, niemals indirekt notwendige |
43 |
Software. Es lässt sich manchmal aber nicht vermeiden diese trotzdem zu |
44 |
ergänzen (wenn sie nicht als Abhängigkeit geführt wird, z.B. weil sie |
45 |
optional ist). |
46 |
> |
47 |
> Da stehen aber teilweise auch noch mehrere Varianten drin... eigen- |
48 |
> artig ist auch: mit "emerge -pc" zeigt er mir gar nix an, aber z.B. |
49 |
> "emerge -pc automake" bringt |
50 |
> |
51 |
> >>> These are the packages that would be unmerged: |
52 |
> sys-devel/automake |
53 |
> 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 |
54 |
> protected: none |
55 |
> omitted: 1.11.1 |
56 |
Nimm zum Aufräumen niemals emerge -c, nutze unbedingt --depclean und |
57 |
lösche die Einträge vorher aus /var/lib/portage/world (verhindert, dass |
58 |
durch Abhängigkeiten benötigte Versionen deinstalliert werden)! |
59 |
Gerade bei automake sind oft mehrere Versionen parallel tatsächlich nötig! |
60 |
> |
61 |
> Da gibts bestimmt noch wesentlich mehr solche Leichen... muß ich da |
62 |
> auch wieder in /var/lib/portage danach suchen? |
63 |
> |
64 |
> Oder gibts ein Tool und/oder wenigstens ein Howto zum "Mal-wieder- |
65 |
> richtig-Saubermachen"? |
66 |
> |
67 |
> Danke & Gruß Matthias. |
68 |
> |
69 |
> |
70 |
Viele Grüße, |
71 |
Felix |