Gentoo Logo

Haftungsausschluss: Dieses Handbuch wurde durch eine neuere Version ersetzt und wird nicht länger gepflegt.


[ << ] [ < ] [ Hauptseite ] [ > ] [ >> ]


2. Konfiguration durch Variablen

Inhalt:

2.a. Konfiguration von Portage

Wie bereits erwähnt können Sie Portage durch zahlreiche Variablen, die Sie in /etc/portage/make.conf definieren, an Ihre persönlichen Bedürfnisse anpassen. Lesen Sie als weitere und vollständige Referenz die make.conf Manpage:

Befehlsauflistung 1.1: Lesen der make.conf Manpage

$ man make.conf

2.b. Build-spezifische Optionen

Configure und Compiler Optionen

Wenn Portage Anwendungen übersetzt wendet es die folgenden Variablen auf den Compiler, bzw. das Configure-Skript an:

  • CFLAGS & CXXFLAGS definieren die gewünschten Flags für C and C++ Kompilierung.
  • CHOST definiert die Build Host Information für das Configure-Skript der Anwendung
  • MAKEOPTS wird an das make Kommando weitergegeben und ist für gewöhnlich gesetzt, um die Menge der Parallelität während der Kompilierung zu bestimmen. Weitere Informationen zu Optionen von make finden Sie in der make Manpage.

Die USE Variable wird ebenfalls während der Configure- und Kompilierungsschritte benutzt, diese Variable wurde jedoch schon ausführlich in vorgehenden Kapitel behandelt.

Merge Optionen

Wenn Portage eine neuere Version einer bestimmten Anwendung installiert hat, wird es die nicht mehr benötigten Dateien der alten Version von Ihrem System entfernen. Portage gibt dem Benutzer eine 5 Sekunden lange Pause, bevor das Deinstallieren der alten Version begonnen wird. Diese 5 Sekunden sind in der CLEAN_DELAY Variable definiert.

Sie können emerge sagen, dass es bestimmte Optionen, jedes Mal wenn es ausgeführt wird, verwenden soll, indem Sie EMERGE_DEFAULT_OPTS setzen. Einige nützliche wären --ask, --verbose, --tree, usw.

2.c. Schutz von Konfigurationsdateien

Abgesicherte Pfade

Portage überschreibt Dateien einer alten Version bei der Installation einer neuen Version, sofern diese sich nicht in einem geschützten Verzeichnis befinden. Diese geschützten Verzeichnisse sind durch die CONFIG_PROTECT Variable definiert und sind im Normalfall Verzeichnisse, die Konfigurationsdateien enthalten. Es können getrennt durch ein Leerzeichen beliebig viele Pfade angegeben werden.

Eine Datei, die in ein solches geschütztes Verzeichnis geschrieben werden soll, wird umbenannt und der Anwender darüber informiert, dass eine neue Version einer (wahrscheinlich) Konfigurationsdatei vorliegt.

Die aktuellen CONFIG_PROTECT Einstellungen können Sie sich mittels emerge --info anzeigen lassen:

Befehlsauflistung 3.1: Anzeigen der CONFIG_PROTECT Einstellungen

$ emerge --info | grep 'CONFIG_PROTECT='

Weitere Informationen über den Schutz von Konfigurationsdateien sind im Abschnitt CONFIGURATION FILES der man Seite von emerge verfügbar:

Befehlsauflistung 3.2: Weitere Informationen über den Schutz von Konfigurationsdateien

$ man emerge

Verzeichnisse ausschließen

Um den Schutz von einzelnen Unterverzeichnissen aufzuheben können Sie die CONFIG_PROTECT_MASK Variable nutzen.

2.d. Download Optionen

Server Auswahl

Wenn angeforderte Informationen oder Daten auf Ihrem System nicht verfügbar sind versucht Portage diese aus dem Internet zu beziehen. Die Server für die verschiedenen Informationen und Daten werden durch die folgenden Variablen deklariert:

  • GENTOO_MIRRORS definiert eine Liste von Servern die Quellcode (Distfiles) enthalten
  • PORTAGE_BINHOST definiert einen bestimmten Server der vorkompilierte Pakete für Ihr System bereit hält

Eine dritte Konfiguration beinhaltet den Rsync Server, den Sie zum aktualisieren Ihres Portage Tree nutzen möchten:

  • SYNC definiert einen bestimmten Server von dem Sie den Portage Tree beziehen wollen

Die GENTOO_MIRRORS und SYNC Variablen können automatisch durch die mirrorselect Anwendung gesetzt werden. Dazu müssen Sie zunächst mirrorselect installieren. Für weitere Informationen schauen Sie in die Hilfe von mirrorselect:

Befehlsauflistung 4.1: Weitere Informationen über mirrorselect

# mirrorselect --help

Wenn Ihre Umgebung vorschreibt einen Proxy-Server zu nutzen können Sie die http_proxy, ftp_proxy und RSYNC_PROXY Variablen nutzen um einen Proxy-Server zu deklarieren.

Download Kommandos

Wenn Portage Quellcode beziehen muss wird standardmäßig wget benutzt. Sie können dies durch die FETCHCOMMAND Variable anpassen.

Portage kann halbfertige Downloads fortsetzen. Es benutzt standardmäßig wget, Sie können dies durch die RESUMECOMMAND Variable anpassen.

Stellen Sie sicher, dass Ihre FETCHCOMMAND und RESUMECOMMAND Variablen den Quellcode im richtigen Verzeichnis ablegen. Innerhalb der Variablen sollten Sie \${URI} und \${DISTDIR} benutzen, um die Quellcode URI und das Distfiles Verzeichnis anzugeben.

Sie können weiterhin mit FETCHCOMMAND_HTTP, FETCHCOMMAND_FTP, RESUMECOMMAND_HTTP, RESUMECOMMAND_FTP und so weiter protokollspezifische Handler erstellen.

Rsync-Einstellungen

Sie können den von Portage ausgeführten Rsync-Befehl zur Aktualisierung des Portage-Tree nicht ändern. Sie können jedoch einige Variablen, die in Verbindung zu diesem Rsync-Vorgang stehen, anpassen:

  • PORTAGE_RSYNC_OPTS setzt zahlreiche Standardvariablen, jede durch Leerzeichen getrennt, die während des Sync-Vorgangs verwendet werden. Diese sollten nicht geändert werden, wenn Sie nicht exakt wissen, was Sie tun. Beachten Sie bitte, dass bestimmte Optionen, die absolut zwingend benötigt werden, immer verwendet werden, auch wenn PORTAGE_RSYNC_OPTS leer ist.
  • PORTAGE_RSYNC_EXTRA_OPTS kann verwendet werden um zusätzliche Optionen für den Sync-Vorgang zu setzen. Alle Optionen sollten durch ein Leerzeichen getrennt sein.
    • --timeout=<zahl>: Dies definiert die Anzahl von Sekunden, welche die Verbindung idle sein kann, bevor rsync für die Verbindung einen Zeitüberlauf feststellt. Diese Variable hat den Standardwert 180. Modembenutzer und Personen mit langsamen Rechnern werden jedoch unter Umständen den Wert auf 300 oder höher setzen wollen.
    • --exclude-from=/etc/portage/rsync_excludes: Dies verweist auf eine Datei mit Liste von Paketen und/oder Kategorien, die rsync während des Aktualisierungsvorgangs ignorieren soll. In diesem Fall verweist es auf /etc/portage/rsync_excludes. Bitte lesen Einen Teil des Portage-Tree verwenden für die Syntax in dieser Datei.
    • --quiet: Reduziert die Ausgabe für den Bildschirm
    • --verbose: Gibt eine komplette Dateiliste aus
    • --progress: Gibt einen Fortschrittsbalken für jede Datei aus
  • PORTAGE_RSYNC_RETRIES definiert wie oft rsync versuchen soll mit einem Mirror zu verbinden, auf den in der SYNC-Variable verwiesen wird, bevor es aufgibt. Diese Variable hat den Standardwert 3.

Für weitere Informationen über diese und andere Optionen, lesen Sie bitte man rsync.

2.e. Gentoo Konfiguration

Zweigauswahl

Sie können den standardmäßigen Zweig mit der ACCEPT_KEYWORDS Variable auswählen. Per default wird der stabile Zeig Ihrer Architektur genutzt. Weitere Informationen zu Software Zweigen innerhalb von Gentoo entnehmen Sie dem nächsten Kapitel.

Portage Features

Sie können zahlreiche Portage Optionen durch die FEATURES Variable aktivieren. Die Portage Optionen wurden in vorhergehenden Kapiteln behandelt, wie z.B. in Portage Features.

2.f. Portage Verhalten

Ressourcenmanagement

Mit der PORTAGE_NICENESS Variable können Sie den Nice Wert anpassen, mit dem Portage ausgeführt wird. Der Wert der PORTAGE_NICENESS Variable wird zum aktuellen Nice Wert hinzugefügt.

Für weitere Informationen über Nice Werte schauen Sie in die nice Manpage:

Befehlsauflistung 6.1: Weitere Informationen über nice

$ man nice

Ausgabeverhalten

Mit der NOCOLOR Variable können Sie die Ausgabe von farbigen Meldungen durch Portage deaktivieren. Der Standardwert ist false.


[ << ] [ < ] [ Hauptseite ] [ > ] [ >> ]


Drucken

Alles ansehen

Seite aktualisiert 24. Juli 2012

Diese Übersetzung wird nicht länger gepflegt

Zusammenfassung: Portage ist vollständig durch verscheidene Variablen in der Konfigurationsdatei oder Umgebungsvariablen konfigurierbar.

Sven Vermeulen
Autor

Grant Goodyear
Autor

Roy Marples
Autor

Daniel Robbins
Autor

Chris Houser
Autor

Jerry Alexandratos
Autor

Joshua Saddler
Autor

Seemant Kulleen
Gentoo x86 Entwickler

Tavis Ormandy
Gentoo Alpha Entwickler

Jason Huebel
Gentoo AMD64 Entwickler

Guy Martin
Gentoo HPPA Entwickler

Pieter Van den Abeele
Gentoo PPC Entwickler

Joe Kallar
Gentoo SPARC Entwickler

John P. Davis
Bearbeiter

Pierre-Henri Jondot
Bearbeiter

Eric Stockbridge
Bearbeiter

Rajiv Manglani
Bearbeiter

Jungmin Seo
Bearbeiter

Stoyan Zhekov
Bearbeiter

Jared Hudson
Bearbeiter

Colin Morey
Bearbeiter

Jorge Paulo
Bearbeiter

Carl Anderson
Bearbeiter

Jon Portnoy
Bearbeiter

Zack Gilburd
Bearbeiter

Jack Morgan
Bearbeiter

Benny Chuang
Bearbeiter

Erwin
Bearbeiter

Joshua Kinard
Bearbeiter

Tobias Scherbaum
Bearbeiter

Xavier Neys
Bearbeiter

Shyam Mani
Bearbeiter

Gerald J. Normandin Jr.
Korrektor

Donnie Berkholz
Korrektor

Ken Nowack
Korrektor

Lars Weiler
Mitarbeiter

Tobias Scherbaum
Übersetzer

Jens Schittenhelm
Übersetzer

Patrick Sudowe
Übersetzer

Torsten Veller
Übersetzer

Michael Frey
Übersetzer

Markus Nigbur
Übersetzer

Boris Ruppert
Übersetzer

Jan Hendrik Grahl
Übersetzer

Christian Hartmann
Korrektor

Martin Bürger
Übersetzer

Sophie Lee
Übersetzer

Thomas Gabelmann
Übersetzer

Timo Rothweiler
Übersetzer

Sebastian Westermayer
Übersetzer

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.