Handbook:SPARC/Portage/Files/it

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:SPARC/Portage/Files and the translation is 50% complete.
Manuale SPARC
Installazione
Riguardo l'installazione
Il mezzo d'installazione
Configurare la rete
Preparare i dischi
Installare lo stage3
Installare il sistema base
Configurare il kernel
Configurare il sistema
Strumenti di sistema
Configurare l'avviatore
Ultimare l'installazione
Lavorare con Gentoo
Introduzione a Portage
Opzioni USE
Funzionalità di Portage
Sistema script di init
Variabili d'ambiente
Lavorare con Portage
File e cartelle
Variabili
Mixare i rami del software
Strumenti aggiuntivi
Repositorio pacchetti personalizzato
Funzionalità avanzate
Configurare la rete
Come iniziare
Configurazione avanzata
Networking modulare
Wireless
Aggiungere funzionalità
Gestione dinamica

Direttive per la configurazione

Portage viene installato con una configurazione predefinita su /usr/share/portage/config/make.globals. L'intera configurazione di Portage viene gestita tramite variabili. Tutte le variabili prese in esame da Portage verranno descritte più avanti.

Siccome molte direttive di configurazione differiscono tra le varie architetture, Portage possiede dei file di configurazione predefiniti che fanno parte del profilo di sistema. Il link simbolico /etc/portage/make.profile punta a questo profilo; le configurazioni di Portage sono impostate nei file make.defaults del profilo e di tutti i profili padre. Forniremo maggiori spiegazioni sui profili e sulla cartella /etc/portage/make.profile più avanti.

Quando si modifica una variabile di configurazione, non si modifichi /usr/share/portage/config/make.globals o make.defaults. Si usi invece /etc/portage/make.conf che ha priorità sui file precedenti. Per ulteriori informazioni, leggere /usr/share/portage/config/make.conf.example. Come suggerisce il nome, questo è semplicemente un file di esempio - Portage non legge questo file.

È possibile definire una variabile di configurazione di Portage anche come variabile d'ambiente, ma non è raccomandabile.

Informazioni specifiche sul profilo

Abbiamo già incontrato la cartella /etc/portage/make.profile. Ebbene, questa non è esattamente una cartella ma un link simbolico ad un profilo, in via predefinita ad uno dentro /usr/portage/profiles/ sebbene sia possibile creare i propri profili altrove e puntare verso essi. Il profilo a cui punta questo link simbolico è il profilo a cui aderisce il sistema.

Un profilo contiene informazioni per Portage specifiche sull'architettura, per esempio un elenco di pacchetti facenti parte del sistema rispondenti a quel profilo, un elenco di pacchetti che non funzionano (o che sono mascherati) su quel profilo, ecc.

Configurazione specifica per l'utente

Quando serve modificare il comportamento di Portage riguardo l'installazione di software, è necessario modificare il giusto insieme di file dentro /etc/portage/. Si consiglia vivamente di utilizzare i file dentro /etc/portage/ e si sconsiglia fortemente di sovrascrivere tale comportamento attraverso le variabili d'ambiente!

All'interno di /etc/portage/ gli utenti possono creare i seguenti file:

  • package.mask che elenca i pacchetti che Portage non dovrebbe mai provare ad installare
  • package.unmask che elenca i pacchetti che Portage dovrebbe essere in grado di installare anche se gli sviluppatori di Gentoo scoraggiano molto gli utenti a farne uso
  • package.accept_keywords che elenca i pacchetti che Portage dovrebbe essere in grado di installare anche se il pacchetto non è stato (ancora) considerato adatto per il sistema o per l'architettura
  • package.use che elenca le opzioni USE (flag) da utilizzare per determinati pacchetti senza che l'intero sistema debba usare tali opzioni USE

Questi non devono essere necessariamente dei file; possono anche essere cartelle che contengono un file per pacchetto. Ulteriori informazioni sulla cartella /etc/portage/ ed un elenco completo dei file che si possono creare si trovano nella pagina manuale di Portage:

user $man portage

Cambiare le posizioni di file e cartelle di Portage

I file di configurazione menzionati in precedenza non possono essere memorizzati altrove - Portage cercherà quei file di configurazione sempre in quelle esatte posizioni. Tuttavia, Portage utilizza molte altre posizioni per vari scopi: cartelle per la compilazione, deposito del codice sorgente, posizione del repositorio di Gentoo, ...

Per tutti questi scopi ci sono posizioni predefinite ben note, ma possono essere modificate in base ai gusti personali tramite /etc/portage/make.conf. Il resto di questo capitolo spiega quali posizioni speciali utilizza Portage e come modificarne la posizione nel filesystem.

Comunque questo documento non è concepito per essere usato come riferimento. Per coprire il 100% degli argomenti, consultare le pagine manuale di Portage e make.conf:

user $man portage
user $man make.conf

Conservare i file

Repositorio di Gentoo

Il percorso predefinito del repositorio di Gentoo è /usr/portage. Esso è definito dal file predefinito repos.conf collocato su /usr/share/portage/config/repos.conf. Per modificare il valore predefinito, copiare questo file su /etc/portage/repos.conf/gentoo.conf e modificare l'impostazione di location. Quando si memorizza altrove il repositorio di Gentoo (modificando questa variabile), non si dimentichi di modificare coerentemente anche il collegamento simbolico /etc/portage/make.profile.

Dopo aver modificato l'impostazione di location su /etc/portage/repos.conf/gentoo.conf, si consiglia di modificare le seguenti variabili su /etc/portage/make.conf dato che non riceveranno avviso del cambiamento di location. Ciò dipende dal modo con cui Portage gestisce le variabili: PKGDIR, DISTDIR e RPMDIR.

Binari precompilati

Anche se Portage non usa i binari precompilati per impostazione predefinita, li supporta ampiamente. Quando si chiede a Portage di lavorare con i pacchetti precompilati, li cercherà in /usr/portage/pacchetti. Questa posizione è definita dalla variabile PKGDIR.

Codice sorgente

Il codice sorgente delle applicazioni è memorizzato in /usr/portage/distfiles per impostazione predefinita. Questa posizione è definita dalla variabile DISTDIR.

Il database di Portage

Portage memorizza lo stato del sistema (quali pacchetti risultano installati, quali file appartengono a quale pacchetto, ... ) su /var/db/pkg.

Attenzione
Non modificare questi file manualmente! Ciò potrebbe guastare le conoscenze di Portage sul sistema.

Cache di Portage

