Gentoo Logo

Disclaimer : Questo manuale è stato sostituito da una nuova versione e non è più mantenuto.


[ << ] [ < ] [ Home ] [ > ] [ >> ]


2. Configurazione e variabili

Indice:

2.a. Configurazione del Portage

Si è potuto notare come il Portage sia configurabile attraverso numerose variabili che si possono definire in /etc/portage/make.conf. Si faccia riferimento alle pagine man di make.conf per maggiori e più complete informazioni:

Codice 1.1: Leggere le pagine man di make.conf

$ man make.conf

2.b. Opzioni specifiche per la compilazione

Opzioni per la configurazione e la compilazione

Quando Portage compila un'applicazione, passa il contenuto delle seguenti variabili al compilatore e allo script configure:

  • CFLAGS & CXXFLAGS definiscono le flag per i compilatori C e C++.
  • CHOST definisce l'informazione dell'host per lo script configure dell' applicazione.
  • MAKEOPTS è passata al comando make e di solito definisce l'ammontare del parallelismo usato durante la compilazione. Maggiori informazioni sulle opzioni di make possono essere trovate nella pagina man di make.

Anche la variabile USE viene usata durante la configurazione e la compilazione ma è già stata spiegata minuziosamente nei precedenti capitoli.

Opzioni di installazione tramite emerge

Quando Portage deve effettuare l'emerge una nuova versione di un certo software, rimuoverà i file obsoleti delle vecchie versioni dal sistema. Portage aspetta cinque secondi prima di rimuovere le vecchie versioni. Questi cinque secondi sono definiti dalla variabile CLEAN_DELAY.

Si può usare emerge in modo che utilizzi certe opzioni ogni volta che viene eseguito, impostando la variabile EMERGE_DEFAULT_OPTS. Alcune utili opzioni potrebbero essere --ask, --verbose, --tree, etc.

2.c. Protezione dei file di configurazione

Protezione delle locazioni del Portage

Portage sovrascrive i file provvisti dalle nuove versioni di un software se i file non sono memorizzati in una locazione protetta. Queste locazioni protette sono definite dalla variabile CONFIG_PROTECT e sono generalmente locazioni di file di configurazione. La lista delle directory è separata da spazi.

Un file che avrebbe dovuto essere scritto in tale locazione protetta viene rinominato e l'utente viene avvertito della presenza di una nuova versione del (presumibilmente) file di configurazione.

Si può avere la definizione corrente di CONFIG_PROTECT attraverso l'output di emerge --info:

Codice 3.1: Avere la definizione di CONFIG_PROTECT

$ emerge --info | grep 'CONFIG_PROTECT='

Sono disponibili maggiori informazioni sulla protezione dei file di configurazione del Portage nella sezione CONFIGURATION FILES della pagina di manuale di emerge:

Codice 3.2: Maggiori informazioni sulla protezione dei file di configurazione

$ man emerge

Escludere directory

Per 'sproteggere' certe sottodirectory da locazioni protette si può usare la variabile CONFIG_PROTECT_MASK.

2.d. Opzioni per il download

Ubicazione dei server

Quando le informazioni o i dati richiesti non sono disponibili sul sistema, Portage cerca di recuperarli da Internet. L'ubicazione dei server per le varie informazioni e i canali dati sono definite attraverso le seguenti variabili:

  • GENTOO_MIRRORS definisce la lista dei server che contengono codice sorgente (distfiles)
  • PORTAGE_BINHOST definisce un particolare server che contiene pacchetti precompilati per il sistema

Una terza definizione coinvolge l'ubicazione del server rsync usato quando si aggiorna l'albero del Portage:

  • SYNC definisce un particolare server che Portage usa per aggiornare il proprio albero

Le variabili GENTOO_MIRRORS e SYNC possono essere definite attraverso il comando mirrorselect. Sarà necessario emergere l'applicazione prima dell'uso con emerge mirrorselect. Per maggiori informazioni vedere l'aiuto in linea di mirrorselect:

Codice 4.1: Maggiori informazioni su mirrorselect

# mirrorselect --help

Se il nostro ambiente richiede di usare un proxy server, si possono usare le variabili http_proxy, ftp_proxy e RSYNC_PROXY per dichiarare il proxy server.

Comandi per il download

Quando Portage necessita di scaricare codice sorgente, usa il comando wget di default. E' possibile modificarlo attraverso la variabile FETCHCOMMAND.

Portage riesce e riprendere download parziali di codice sorgente. Per questo usa wget, ma si può alterare con la variabili RESUMECOMMAND.

Occorre assicurarsi che sia FETCHCOMMAND che RESUMECOMMAND memorizzino il codice sorgente nella collocazione corretta. Per questo si possono usare le variabile \${URI} e \${DISTDIR} per puntare all'ubicazione del codice sorgente e dei distfiles rispettivamente.

