Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Deutsches Forum (German) Deutsche Dokumentation
  • Search

emerge sync -- tipps & tricks für...

Dokumentation, Tipps und Tricks.
Post Reply
  • Print view
Advanced search
20 posts • Page 1 of 1
Author
Message
lolli78
Apprentice
Apprentice
User avatar
Posts: 162
Joined: Wed Jan 14, 2004 11:19 pm
Location: Europe

emerge sync -- tipps & tricks für...

  • Quote

Post by lolli78 » Fri May 14, 2004 1:31 pm

... leute mit langsamen internet-verbindungen, kleinen festplatten und alle anderen, die keine "unnötigen" daten auf ihrer festplatte haben wollen.

hallo,
bei einem

Code: Select all

emerge sync
fällt den meisten wohl auf, dass da ebuilds übertragen werden, die man nie im leben installieren wird. warum soll ein hardcore-gnome-fan denn ebuilds für kde unde xfce haben? braucht man für ein dsl-gateway (router/webserver/fileserver) ohne monitor ebuilds für xorg-x11/mozilla/gnome?
wer sich solche fragen stellt, sollte sich mal mit

Code: Select all

# RSYNC_EXCLUDEFROM is a file that portage will pass to rsync when it updates
#     the portage tree. Specific chucks of the tree may be excluded from
#     consideration. This may cause dependency failures if you are not careful.
#     The file format is one pattern per line, blanks and ';' or '#' lines are
#     comments. See 'man rsync' for more details on the exclude-from format.
RSYNC_EXCLUDEFROM=/etc/portage/rsync_excludes
beschäftigen.
der syntax dieser rsync_excludes ist ganz einfach. in jeder zeile steht ein muster, das bei einem treffer ausgelassen wird. die zeile

Code: Select all

timestamp.x
lässt jede datei "timestamp.x" aus, egal in welchem unterverzeichnis.
die zeile

Code: Select all

media-radio
dürfte alle erfreuen, die keinen pc-radio-tuner haben. so kann man es dann beliebig weiter treiben, bis man einen kleinen, auf die eigenen bedürfnisse angepassten portage-baum hat. doch vorsicht:
  • * bei einem emerge sync werden die ausgelassenen dateien nicht gelöscht, sondern nur nicht mehr aktualisiert. löschen muss man selbst.
    * wenn emerge eine abhängigkeit nicht mehr erfüllen kann, bricht es ab. dann hat man wohl zu viel ausgeschlossen, ein

    Code: Select all

    + muster
    fügt dieses eine spezielle muster dann wieder ein.
    * diese verzeichnisse sollten nicht ausgeschlossen werden: metadata, eclass, packages, profiles, scripts, (licenses)
genaueres dazu steht auch in der man-page von rsync.
wer wirklich nichts unnötiges in seinem portage-baum haben möchte, sollte sich dieses script anschauen: prlock.py (Portage Rsync Lockdown)

wer seinen portage-baum verkleinert, verringert natürlich auch die last auf den rsync-mirrors.

viel spaß mit gentoo!
lorenz
frag' doch deinadmin.de
Top
sirro
Veteran
Veteran
User avatar
Posts: 1472
Joined: Sun Jul 20, 2003 6:15 pm
Location: aachen.nrw.de.eu

Re: emerge sync -- tipps & tricks für...

  • Quote

Post by sirro » Mon May 31, 2004 10:44 am

lolli78 wrote:wer seinen portage-baum verkleinert, verringert natürlich auch die last auf den rsync-mirrors.
Wenn alle so eine Datei anlegen würden, dann würde sich IMO 25-50% des Rsync-Traffics sparen lassen.
Also Leute: Anlegen!!! ;-)
lolli78 wrote:

Code: Select all

+ muster
fügt dieses eine spezielle muster dann wieder ein.
Das habe ich noch nicht so ganz verstanden. Kann ich über diese Syntax z.B. net-print ausschließen und mit dem + dann net-print/cups wieder erlauben?
Also z.B. sowas:

Code: Select all

net-print
+ net-print/cups
würde mir alles aus net-print außer cups vom Leib halten?
Ich will nicht zuviel rumtesten und immer syncen um was auszuprobieren, darum frag ich lieber nach
lolli78 wrote:diese verzeichnisse sollten nicht ausgeschlossen werden: metadata, eclass, packages, profiles, scripts, (licenses)
ich schließe bei mir unter metadata auch die Teile des Caches aus, in denen die von mir ausgeschlossenen Ebuilds liegen.


Und für alle die am liebsten ein Beispiel haben um sich das ganze besser vorstellen zu können (wie ich ;-))

Code: Select all

## Required for emerge system 
## sys-libs 
## sys-fs 
## sys-apps 
## sys-devel 
## net-misc 
## dev-libs 
## dev-lang 
## app-shells 
## app-editors 

# wildcards for groups never required 
games-*
gnome-*
xfce-*
metadata/cache/games-*
metadata/cache/gnome-*
metadata/cache/xfce-*

net-news
net-p2p
net-wireless
metadata/cache/net-news
metadata/cache/net-p2p
metadata/cache/net-wireless
das würde alle games, gnome, xfce Unterverzeichnisse sowie net-news, net-p2p und net-wireless auslassen. Dazu werden jeweils die entsprechenden cache-Daten ausgelassen.
Dann kann man (wenn man will) die oben angegebenen Verzeichnisse löschen. z.B.:

Code: Select all