La cache di Portage (con i tempi di modifica, i virtuali, le informazioni sull'albero delle dipendenze, ... ) è memorizzata in /var/cache/edb. Questa posizione è effettivamente una cache (memoria provvisoria di supporto): gli utenti possono cancellarla se non stanno eseguendo applicazioni relazionate con Portage in quel momento.

Compilare il software

File di Portage temporanei

I file temporanei di Portage sono memorizzati in /var/tmp/ per impostazione predefinita. Ciò viene definito dalla variabile PORTAGE_TMPDIR.

Cartella di compilazione

Portage crea cartelle di compilazione specifiche per ogni pacchetto, le quali emergono dentro /var/tmp/portage/. Questa posizione è definita dalla variabile BUILD_PREFIX.

Posizione del filesystem live

In via predefinita, Portage installa tutti i file sul filesystem corrente (/), ma ciò può essere modificato impostando la variabile d'ambiente ROOT. Questo è utile quando si creano nuove immagini di pacchetti compilati.

Funzionalità di registro

Registro ebuild

Portage può creare file di registro (log) per ciascun ebuild, ma solo quando la variabile PORT_LOGDIR è impostata su una cartella scrivibile da Portage (tramite l'utente di Portage). In via predefinita questa variabile non è impostata. Se PORT_LOGDIR non è impostata, non ci saranno registri di compilazione (build) per il sistema di registro corrente, sebbene gli utenti possano ricevere alcuni registri dal nuovo supporto di elog.

Se PORT_LOGDIR non è definito e viene usato elog, i registri di compilazione e tutti gli altri registri salvati da elog saranno resi disponibili, come spiegato di seguito.

Portage offre un controllo preciso sulla registrazione tramite l'uso di elog:

  • PORTAGE_ELOG_CLASSES: qui è dove gli utenti possono stabilire quali tipi di messaggi devono essere registrati. Può trattarsi di qualsiasi combinazione di info (informazioni), warn (avvisi), error (errori), log (registri) e qa (garanzie di qualità), separati da uno spazio.
    • info: registra i messaggi "einfo" stampati da un ebuild
    • warn: registra i messaggi "ewarn" stampati da un ebuild
    • error: registra i messaggi "eerror" stampati da un ebuild
    • log: registra i messaggi "elog" trovati in alcuni ebuild
    • qa: registra i messaggi "QA Notice" stampati da un ebuild
  • PORTAGE_ELOG_SYSTEM: seleziona i moduli per elaborare i messaggi del registro. Se lasciato vuoto, la registrazione sarà disabilitata. È possibile utilizzare qualsiasi combinazione separata da uno spazio tra save (salvataggio), custom (personalizzato), syslog (registro di sistema), mail (posta), save_summary (sommario salvataggio) e mail_summary (sommario posta). Per poter utilizzare elog è necessario selezionare almeno un modulo.
    • save: salva un registro per pacchetto in $PORT_LOGDIR/elog, o in /var/log/portage/elog se $PORT_LOGDIR non è impostato.
    • custom: passa tutti i messaggi a un comando definito dall'utente su $PORTAGE_ELOG_COMMAND; ciò sarà discusso più tardi.
    • syslog: invia tutti i messaggi al registro di sistema installato.
    • mail: passa tutti i messaggi ad un server mail definito dall'utente su $PORTAGE_ELOG_MAILURI; ciò sarà discusso più tardi. Le funzionalità mail di elog richiedono >=portage-2.1.1.
    • save_summary: simile a save, ma unisce tutti i messaggi in $PORT_LOGDIR/elog/summary.log, o in /var/log/portage/elog/summary.log se $PORT_LOGDIR non è impostato.
    • mail_summary: simile a mail, ma invia tutti i messaggi in una sola mail quando emerge esce.
  • PORTAGE_ELOG_COMMAND: viene utilizzato solo quando il modulo custom (personalizzato) è abilitato. Gli utenti possono specificare un comando per elaborare i messaggi di registro. Si noti che il comando può utilizzare due variabili: ${PACKAGE} che fornisce nome e versione del pacchetto, e ${LOGFILE} che fornisce il percorso assoluto del file di registro. Per esempio:
CODE Esempio di definizione di PORTAGE_ELOG_COMMAND
PORTAGE_ELOG_COMMAND="/path/to/logger -p '\${PACKAGE}' -f '\${LOGFILE}'"
  • PORTAGE_ELOG_MAILURI: contiene impostazioni per il modulo mail come indirizzo, utente, password, server mail, e numero della porta. L'impostazione predefinita è "root@localhost localhost". Il seguente esempio è per un server SMTP che richiede un'autenticazione basata su nome utente e password tramite una particolare porta (quella predefinita è la 25):
CODE Esempio di definizione di PORTAGE_ELOG_MAILURI
PORTAGE_ELOG_MAILURI="user@some.domain username:password@smtp.some.domain:995"
  • PORTAGE_ELOG_MAILFROM: consente all'utente di impostare l'indirizzo "da" (from) delle e-mail di registro; il valore predefinito è "Portage" se non viene impostato.
  • PORTAGE_ELOG_MAILSUBJECT: consente all'utente di creare una riga per l'oggetto per le e-mail di registro. Si noti che può utilizzare due variabili: ${PACKAGE} visualizzerà il nome e la versione del pacchetto, mentre ${HOST} il nome di dominio completo dell'host su cui Portage è in esecuzione. Per esempio:
CODE Esempio di definizione di PORTAGE_ELOG_MAILSUBJECT
PORTAGE_ELOG_MAILSUBJECT="pacchetto \${PACKAGE} compilato su \${HOST} con qualche messaggio"
Importante
Gli utenti che hanno utilizzato enotice con Portage-2.0.* devono rimuovere completamente enotice, in quanto non è compatibile con elog.