Si possono anche definire dei gestori di protocollo specifici con FETCHCOMMAND_HTTP, FETCHCOMMAND_FTP, RESUMECOMMAND_HTTP, RESUMECOMMAND_FTP, ecc.

Configurazione di rsync

Non si può alterare il comando rsync usato dal Portage per aggiornare il proprio albero, ma si possono definire delle variabili relative al comando rsync:

  • PORTAGE_RSYNC_OPTS imposta il numero predefinito di variabili da utilizzare durante il sync separate da spazi. Queste non dovrebbero essere modificate a meno che non si conosca esattamente cosa si sta facendo. Da notare che certe opzioni richieste verranno sempre usate anche se PORTAGE_RSYNC_OPTS è vuota.
  • PORTAGE_RSYNC_EXTRA_OPTS può essere utilizzata per impostare opzioni aggiuntive durante il sync. Ogni opzione dovrebbe essere separata da spazi.
    • --timeout=<number>: imposta il numero di secondi che definiscono il time-out della connessione. Il valore predefinito è 180 ma utenti che utilizzano connessioni via modem o con computer lenti potrebbero voler impostare questo valore a 300 o maggiore.
    • --exclude-from=/etc/portage/rsync_excludes: il valore della variabile è un file contenente una lista di pacchetti e/o categorie che rsync dovrebbe ignorare dirante il processo di aggiornamento. In questo caso il file è /etc/portage/rsync_excludes. Leggere Usare un Portage Tree Subset per la sintassi di questo file.
    • --quiet: riduce l'output a schermo
    • --verbose: stampa una lista completa dei file
    • --progress: mostra il progressivo per ogni file
  • PORTAGE_RSYNC_RETRIES definisce quante volte rsync dovrebbe provare a connettersi al mirror definito dalla variabile SYNC prima di rinunciarvi. Il valore predefinito per questa variabile è 3.

Per maggiori informazioni su queste ed altre opzioni, leggere la pagina di manuale di rsync.

2.e. Configurazione di Gentoo

Selezione di una branca

Si può cambiare la branca predefinita con la variabile ACCEPT_KEYWORDS il cui valore predefinito è l'architettura stabile del sistema. Maggiori informazioni sulle branche di Gentoo possono essere trovate nel prossimo capitolo.

Caratteristiche del Portage

Si possono attivare certe caratteristiche del Portage con la variabile FEATURES. Le caratteristiche del Portage sono state discusse nei capitoli precedenti, come in Caratteristiche del Portage.

2.f. Comportamento del Portage

Gestione delle risorse

Con la variabile PORTAGE_NICENESS si può aumentare o ridurre il valore nice con cui viene eseguito il Portage. Il valore di PORTAGE_NICENESS viene aggiunto al valore corrente di nice.

Per maggiori informazioni sui valori di nice fare riferimento alle pagine man del nice:

Codice 6.1: Maggiori informazioni sul nice

$ man nice

Comportamento dell'output

La variabile NOCOLOR, il cui valore predefinito è "false", definisce se Portage deve disabilitare l'uso di output colorato.


[ << ] [ < ] [ Home ] [ > ] [ >> ]


Stampa

Visualizza tutto

Aggiornato il 24 luglio 2012

Questa traduzione non è più mantenuta

Oggetto: Portage è completamente personalizzabile tramite diversi tipi di variabili che possono essere impostate sia nel file di configurazione che nell'ambiente di esecuzione.

Sven Vermeulen
Autore

Grant Goodyear
Autore

Roy Marples
Autore

Daniel Robbins
Autore

Chris Houser
Autore

Jerry Alexandratos
Autore

Seemant Kulleen
Sviluppo x86

Tavis Ormandy
Sviluppo Alpha

Jason Huebel
Sviluppo AMD64

Guy Martin
Sviluppo HPPA

Pieter Van den Abeele
Sviluppo PPC

Joe Kallar
Sviluppo SPARC

John P. Davis
Redazione

Pierre-Henri Jondot
Redazione

Eric Stockbridge
Redazione

Rajiv Manglani
Redazione

Jungmin Seo
Redazione

Stoyan Zhekov
Redazione

Jared Hudson
Redazione

Colin Morey
Redazione

Jorge Paulo
Redazione

Carl Anderson
Redazione

Jon Portnoy
Redazione

Zack Gilburd
Redazione

Jack Morgan
Redazione

Benny Chuang
Redazione

Erwin
Redazione

Joshua Kinard
Redazione

Tobias Scherbaum
Redazione

Lars Weiler
Redazione

Jochen Maes
Redazione

Xavier Neys
Redazione

Joseph Jezak
Redazione

Joshua Saddler
Redazione

Gerald J. Normandin Jr.
Revisione

Donnie Berkholz
Revisione

Ken Nowack
Revisione

Marco Mascherpa
Traduzione

Stefano Pacella
Traduzione

Enrico Morelli
Traduzione

Davide Cendron
Traduzione

Donate to support our development efforts.

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