cd /usr/portage
for i in `grep -v "^#" /etc/portage/rsync_excludes; do rm -r $i; done

BTW: Um mal eine Zahl zu nennen: Ich spare durch meine rsync_exclude momentan 33% der Dateien ein... (Wenn ich das mit dem + raushabe, dann ist die Tendenz steigend)
Top
lolli78
Apprentice
Apprentice
User avatar
Posts: 162
Joined: Wed Jan 14, 2004 11:19 pm
Location: Europe

  • Quote

Post by lolli78 » Mon May 31, 2004 1:38 pm

hallo,
ich glaube, es ist am besten, wenn ich meine rsync_excludes mal kommentiert poste.

Code: Select all

+ /eclass/*
## alle dateien im eclass-verzeichnis werden benötigt, sonst gibts fehler
 
timestamp
## wer braucht schon timestamp.* in jedem verzeichnis?

xfce*
kde-base*
## bin gnome-user

games*
## der wenig spielt

sys-cluster*
## einen notebook hat (und keinen cluster)

app-emac*
app-xemac*
dev-lisp*
licenses
## die lizenzen kann ich mir auch im netz anschauen

*accessibi*
*dotnet*
*embedded*
*haskell*
*firewall*
*ruby*
net-news
media-radio
media-tv
## tv-karte habe ich auch keine im notebook...

fresco*
sec-*
app-gnustep*
dev-games
net-zope*
damit habe ich unter 70000 dateien zu synchronisieren.

wie vielleicht schon bemerkt, schließe ich die metadata/cache nicht extra aus. braucht man auch nicht, weil ich fast nur muster verwende, die nicht absolut sind. muss ich vielleicht nochmal erklären.

Code: Select all

net-zope*
schließt alle dateien und verzeichnisse aus, die mit net-zope beginnen.

Code: Select all

/net-zope*
würde dagegen nur diejenigen dateien und verzeichnisse ausschließen, die im root-verzeichnis mit net-zope beginnen.

verstanden?

außerdem habe ich mal festgestellt, dass diejenigen dateien, die man explizit zulassen will, zuerst nennen muss. wenn man also nur verzeichnisse synchronisieren will, die mit sys* beginnen, schreibt man folgendes:

Code: Select all

+ sys*
- *
oder man benutzt das tool, das ich oben schon erwähnt habe: prlock.py (Portage Rsync Lockdown)

wer seinen portage-baum richtig aufräumen will, kommt wahrscheinlich kaum drum rum, /usr/portage/ einmal komplett zu löschen und dann neu zu synchronisieren. und wer dann schon dabei ist, kann sich ja auch gleich mal http://forums.gentoo.org/viewtopic.php?t=175689 anschauen.
so, nun wünsche ich viel spaß & happy gentooing...
lorenz
frag' doch deinadmin.de
Top
lolli78
Apprentice
Apprentice
User avatar
Posts: 162
Joined: Wed Jan 14, 2004 11:19 pm
Location: Europe

  • Quote

Post by lolli78 » Mon May 31, 2004 8:00 pm

hallo nochmal,
ich glaube, die ganz oben implizit vorgeschlagene reihenfolge ist falschrum. damit es richtig funktioniert, müssen die wieder hinzugefügten dateien *zuerst* stehen und darunter die ausgeschlossenen.

bsp.:

Code: Select all

+ **cups*
net-print*
müsste funktionieren. wenn man die reihenfolge vertauscht, wird cups wahrscheinlich trotzdem ausgeschlossen.

wie es ganz genau funktioniert, wird übrigens in der man-page von rsync im kapitel "EXCLUDE PATTERNS" erklärt. da steht auch, was der unterschied zwischen "*" und "**" ist.

lorenz
frag' doch deinadmin.de
Top
ruth
Retired Dev
Retired Dev
Posts: 640
Joined: Sun Sep 07, 2003 1:56 pm
Location: M / AN / BY / GER

  • Quote

Post by ruth » Tue Jun 01, 2004 5:23 am

hi,
das habe ich doch auch gleich mal ausprobieren müssen...
testobjekt:
mein kleiner heimserver
(i686 Celeron (Covington) GenuineIntel GNU/Linux)
mit 400Mhz + 2 x IBM SCSI 2GB HDD / RAID auf Adaptec 2940UW

tja, was soll ich sagen...

Number of files: 41997

na, ist das nix ??? *grins*

auf die hälfte verkleinert den tree....
tip:
/var/db/pkg
anschauen...

super tip, danke nochmal...

gruss
rootshell
"The compiler has tried twice to abort and cannot do so; therefore, compilation will now terminate."
-- IBM PL/I (F) error manual
Top
mo-ca
Guru
Guru
User avatar
Posts: 313
Joined: Mon Feb 17, 2003 10:15 am
Location: Near Dresden, Germany

  • Quote

Post by mo-ca » Tue Jun 01, 2004 8:18 am

DANKE

:o gut gemacht :o

nach sowas habe ich schon länger gesucht, denn mein server braucht kein kde/gnome/X allgemein ;)
Registred Linux User #239348
Top
sirro
Veteran
Veteran
User avatar
Posts: 1472
Joined: Sun Jul 20, 2003 6:15 pm
Location: aachen.nrw.de.eu

  • Quote

Post by sirro » Tue Jun 01, 2004 12:53 pm

lolli78 wrote:

Code: Select all

+ **cups*
net-print*
Hab jetzt:

Code: Select all

+ net-print/cups/
+ net-print/cups/**
net-print/**
Klappt wunderbar...

Number of Files liegt irgendwo bei 15000-20000 auf meinem Rechner zuhause und auf der Arbeit 5827 (erreicht mit dem o.g. Skript)...
Top
ts77
Apprentice
Apprentice
Posts: 200
Joined: Sun Mar 23, 2003 4:05 pm
Location: Berlin, Germany

  • Quote

Post by ts77 » Sun Jun 06, 2004 3:51 pm

cooler tipp ... auf 13.000 files runter mit dem genannten script :).

Edit: ich würd's jedem empfehlen, der sein system erstmal eingerichtet hat. solang man natürlich noch am installieren ist, ist es ein wenig zu hardcore eingeschränkend ;).
Top
SvenFischer
Veteran
Veteran
User avatar
Posts: 1033
Joined: Wed Feb 05, 2003 11:03 pm
Location: Berlin

  • Quote

Post by SvenFischer » Mon Jun 07, 2004 12:34 pm

ein "emerge sync" bringt noch immer alle Files rüber.

In meiner /etc/portage/rsync_excludes steht:

+ /eclass/*
## alle dateien im eclass-verzeichnis werden benötigt, sonst gibts
fehler

timestamp
## wer braucht schon timestamp.* in jedem verzeichnis?

app-benchmarks
app-emac*
app-gnustep
app-laptop
app-pda
app-sci
app-vim
app-xemacs
dev-ada
dev-cpp
dev-dotnet
dev-embedded
ev-games
dev-haskell
dev-lisp
dev-ml
dev-ruby
dev-scheme
dev-tcltk
dev-tex
mail-client
media-radio
media-tv
net-im
net-irc
net-wireless
net-zope
sec-policy
sys-cluster
x11-plugins
x11-wm
xfce-base
xfce-extra
licenses
----------------------------------------------

Warum klappt es nicht?
Core2Duo, 4GB RAM, AMD/ATI 4850 and nice person in front!
Top
SvenFischer
Veteran
Veteran
User avatar
Posts: 1033
Joined: Wed Feb 05, 2003 11:03 pm
Location: Berlin

  • Quote

Post by SvenFischer » Wed Jun 09, 2004 12:48 pm

So, die Lösung ist einfach:

in der /etc/make.conf muß folgende Zeile auskommentiert werden:

RSYNC_EXCLUDEFROM=/etc/portage/rsync_excludes

Leider hat in dem ersten Beitrag oben diese Info gefehlt.
Core2Duo, 4GB RAM, AMD/ATI 4850 and nice person in front!
Top
sirro
Veteran
Veteran
User avatar
Posts: 1472
Joined: Sun Jul 20, 2003 6:15 pm
Location: aachen.nrw.de.eu

Re: emerge sync -- tipps & tricks für...

  • Quote

Post by sirro » Wed Jun 09, 2004 4:25 pm

lolli78 wrote:wer sich solche fragen stellt, sollte sich mal mit

Code: Select all

# RSYNC_EXCLUDEFROM is a file that portage will pass to rsync when it updates
#     the portage tree. Specific chucks of the tree may be excluded from
#     consideration. This may cause dependency failures if you are not careful.
#     The file format is one pattern per line, blanks and ';' or '#' lines are
#     comments. See 'man rsync' for more details on the exclude-from format.
RSYNC_EXCLUDEFROM=/etc/portage/rsync_excludes
beschäftigen.
Naja, vielleicht fehlte die Angabe "in der make.conf". Das haben sich die meisten wohl gedacht und keinem ist der Fehler aufgefallen...
Top
sirro
Veteran
Veteran
User avatar
Posts: 1472
Joined: Sun Jul 20, 2003 6:15 pm
Location: aachen.nrw.de.eu

  • Quote

Post by sirro » Wed Jun 09, 2004 4:59 pm

Ich hab mir ein paar Gedanken zu dem Problem mit dem oben genannten Skript und der Frage "was ist wenn ich ein neues Programm installieren will?" gemacht.
Meine Lösung ist eigentlich sehr simpel: ;-)


Ich habe eine Datei (/etc/portage/rsync_excludes_weekly) in der alles ausgeschlossen wird, was ich wirklich nicht brauche (z.B. games-* auf der Arbeit). Diese Datei wird genutzt um einmal in der Woche (oder seltener) alles auf den neusten Stand zu bringen. Natürlich kann die Datei auch leer sein, dann wird einmal in der Woche der ganze Tree aktualisiert.

Dann habe ich die Skript prlock.py (s.o.), das bei mir /root/bin/rsync_exclude.py heißt.
Dieses Skript erstellt bekanntlich eine Datei, die nur die Verzeichnisse bereits installierter Programme und ganz wichtige Sachen (s.o.) synced. Mit dieser Datei wird der tägliche/regelmäßige Sync durchgeführt.
Diese Datei wird per cron vor meinem Sync neu erstellt und ist somit immer zum passenden Zeitpunkt auf dem neusten Stand!

Durch diese Taktik synce ich an 4Tagen in der Woche nur ca. 5,000Dateien und an einem ca. 55,000 statt über 80,000. (Diese Zahlen sind natürlich nicht repräsentativ!). Am Wochenende synce ich gar nicht, da ich dann meinen Arbeitsrechner gar nicht brauche... ;-)


So und hier die Anleitung:

1. /root/bin/rsync_exclude.py aus prlock.py erstellen
2. chmod u+x /root/bin/rsync_exclude.py
3. crontab -e ausführen und sowas in der Art einfügen (Zeiten sind nach eigenen Vorlieben zu setzen):

Code: Select all

# täglich alle installierten Programme zu /etc/portage/rsync_excludes hinzufügen
14 1 * * * /root/bin/rsync_exclude.py
# Montags => großen Tree syncen
11 4 * * 1 env RSYNC_EXCLUDEFROM=/etc/portage/rsync_excludes_weekly /usr/bin/emerge sync > /tmp/daily_sync.log
# Restliche Werktage => nur Programme die installiert sind syncen
12 4 * * 2 /usr/bin/emerge sync > /tmp/daily_sync.log
13 4 * * 3 /usr/bin/emerge sync > /tmp/daily_sync.log
14 4 * * 4 /usr/bin/emerge sync > /tmp/daily_sync.log
15 4 * * 5 /usr/bin/emerge sync > /tmp/daily_sync.log
# Am WE wird nicht gesynced
Anmerkung: Diesen Schrittkann man auch weglassen und mit den entsprechenden Kommandos (siehe crontab oben) von Hand syncen. (für nicht 24/7-Rechner)
4. /etc/portage/rsync_excludes_weekly erstellen.
Ein Beispiel (kann man beliebig ändern oder auch leer lassen, dann hat man einmal die Woche einen kompletten Sync)

Code: Select all

# in dieser Datei steht nur das, was wirklich _nie_ gesynced werden soll
app-accessibility
app-benchmarks
app-emacs
app-emulation
app-gnustep
app-i18n
app-laptop
app-pda
app-sci
app-vim
app-xemacs
dev-dotnet
dev-embedded
fresco-*
games-*
gnome-*
media-plugins
media-tv
net-dialup
net-irc
net-news
net-p2p
net-wireless
net-zope
sec-*
sys-cluster
x11-plugins
x11-themes
x11-wm
xfce-*
Das ist mein Beitrag für möglichst wenig rsync-Traffic (88% weniger pro Woche als vorher) und trotzdem noch einen sehr aktuellen Tree zu behalten, falls man ein neues Programm installieren will.
BTW: Ich werde versuchen das in nächster Zeit noch über 90% drücken, z.B. mit einem Sync alle zwei Tage.


Kommentare, Anmerkungen und natürlich auch Verbesserungen werden gerne entgegen genommen.

Ich hoffe, dass dieses Mini-Howto vielen helfen wird und vielleicht auch einige davon überzeugt, dass auch ein kompletter Tree und Traffic sparen zusammen passt!!! :-)


The contents of this posting are licensed under the Creative Commons - Attribution / Share Alike license.
Top
102039
Tux's lil' helper
Tux's lil' helper
Posts: 125
Joined: Wed Mar 16, 2005 1:36 pm

  • Quote

Post by 102039 » Wed Mar 16, 2005 1:43 pm

Danke für den Tip,
hat sehr gut funktioniert und konnte ca. 50% einsparen.
Habe auch erst den kompletten Portage Tree gelöscht und dann neu gesync'd.
Top
EOF
Guru
Guru
User avatar
Posts: 345
Joined: Wed Jul 02, 2003 8:24 pm
Location: Usingen

  • Quote

Post by EOF » Thu Mar 31, 2005 7:30 am

Hat jemand mal über eine hardcoreversion nachgedacht? Z.B. syncronisiere erstmal nur die ebuilds von den progs in der world datei samt abhängigkeiten. Wenn man ein neues programm installieren möchte, dann syncronisiere den entsprechenden ebuild (wenn es schon im portage ist), schaue nach abhängigkeiten und syncronisiere diese auch.
Ist so etwas sinnvoll (ich kenne den sonstigen overhead von portage nicht so genau)?
Top
TheSmallOne
Guru
Guru
User avatar
Posts: 467
Joined: Sat Jan 22, 2005 6:13 pm
Location: Germany

  • Quote

Post by TheSmallOne » Thu Mar 31, 2005 7:52 am

Hm, wo mir dieser Thread gerade so ins Auge fällt:
Das scheint zwar eine interessante Vorgehensweise zu sein, aber wäre es nicht weitaus logischer, wenn man portage selbst die Auswahl überlassen würde, welche Teile des Trees gesynct werden?
Ich meine wenn man nun ein -gnome Useflag gesetzt hat, dann kann portage doch daraus schließen, dass der entsprechende Teil nicht gesynct werden braucht, und das ganze entsprechend selbst so einrichten. Wenn man dann irgendwann auf die Idee kommt doch gnome verwenden zu wollen und das Useflag setzt kann portage automatisch ab diesem Zeitpunkt den entsprechen Zweig wieder mitaktualisieren.
Wenn der User sich selbst darum kümmern muß kann es doch durchaus dazu kommen, dass man hier oder da mal vergisst, dass man etwas ausgeschlossen hat und dann auf irgendwelche Probleme stößt.
Top
EOF
Guru
Guru
User avatar
Posts: 345
Joined: Wed Jul 02, 2003 8:24 pm
Location: Usingen

  • Quote

Post by EOF » Thu Mar 31, 2005 8:27 am

Ich finde portage agiert momentan zu aktiv. Ich könnte mir ein "lazy"-portage vorstellen, was die benötigten ebuilds bei bedarf nachläd. Eigentlich braucht man beim sync nur eine textdatei, die angibt welche programme sich geändert haben (gegen ne andere datei abgleichen).
Weitere informationen oder die ebuilds braucht man z.b. bei emerge -s und emerge programm_name.
Günstiger geht es also. Aber wir müssen nehmen was wir bekommen, wenn wir uns nicht in die entwicklung reinziehen lassen wollen :D.
Top
gidoca
n00b
n00b
Posts: 9
Joined: Sat May 27, 2006 2:47 pm
Location: Thun

  • Quote

Post by gidoca » Sat May 27, 2006 2:50 pm

EOF wrote:Eigentlich braucht man beim sync nur eine textdatei, die angibt welche programme sich geändert haben (gegen ne andere datei abgleichen).
Würde es nicht reichen, wenn bei jedem Emerge eine Datei heruntergeladen würde, in welcher die neuste Version des jeweiligen Programms steht? Dann wäre der Sync komplett unnötig. Eine Suche würde einfach ein bisschen länger dauern, da sie online ausgeführt werden müsste.
Top
slick
Bodhisattva
Bodhisattva
User avatar
Posts: 3495
Joined: Sun Apr 20, 2003 11:44 am

  • Quote

Post by slick » Thu Jun 01, 2006 8:49 am

gidoca wrote:
EOF wrote:Eigentlich braucht man beim sync nur eine textdatei, die angibt welche programme sich geändert haben (gegen ne andere datei abgleichen).
Würde es nicht reichen, wenn bei jedem Emerge eine Datei heruntergeladen würde, in welcher die neuste Version des jeweiligen Programms steht?
Welche Version ist die aktuelle? Die von x86, ~x86, amd64, ~amd64, ... ? Wenn dann müßte der Server diese Datei anbhängig von Angaben des anfragenen Client generieren.
Top
slick
Bodhisattva
Bodhisattva
User avatar
Posts: 3495
Joined: Sun Apr 20, 2003 11:44 am

Re: emerge sync -- tipps & tricks für...

  • Quote

Post by slick » Thu Jun 15, 2006 7:38 pm

lolli78 wrote:

Code: Select all

# RSYNC_EXCLUDEFROM is a file that portage will pass to rsync when it updates
#     the portage tree. Specific chucks of the tree may be excluded from
#     consideration. This may cause dependency failures if you are not careful.
#     The file format is one pattern per line, blanks and ';' or '#' lines are
#     comments. See 'man rsync' for more details on the exclude-from format.
RSYNC_EXCLUDEFROM=/etc/portage/rsync_excludes
Ab portage-2.1 ist RSYNC_EXCLUDEFROM veraltet, evt. bitte Eingangspost anpassen. Neuer Syntax sieht so aus:

Code: Select all

PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
Top
bur
Apprentice
Apprentice
Posts: 229
Joined: Fri Feb 20, 2004 10:17 pm

  • Quote

Post by bur » Mon Jun 26, 2006 9:38 pm

Ich probiere das ganze gerade in einer anderen Variante aus, quasi per Whitelist.

Ich habe dazu alle Zweige aus denen ich Pakete installiert habe (/var/db/pkg - manche Verz. sind leer, löschen) mit "+ app-arch*" explizit hinzugefügt:

Code: Select all

#alle benutzten einschließen
+ app-admin*
+ app-arch*
+ app-benchmarks*
+ app-crypt*
+ app-editors*
+ app-i18n*
+ app-misc*
+ app-portage*
+ app-shells*
+ app-text*
+ dev-db*
+ dev-java*
+ dev-lang*
+ dev-libs*
+ dev-perl*
+ dev-python*
+ dev-tex*
+ dev-util*
+ kde-base*
+ media-fonts*
+ media-libs*
+ media-sound*
+ media-video*
+ net-analyzer*
+ net-dns*
+ net-firewall*
+ net-ftp*
+ net-libs*
+ net-misc*
+ net-nds*
+ net-print*
+ perl-core*
+ sys-apps*
+ sys-boot*
+ sys-devel*
+ sys-fs*
+ sys-kernel*
+ sys-libs*
+ sys-process*
+ www-client*
+ x11-apps*
+ x11-base*
+ x11-libs*
+ x11-misc*
+ x11-terms*
und dann alle Zweige ausgeschlossen:

Code: Select all

#generell zweige auschließen
app-*
dev-*
games-*
gnome-*
gnustep-*
kde-*
mail-*
media-*
net-*
perl-*
rox-*
sci-*
sec-*
sys-*
www-*
x11-*
xfce-*
Das hat den Vorteil, dass es recht einfach zu verwalten ist, emerged man ein Programm aus einem bisher nicht benutzten Zweig, dann fügt man diesen einfach per "+" hinzu. Beim unmergen (sofern dann kein Paket aus dem Zweig mehr installiert ist) entfernt man die Zeile einfach. Es besteht auch nicht die Gefahr, dass wichtige Systembestandteile wie profiles ausgeschlossen werden.

Bei Bedarf kann man das Whitelisting auch noch verfeinern und bspw keine kompletten Zweige, sondern wirklich nur die benutzten Pakete whitelisten. Ist auch nur einmal etwas Arbeit (die man doch auch durch ein Skript machen lassen können müsste), danach ist die Verwaltung sehr einfach, da nur noch die Paketnamen mit "+" hinzugefügt werden müssen.

ACHTUNG
Ich habe gerade bemerkt, dass ein wichtiger Unterschied zwischen * und ** besteht. * gilt nur als Platzhalter bis zum nächsten Schrägstrich, was bei Packages mit Unterordnern zu größeren Problemen führt. Daher immer ** verwenden. Gilt auch für alle anderen Beispiele hier. Im wiki hab ichs angepasst.
Top
Post Reply
  • Print view

20 posts • Page 1 of 1

Return to “Deutsche Dokumentation”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy