APT\&.CONF
Section: APT (5)
Updated: 04 aprile 2019
Page Index
NOME
apt.conf - file di configurazione di APT
DESCRIZIONE
/etc/apt/apt.conf
è il file di configurazione principale condiviso da tutti gli strumenti nella suite APT, anche se non è affatto l'unico posto in cui possono essere impostate opzioni. La suite condivide anche un analizzatore comune della riga di comando per fornire un ambiente uniforme.
Quando uno strumento APT viene avviato, legge i file di configurazione nel seguente ordine:
-
1.
il file specificato dalla variabile d'ambiente
APT_CONFIG
(se presente)
-
2.
tutti i file in
Dir::Etc::Parts, in ordine alfanumerico crescente, se il loro nome file non ha estensione o ha «conf» come estensione, e contiene solamente caratteri alfanumerici, trattini (-), caratteri di sottolineatura (_) e punti (.). Altrimenti, APT visualizza un messaggio che informa che un file è stato ignorato, a meno che il file non corrisponda ad un modello nell'elenco di configurazione
Dir::Ignore-Files-Silently
nel qual caso verrà ignorato silenziosamente.
-
3.
il file di configurazione principale specificato da
Dir::Etc::main
-
4.
tutte le opzioni impostate nel sottoalbero di configurazione specifico dei binari sono spostate nella radice dell'albero.
-
5.
le opzioni nella riga di comando sono applicate per scavalcare le direttive di configurazione o per caricare ulteriori file di configurazione.
SINTASSI
Il file di configurazione ha un'organizzazione ad albero con le opzioni riunite in gruppi funzionali. Un'opzione viene specificata con una notazione a due punti (:); per esempio
APT::Get::Assume-Yes
è un'opzione per lo strumento Get all'interno del gruppo dello strumento APT. Le opzioni non ereditano dai gruppi genitori.
Sintatticamente il linguaggio di configurazione è basato sul modello di quello usato dagli strumenti ISC come bind e dhcp. Le righe che iniziano con
//
vengono trattate come commenti (ignorate), così come tutto il testo racchiuso tra
/*
e
*/, proprio come i commenti C/C++. Ogni riga ha la forma
APT::Get::Assume-Yes "true";. Le virgolette e il punto e virgola finale sono obbligatori. I valori non possono includere barre inverse (\) o ulteriori virgolette. I nomi delle opzioni sono costituiti da caratteri alfanumerici e dai caratteri «/-:._+». Un nuovo ambito può essere aperto con parentesi graffe come in:
-
APT {
Get {
Assume-Yes "true";
Fix-Broken "true";
};
};
con le nuove righe posizionate in modo da renderle più leggibili. Si possono creare elenchi aprendo un ambito e includendo una singola stringa racchiusa tra virgolette e seguita da un punto e virgola. Possono essere incluse più voci, separate da un punto e virgola.
-
DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
In generale i file di configurazione d'esempio
/usr/share/doc/apt/examples/configure-index.gz
sono una buona guida su come debba essere un file di configurazione.
I nomi delle voci di configurazione sono insensibili all'uso di maiuscole e minuscole, perciò nell'esempio precedente si sarebbe potuto usare
dpkg::pre-install-pkgs.
I nomi delle voci di configurazione sono opzionali se viene definito un elenco come si può vedere nell'esempio
DPkg::Pre-Install-Pkgs
precedente. Se non si specifica un nome, una nuova voce aggiunge semplicemente una nuova opzione all'elenco. Se si specifica un nome, si può sovrascrivere l'opzione come per ogni altra, assegnandole un nuovo valore.
Sono definiti due comandi speciali:
#include
(che è deprecato e non supportato da implementazioni alternative) e
#clear.
#include
include il file indicato a meno che il suo nome non termini con un carattere «/», nel qual caso viene inclusa l'intera directory.
#clear
viene usato per eliminare una parte dell'albero di configurazione. L'elemento specificato e tutti i suoi discendenti vengono eliminati. (Notare che anche queste righe devono terminare con un punto e virgola.)
Il comando
#clear
è l'unico modo di cancellare un elenco o un intero ambito. Riaprire un ambito (o usare la sintassi descritta più sotto aggiungendo alla fine
::)
non
sovrascrive le voci precedentemente scritte. Le opzioni possono essere sovrascritte solamente assegnandovi un nuovo valore; gli elenchi e gli ambiti non possono essere sovrascritti, solo cancellati.
Tutti gli strumenti APT accettano un'opzione -o che permette di specificare una direttiva di configurazione arbitraria nella riga di comando. La sintassi è un nome completo di opzione (per esempio
APT::Get::Assume-Yes) seguito da un segno di uguaglianza e quindi il nuovo valore dell'opzione. Per aggiungere un nuovo elemento ad un elenco, aggiungere
::
alla fine del nome dell'elenco. (Come si può immaginare, la sintassi per gli ambiti non può essere usata nella riga di comando.)
Notare che aggiungere voci in coda ad un elenco usando
::
funziona solamente con un elemento per riga, e che non si dovrebbe usarlo insieme alla sintassi per gli ambiti (che aggiunge implicitamente
::). L'uso di entrambe le sintassi insieme fa apparire un bug che sfortunatamente alcuni utenti utilizzano: un'opzione con l'insolito nome «::» che funziona come una qualsiasi altra opzione con nome. Ciò introduce molti problemi; innanzitutto gli utenti che scrivono più righe con questa sintassi
sbagliata
nella speranza di aggiungere voci ad un elenco ottengono il risultato opposto, dato che viene usata solo l'ultima assegnazione per questa opzione «::». Le versioni future di APT causeranno errori e smetteranno di funzionare se incontrano questo uso scorretto, perciò è bene correggere tali dichiarazioni ora, quando APT ancora non si lamenta esplicitamente.
IL GRUPPO APT
Questo gruppo di opzioni controlla il comportamento generale di APT, oltre a contenere le opzioni per tutti gli strumenti.
Architecture
-
Architettura di sistema; imposta l'architettura da usare quando si recuperano i file e si analizzano gli elenchi dei pacchetti. Il valore predefinito interno è l'architettura per la quale apt è stato compilato.
Architectures
-
Tutte le architetture supportate dal sistema. Ad esempio, le CPU che implementano l'insieme di istruzioni
amd64
(chiamato anche
x86-64) sono anche in grado di eseguire binari compilati per l'insieme di istruzioni
i386
(x86). Questo elenco viene usato quando si recuperano i file e si analizzano gli elenchi dei pacchetti. Il valore iniziale predefinito è sempre l'architettura nativa del sistema (APT::Architecture), e le altre architetture vengono aggiunte all'elenco predefinito quando sono registrate con
dpkg --add-architecture.
Compressor
-
Questo ambito definisce quali formati di compressione sono gestiti, come possono essere effettuate la compressione e la decompressione se il supporto per il formato non è incorporato direttamente in apt e un valoro di costo che indica quanto costoso è comprimere qualcosa in questo formato. Come esempio, la seguente sezione di configurazione permette ad apt di scaricare e decomprimere, oltre a creare e archiviare, file con l'estensione a basso costo
.reversed
che passerà al comando
rev
senza parametri aggiuntivi per la compressione e la decompressione nella riga di comando:
-
APT::Compressor::rev {
Name "rev";
Extension ".reversed";
Binary "rev";
CompressArg {};
UncompressArg {};
Cost "10";
};
Build-Profiles
-
Elenco dei profili di compilazione abilitati per la risoluzione delle dipendenze di compilazione, senza il prefisso dello spazio dei nomi «profile.». In modo predefinito questa lista è vuota.
DEB_BUILD_PROFILES, come usata da
dpkg-buildpackage(1)
ha la precedenza sulla notazione della lista.
Default-Release
-
Il rilascio predefinito da cui installare i pacchetti se è disponibile più di una versione. Contiene il nome del rilascio, il nome in codice o la versione del rilascio. Esempi: «stable», «testing», «unstable», «bullseye», «bookworm», «4.0», «5.0*». Vedere anche
apt_preferences(5).
Ignore-Hold
-
Ignora i pacchetti bloccati; questa opzione globale fa sì che il risolutore di problemi ignori i pacchetti bloccati nel suo processo decisionale.
Clean-Installed
-
Attiva in modo predefinito. Quando attiva, la funzionalità autoclean rimuove dalla cache ogni pacchetto che non può più essere scaricato. Se disattivata, allora sono esclusi dalla rimozione anche i pacchetti che sono installati; fare attenzione però al fatto che APT non fornisce alcun mezzo diretto per reinstallarli.
Immediate-Configure
-
Attiva in modo predefinito, il che fa sì che APT installi i pacchetti essenziali e importanti non appena è possibile durante un'installazione o aggiornamento, per limitare l'effetto di una chiamata a
dpkg(1)
che non ha successo. Se questa opzione è disattivata, APT tratta un pacchetto importante nello stesso modo di un pacchetto extra: tra lo spacchettamento del pacchetto A e la sua configurazione possono esserci molte altre chiamate di spacchettamento o configurazione per altri pacchetti non correlati B, C, ecc. Se queste causano il fallimento della chiamata a
dpkg(1)
(ad esempio perché lo script del manutentore di B genera un errore), ciò ha come risultato un sistema in cui il pacchetto A è spacchettato ma non configurato; perciò non è più garantito il funzionamento di ogni pacchetto che dipende da A, dato che la dipendenza da A non è più soddisfatta.
Il contrassegno di configurazione immediata viene applicato anche nel caso potenzialmente problematico di dipendenze circolari, dato che una dipendenza con il contrassegno di immediato è equivalente ad una pre-dipendenza. In teoria ciò permette ad APT di riconoscere una situazione in cui non è in grado di effettuare la configurazione immediata, di terminare annullando e di suggerire all'utente che l'opzione dovrebbe essere temporaneamente disattivata per permettere la continuazione dell'operazione. Notare come sia stata usata l'espressione «in teoria»: in realtà questo problema si è verificato molto di rado, in versioni non stabili di distribuzione, ed è stato causato da dipendenze sbagliate del pacchetto interessato o da un sistema che era già in uno stato erroneo; perciò non si dovrebbe disattivare alla cieca questa opzione, dato che lo scenario descritto sopra non è l'unico problema che può aiutare a prevenire.
Prima di eseguire una grossa operazione come
dist-upgrade
con questa opzione disattivata, si dovrebbe provare a usare esplicitamente
install
sul pacchetto che APT non è stato in grado di configurare immediatamente; assicurarsi però di segnalare il problema alla propria distribuzione e al Team di APT usando il collegamento per i bug indicato in seguito, in modo che possano lavorare a migliorare o correggere il processo di aggiornamento.
Force-LoopBreak
-
Non attivare mai questa opzione a meno di non sapere
veramente
ciò che si sta facendo. Permette ad APT di rimuovere temporaneamente un pacchetto essenziale per rompere un ciclo Conflicts/Conflicts o Conflicts/Pre-Depends tra due pacchetti essenziali.
Un tale ciclo non dovrebbe mai esistere ed è un bug grave. Questa opzione funziona se i pacchetti essenziali non sono
tar,
gzip,
libc,
dpkg,
dash
o qualsiasi altro da cui dipendono tali pacchetti.
Cache-Start, Cache-Grow, Cache-Limit
-
APT, a partire dalla versione 0.7.26, usa un file cache ridimensionabile mappato in memoria per memorizzare le informazioni disponibili.
Cache-Start
funziona da indicatore della dimensione che la cache raggiungerà ed è perciò la quantità di memoria che APT richiederà all'avvio. Il valore predefinito è 20971520 byte (~20 MB). Notare che questa quantità di spazio deve essere disponibile per APT, altrimenti probabilmente terminerà con un fallimento in modo molto poco grazioso; perciò per i dispositivi con memoria limitata questo valore dovrebbe essere abbassato, mentre nei sistemi con molte fonti configurate dovrebbe essere aumentato.
Cache-Grow
definisce di quanto verrà aumentata la dimensione della cache in byte, se lo spazio definito da
Cache-Start
non è sufficiente; il valore predefinito è 1048576 (~1 MB). Questo valore verrà applicato più volte, fino a che la cache non è grande abbastanza per memorizzare tutte le informazioni o la dimensione della cache raggiunge il valore
Cache-Limit. Il valore predefinito di
Cache-Limit
è 0 che indica nessun limite. Se
Cache-Grow
viene impostato a 0 la crescita automatica della cache è disabilitata.
Build-Essential
-
Definisce quali pacchetti sono considerati dipendenze di compilazione essenziali.
Get
-
La sottosezione Get controlla lo strumento
apt-get(8); vedere la sua documentazione per maggiori informazioni su queste opzioni.
Cache
-
La sottosezione Cache controlla lo strumento
apt-cache(8); vedere la sua documentazione per maggiori informazioni su queste opzioni.
CDROM
-
La sottosezione CDROM controlla lo strumento
apt-cdrom(8); vedere la sua documentazione per maggiori informazioni su queste opzioni.
IL GRUPPO ACQUIRE
Il gruppo di opzioni
Acquire
controlla lo scaricamento dei pacchetti così come i vari «metodi di acquisizione» responsabili per lo scaricamento stesso (vedere anche
sources.list(5)).
Check-Date
-
Security related option defaulting to true, enabling time-related checks. Disabling it means that the machine's time cannot be trusted, and APT will hence disable all time-related checks, such as
Check-Valid-Until
and verifying that the Date field of a release file is not in the future.
Max-FutureTime
-
Maximum time (in seconds) before its creation (as indicated by the
Date
header) that the
Release
file should be considered valid. The default value is
10. Archive specific settings can be made by appending the label of the archive to the option name. Preferably, the same can be achieved for specific
sources.list(5)
entries by using the
Date-Max-Future
option there.
Check-Valid-Until
-
Opzione relativa alla sicurezza attiva in modo predefinito, poiché dare una data di scadenza alla convalida di un file Release evita attacchi ripetuti nel corso del tempo e può anche, per esempio, aiutare gli utenti a identificare i mirror che non sono più aggiornati, ma la funzionalità dipende dall'esattezza dell'orologio sul sistema dell'utente. I manutentori degli archivi sono incoraggiati a creare file Release con l'intestazione
Valid-Until, ma se non lo fanno o se si desidera un valore più restrittivo può essere utilizzata l'opzione
Max-ValidTime
seguente. Per disabiitare il controllo in modo selettivo dovrebbe essere preferita l'opzione
Check-Valid-Until
delle voci in
sources.list(5), invece di usare questa configurazione globale.
Max-ValidTime
-
Tempo massimo (in secondi) dalla sua creazione (come indicata dall'intestazione
Date) per il quale il file
Release
deve essere considerato valido. Se il file Release stesso include un'intestazione
Valid-Until, viene usata come data di scadenza quella più corta. Il valore predefinito è
0
che sta per «valido per sempre». Possono essere fatte impostazioni specifiche per ciascun archivio aggiungendo l'etichetta dell'archivio in fondo al nome dell'opzione. È preferibile ottenere la stessa cosa per voci specifiche in
sources.list(5)
usando lì l'opzione
Valid-Until-Max.
Min-ValidTime
-
Tempo minimo (in secondi) dalla sua creazione (come indicata dall'intestazione
Date) per il quale il file
Release
deve essere considerato valido. Utilizzare questa opzione se si deve usare un mirror (locale), aggiornato raramente, di un archivio aggiornato più spesso che ha un'intestazione
Valid-Until, invece di disabilitare completamente il controllo della data di scadenza. Possono essere fatte impostazioni specifiche per ciascun archivio aggiungendo l'etichetta dell'archivio in fondo al nome dell'opzione. È preferibile ottenere la stessa cosa per voci specifiche in
sources.list(5)
usando lì l'opzione
Valid-Until-Min.
AllowTLS
-
Allow use of the internal TLS support in the http method. If set to false, this completely disables support for TLS in apt's own methods (excluding the curl-based https method). No TLS-related functions will be called anymore.
PDiffs
-
Cerca di scaricare le differenze chiamate
PDiff
per gli indici (come i file
Packages), invece di scaricare interamente i nuovi. Attiva in modo predefinito. È preferibile fare questa impostazione per file indice o voci specifiche in
sources.list(5)
usando lì l'opzione
PDiffs.
Sono disponibili anche due sotto-opzioni per limitare l'uso dei PDiff:
FileLimit
può essere usata per specificare un numero massimo di file PDiff che devono essere scaricati per aggiornare un file.
SizeLimit, invece, è la percentuale massima della dimensione di tutte le patch in rapporto alla dimensione del file finale considerato. Se uno di questi limiti viene superato, viene scaricato il file completo invece delle patch.
By-Hash
-
Cerca di scaricare gli indici usando un URI costruito a partire da una somma hash del file atteso invece che scaricato attraverso un nome di file stable ben noto. Attiva in modo predefinito, ma disabilitata in modo predefinito se la fonte non indica il supporto per essa. Il suo uso può essere forzato con il valore speciale «force». È preferibile impostarla per file indice o voci specifiche in
sources.list(5)
usando lì l'opzione
By-Hash.
Queue-Mode
-
Modalità di coda;
Queue-Mode
può essere
host
o
access, che determinano come APT mette in parallelo le connessioni in uscita.
host
significa che viene aperta una connessione per ogni host bersaglio,
access
significa che viene aperta una connessione per ogni tipo di URI.
Retries
-
Numero di tentativi successivi da effettuare. Se è diverso da zero, APT riproverà per il numero di volte specificato a scaricare i file con cui non ha avuto successo.
Source-Symlinks
-
Usa i collegamenti simbolici per gli archivi sorgente. Se impostata a vero, allora per gli archivi sorgente verranno creati, quando possibile, dei collegamenti simbolici invece di fare una copia. Il valore predefinito è vero.
http https
-
The options in these scopes configure APT's acquire transports for the protocols HTTP and HTTPS and are documented in the
apt-transport-http(1)
and
apt-transport-https(1)
manpages respectively.
ftp
-
ftp::Proxy
imposta il proxy predefinito da usare per gli URI FTP. È nella forma standard
ftp://[[utente][:password]@]host[:porta]/. Si possono anche specificare proxy per ciascun host usando la forma
ftp::Proxy::<host>
con la speciale parola chiave
DIRECT
che indica di non usare proxy. Se nessuna delle opzioni precedenti è impostata, viene usata la variabile d'ambiente
ftp_proxy. Per usare un proxy FTP è necessario impostare lo script
ftp::ProxyLogin
nel file di configurazione. Questa voce specifica i comandi da inviare per dire al server proxy a cosa connettersi. Vedere
/usr/share/doc/apt/examples/configure-index.gz
per un esempio di come utilizzarla. Le variabili di sostituzione che rappresentano i corrispondenti componenti dell'URI sono
$(PROXY_USER),
$(PROXY_PASS),
$(SITE_USER),
$(SITE_PASS),
$(SITE)
e
$(SITE_PORT).
L'opzione
timeout
imposta il tempo di timeout usato dal metodo; questo valore si applica sia al timeout per la connessione sia a quello per i dati.
Sono fornite diverse impostazioni per controllare la modalità passiva. Generalmente è sicuro lasciare attiva la modalità passiva; funziona in quasi tutti gli ambienti. Tuttavia in alcune situazioni è necessario disabilitare la modalità passiva e usare invece la modalità per porta FTP. Ciò può essere fatto globalmente o, per connessioni che passano attraverso un proxy, per uno specifico host (vedere il file di configurazione d'esempio).
È possibile usare FTP attraverso un proxy via HTTP impostando la variabile d'ambiente
ftp_proxy
ad un URL HTTP; per la sintassi vedere la spiegazione del metodo http più sopra. Non è possibile impostare questa opzione nel file di configurazione e l'uso di FTP via HTTP non è raccomando a causa della sua bassa efficienza.
L'impostazione
ForceExtended
controlla l'uso dei comandi
EPSV
e
EPRT
della RFC 2428. Il valore predefinito è falso, il che significa che questi comandi sono usati solamente se la connessione di controllo è IPv6. Impostare questo valore a vero forza il loro uso anche su connessioni IPv4. Notare che la maggior parte dei server FTP non supporta la RFC 2428.
cdrom
-
Per URI che usano il metodo
cdrom, l'unica opzione configurabile è il punto di mount,
cdrom::Mount, che deve essere il punto di mount dell'unità CD-ROM (o DVD o quello che è), come specificato in
/etc/fstab. È possibile fornire comandi alternativi per il montaggio e lo smontaggio se il proprio punto di mount non può essere elencato in fstab. La sintassi prevede di mettere
-
/cdrom/::Mount "pippo";
all'interno del blocco
cdrom. È importante che sia presente la barra in fondo. I comandi per lo smontaggio possono essere specificati usando UMount.
gpgv
-
Per gli URI GPGV l'unica opzione configurabile è
gpgv::Options, che passa parametri aggiuntivi a gpgv.
CompressionTypes
-
Elenco di tipi di compressione che sono capiti dai metodi di acquisizione. I file come
Packages
possono essere disponibili in vari formati di compressione. In modo predefinito i metodi di acquisizione possono decomprimere e ricomprimere molti formati comuni come
xz
e
gzip; con questa impostazione si possono ottenere informazioni sui formati supportati, si può modificarli oltre ad aggiungere il supporto per altri formati (vedere anche
APT::Compressor). La sintassi è:
-
Acquire::CompressionTypes::EstensioneFile "NomeMetodo";
Inoltre si può usare il sottogruppo
Order
per definire in quale ordine il sistema di acquisizione cerca di scaricare i file compressi. Il sistema tenta con il primo tipo di compressione e in caso di errore passa al successivo nell'elenco perciò, per preferire un tipo rispetto ad un altro, basta mettere il tipo preferito per primo; i tipi che non sono già presenti vengono aggiunti in modo implicito alla fine dell'elenco, perciò si può usare, ad esempio,
-
Acquire::CompressionTypes::Order:: "gz";
per preferire i file compressi con
gzip
a tutti gli altri formati di compressione. Se si volesse preferire
xz
rispetto a
gzip
e
bzip2, l'impostazione di configurazione sarebbe:
-
Acquire::CompressionTypes::Order { "xz"; "gz"; };
Non è necessario aggiungere esplicitamente
bz2
all'elenco, dato che verrà aggiunto automaticamente.
Notare che
Dir::Bin::NomeMetodo
viene controllata al momento dell'esecuzione. Se questa opzione è stata impostata e il supporto per il formato non è incluso direttamente in apt, il metodo verrà usato solo se questo file è esistente; ad esempio, per il metodo
bzip2
l'impostazione (interna) è:
-
Dir::Bin::bzip2 "/bin/bzip2";
Notare anche che le voci nell'elenco specificate nella riga di comando vengono aggiunte alla fine dell'elenco specificato nei file di configurazione, ma prima delle voci predefinite. In questo caso, per preferire un tipo rispetto a quelli specificati nei file di configurazione si può impostare l'opzione direttamente, non nello stile per elenco. Ciò non sovrascrive l'elenco definito; aggiunge solamente il tipo indicato all'inizio dell'elenco.
Il tipo speciale
uncompressed
può essere usato per dare la precedenza ai file non compressi, ma è bene notare che la maggior parte degli archivi non fornisce file non compressi, perciò questo è utilizzabile soprattutto per i mirror locali.
GzipIndexes
-
Quando si scaricano indici compressi con
gzip
(Packages, Sources o Translations), li mantiene localmente compressi con gzip invece di spacchettarli. Questo fa risparmiare parecchio spazio su disco a spese di un maggiore uso della CPU quando si creano le cache locali dei pacchetti. In modo predefinito è disabilitato.
Languages
-
La sottosezione Languages controlla quali file
Translation
sono scaricati e in quale ordine APT cerca di visualizzare le traduzioni delle descrizioni. APT cerca di visualizzare la prima descrizione disponibile nella lingua elencata per prima. Le lingue possono essere definite con i loro codici brevi o lunghi. Notare che non tutti gli archivi forniscono i file
Translation
per tutte le lingue; i codici di lingua lunghi sono particolarmente rari.
L'elenco predefinito include «environment» ed «en». «environment» ha un significato speciale in questo contesto: viene sostituito al momento dell'esecuzione dai codici di lingua estratti dalla variabile d'ambiente
LC_MESSAGES. Assicura anche che questi codici non vengano inclusi due volte nell'elenco. Se
LC_MESSAGES
è impostata a «C», viene usato solamente il file
Translation-en
(se disponibile). Per forzare APT a non usare alcun file Translation, usare l'impostazione
Acquire::Languages=none. "none" è un altro codice con significato speciale che interrompe la ricerca di un file
Translation
adatto. Questo dice ad APT di scaricare anche queste traduzioni, senza usarle realmente a meno che l'ambiente non specifichi le lingue. Perciò il seguente esempio di configurazione avrà come risultato l'ordine «en, it» in una localizzazione inglese o «it, en» in una italiana. Notare che «fr» viene scaricato, ma non usato, a meno che APT non venga usato in una localizzazione francese (dove l'ordine sarebbe «fr, it, en»).
-
Acquire::Languages { "environment"; "it"; "en"; "none"; "fr"; };
Notare che per prevenire problemi risultanti dall'uso di APT in ambienti differenti (ad esempio da parte di utenti o programmi diversi), tutti i file Translation che si trovano in
/var/lib/apt/lists/
vengono aggiunti alla fine dell'elenco (dopo un "none" implicito).
ForceIPv4
-
Durante gli scaricamenti, forza l'uso del solo protocollo IPv4.
ForceIPv6
-
Durante gli scaricamenti, forza l'uso del solo protocollo IPv6.
MaxReleaseFileSize
-
La dimensione massima per i file Release/Release.gpg/InRelease. Il valore predefinito è 10 MB.
EnableSrvRecords
-
Questa opzione controlla se apt usa il record del server DNS SRV come specificato nella RFC 2782 per selezionare un server alternativo a cui connettersi. In modo predefinito è impostata a vero («true»).
AllowInsecureRepositories
-
Permette alle operazioni di aggiornamento di caricare file dei dati da repository senza sufficienti informazioni di sicurezza. Il valore predefinito è «false». Il concetto, le implicazioni e le alternative sono spiegati in dettaglio in
apt-secure(8).
AllowWeakRepositories
-
Permette alle operazioni di aggiornamento di caricare file dei dati da repository che forniscono informazioni di sicurezza che sono però considerate non abbastanza robuste dal punto di vista crittografico. Il valore predefinito è «false». Il concetto, le implicazioni e le alternative sono spiegati in dettaglio in
apt-secure(8).
AllowDowngradeToInsecureRepositories
-
Permette che un repository che era in precedenza firmato con gpg diventi non firmato durante un'operazione di aggiornamento. Quando non c'è una firma valida per un repository precedentemente fidato, apt rifiuta l'aggiornamento. Questa opzione può essere usata per scavalcare questa protezione. Non dovrebbe mai venire abilitata. Il valore predefinito è «false. Il concetto, le implicazioni e le alternative sono spiegati in dettaglio in
apt-secure(8).
Changelogs::URI ambito
-
L'acquisizione di changelog è possibile solamente se è noto un URI da cui ottenerli. Il file Release indica questa informazione preferibilmente in un campo «Changelogs». Se questo non è disponibile, viene usato il campo Label/Origin del file Release per controllare se esiste un'opzione
Acquire::Changelogs::URI::Label::ETICHETTA
o
Acquire::Changelogs::URI::Origin::ORIGINE
e, se è così, viene preso questo valore. Il valore nel file Release può essere scavalcato con
Acquire::Changelogs::URI::Override::Label::ETICHETTA
or
Acquire::Changelogs::URI::Override::Origin::ORIGINE. Il valore deve essere un URI normale verso un file di testo, tranne per il fatto che dati specifici di pacchetto sono sostituito con il segnaposto
@CHANGEPATH@. Il valore per esso è: 1. se il pacchetto è da una componente (es.
main) è la prima parte, altrimenti viene omesso; 2. la prima lettera del nome del pacchetto sorgente, tranne per i pacchetti sorgente con nome che inizia con «lib», nel qual caso saranno le prime quattro lettere; 3. il nome completo del pacchetto sorgente; 4. il nome completo di nuovo e 5. la versione sorgente. La prima (se presente), la seconda, la terza e la quarta parte sono separate da una sbarra («/») e tra la quarta e la quinta parte c'è un trattino basso («_»). Per questa opzione è disponibile il valore speciale «no» che indica che questa fonte non può essere usata per acquisire file changelog. In questo caso viene provata un'altra fonte, se disponibile.
CONFIGURAZIONE SPECIFICA PER BINARI
Specialmente con l'introduzione del binario
apt
può essere utile impostare determinate opzioni solamente per uno specifico binario, dato che anche opzioni che sembrerebbero avere effetto solo su un determinato binario come
APT::Get::Show-Versions, hanno effetto su
apt-get
così come su
apt.
L'impostazione di un'opzione per un solo binario specifico può essere ottenuta solamente impostando l'opzione all'interno di un ambito
Binary::binario-specifico. Ad esempio impostare l'opzione
APT::Get::Show-Versions
solamente per
apt
può essere fatto impostando invece
Binary::apt::APT::Get::Show-Versions.
Notare che, come visto nella sezione DESCRIZIONE più in alto, non si possono impostare opzioni specifiche per un binario dalla riga di comando né nei file di configurazione caricati tramite la riga di comando
DIRECTORY
La sezione
Dir::State
contiene directory che sono relative a informazioni di stato locali.
lists
è la directory in cui mettere gli elenchi scaricati dei pacchetti e
status
è il nome del file di stato di
dpkg(1).
preferences
è il nome del file
preferences
di APT.
Dir::State
contiene la directory predefinita da anteporre a tutte le sottovoci che non iniziano con
/
o
./.
Dir::Cache
contiene le posizioni relative alle informazioni della cache locale, come le due cache dei pacchetti
srcpkgcache
e
pkgcache, così come la posizione in cui mettere gli archivi scaricati:
Dir::Cache::archives. La generazione delle cache può essere disattivata impostando
pkgcache
o
srcpkgcache
a
"". Questo rallenta l'avvio ma fa risparmiare spazio su disco. È probabilmente preferibile disattivare pkgcache piuttosto che srcpkgcache. Come per
Dir::State, la directory predefinita è contenuta in
Dir::Cache
Dir::Etc
contiene la posizione dei file di configurazione;
sourcelist
fornisce la posizione di sourcelist e
main
è il file di configurazione predefinito (l'impostazione non ha effetto, a meno che non venga fatta dal file di configurazione specificato da
APT_CONFIG).
L'impostazione
Dir::Parts
legge dalla directory specificata tutti i frammenti di configurazione in ordine lessicale. Al termine viene caricato il file di configurazione principale.
Dir::Bin
punta ai programmi binari;
Dir::Bin::Methods
specifica la posizione dei gestori dei metodi e
gzip,
bzip2,
lzma,
dpkg,
apt-get
dpkg-source
dpkg-buildpackage
e
apt-cache
specificano la posizione dei rispettivi programmi.
La voce di configurazione
RootDir
ha un significato speciale. Se impostata, tutti i percorsi saranno relativi a
RootDir,
anche i percorsi che sono specificati in modo assoluto. Perciò, ad esempio, se
RootDir
è impostata a
/tmp/staging
e
Dir::State::status
è impostata a
/var/lib/dpkg/status, allora il file di stato verrà cercato in
/tmp/staging/var/lib/dpkg/status. Se si desidera un prefisso solo per i percorsi relativi, impostare invece
Dir.
La lista
Ignore-Files-Silently
può essere usata per specificare quali file debbano essere ignorati in modo silenzioso da APT mentre analizza i file nelle directory con i frammenti. In modo predefinito un file il cui nome termina con
.disabled,
~,
.bak
o
.dpkg-[a-z]+
viene ignorato in modo silenzioso. Come si vede nell'ultimo valore predefinito questi modelli possono usare una sintassi con espressioni regolari.
APT IN DSELECT
Quando APT viene usato come metodo per
dselect(1)
svariate direttive di configurazione controllano il comportamento predefinito; queste sono nella sezione
DSelect.
Clean
-
Modalità di pulizia della cache; i valori permessi sono
always,
prompt,
auto,
pre-auto
e
never.
always
e
prompt
rimuovono tutti i pacchetti dalla cache dopo ogni aggiornamento;
prompt
(il valore predefinito) lo fa in modo condizionato.
auto
rimuove solo quei pacchetti che non sono più scaricabili (ad esempio perché sostituiti da una nuova versione).
pre-auto
effettua questa azione prima di scaricare i nuovi pacchetti.
options
-
Il contenuto di questa variabile è passato come opzioni per la riga di comando ad
apt-get(8), quando questo viene eseguito per la fase di installazione.
Updateoptions
-
Il contenuto di questa variabile è passato come opzioni per la riga di comando ad
apt-get(8), quando questo viene eseguito per la fase di aggiornamento.
PromptAfterUpdate
-
Se impostato a vero l'operazione [A]ggiorna di
dselect(1)
chiederà sempre conferma prima di continuare. Il comportamento predefinito è di chiedere solo in caso di errore.
COME APT INVOCA DPKG(1)
Diverse direttive di configurazione controllano il modo in cui APT invoca
dpkg(1); sono nella sezione
DPkg.
options
-
Questa è una lista di opzioni da passare a
dpkg(1). Le opzioni devono essere specificate usando la notazione per le liste e ogni voce nella lista viene passata a
dpkg(1)
come un singolo argomento.
Path
-
This is a string that defines the
PATH
environment variable used when running dpkg. It may be set to any valid value of that environment variable; or the empty string, in which case the variable is not changed.
Pre-Invoke, Post-Invoke
-
Questa è una lista di comandi di shell da eseguire prima/dopo l'invocazione di
dpkg(1). Come
options
deve essere specificata con la notazione per le liste. I comandi sono invocati in ordine usando
/bin/sh; se qualcuno dei comandi fallisce APT terminerà annullando.
Pre-Install-Pkgs
-
Questa è una lista di comandi di shell da eseguire prima di invocare
dpkg(1). Come
options
deve essere specificata con la notazione per le liste. I comandi sono invocati in ordine usando
/bin/sh; se qualcuno dei comandi fallisce APT terminerà annullando. APT passa i nomi di file di tutti i file .deb che sta per installare ai comandi, uno per riga sul descrittore di file richiesto, usando in modo predefinito lo standard input.
La versione 2 di questo protocollo invia più informazioni attraverso il descrittore di file richiesto: una riga con il testo
VERSION 2, lo spazio di configurazione di APT e un elenco di azioni di pacchetto con nome file e informazioni sulle versioni.
Ogni riga con una direttiva di configurazione ha la forma
chiave=valore. I caratteri speciali (segno di uguale, a capo, caratteri non stampabili, virgolette e segno di percentuale in
chiave
e a capo, caratteri non stampabili e segno di percentuale in
valore) sono codificati con %-valore. Le liste sono rappresentate da più righe
chiave::=valore
con la stessa chiave. La sezione di configurazione termina con una riga vuota.
Le righe delle azioni di pacchetto sono costituite nella Versione 2 da cinque campi: nome di pacchetto (senza qualifica dell'architettura anche se foreign), vecchia versione, direzione del cambiamento di versione (< per gli aggiornamenti, > per le retrocessioni a versioni precedenti, = per nessun cambiamento), nuova versione, azione. I campi di versione sono «-» per nessuna versione (per esempio quando si installa un pacchetto per la prima volta; la mancanza di versione viene trattata come precedente a qualsiasi versione, perciò è un aggiornamento indicato come
- < 1.23.4). Il campo dell'azione è «**CONFIGURE**» se il pacchetto viene configurato, «**REMOVE**» se viene rimosso o il nome di un file .deb se viene spacchettato.
Nella Versione 3 ogni campo di versione viene seguito dall'architettura di questa versione, che è «-» se non c'è versione, e da un campo che mostra il tipo MultiArch «same», «foreign», «allowed» o «none». Notare che «none» è un nome di tipo non corretto che viene mantenuto per questioni di compatibilità e dovrebbe essere letto come «no» e gli utenti sono incoraggiati a supportarli entrambi.
La versione del protocollo da usare per il comando
cmd
può essere scelta impostando in modo appropriato
DPkg::Tools::options::cmd::Version, il cui valore predefinito è la versione 1. Se APT non supporta la versione richiesta invierà invece l'informazione nella versione più alta per cui ha il supporto.
Il descrittore di file da usare per inviare le informazioni può essere richiesto con
DPkg::Tools::options::cmd::InfoFD
che è in modo predefinito
0
per lo standard input ed è disponibile a partire dalla versione 0.9.11. Il supporto per l'opzione può essere controllato guardando la variabile d'ambiente
APT_HOOK_INFO_FD
che contiene il numero del descrittore di file usato per conferma.
Run-Directory
-
APT cambia la directory attuale in questa prima di invocare
dpkg(1); il valore predefinito è
/.
Build-options
-
Queste opzioni sono passate a
dpkg-buildpackage(1)
quando vengono compilati i pacchetti; il valore predefinito disabilita la firma e produce tutti i binari.
DPkg::ConfigurePending
-
Se questa opzione è impostata, APT invoca
dpkg --configure --pending
per lasciare che
dpkg(1)
gestisca tutte le configurazioni e i trigger necessari. Questa opzione è attivata in modo predefinito, ma potrebbe essere utile disattivarla se si desidera eseguire APT più volte di seguito, ad esempio in un installatore. In uno scenario simile si può disattivare questa opzione in tutte le esecuzioni tranne l'ultima.
OPZIONI PERIODIC E ARCHIVES
I gruppi di opzioni
APT::Periodic
e
APT::Archives
configurano il comportamento degli aggiornamenti periodici di apt, ciò viene fatto attraverso lo script
/etc/cron.daily/apt. Per una breve documentazione di queste opzioni, vedere all'inizio dello script.
OPZIONI DI DEBUG
Se si abilitano le opzioni nella sezione
Debug::
verranno inviate delle informazioni di debug nel flusso dello standard error del programma usando le librerie
apt, o verranno abilitate speciali modalità del programma che sono principalmente utili per far il debug del comportamento di
apt. La maggior parte di queste opzioni non è interessante per l'utente normale, ma alcune potrebbero esserlo:
-
•
Debug::pkgProblemResolver
abilita l'output relativo alle decisioni prese da
dist-upgrade, upgrade, install, remove, purge.
-
•
Debug::NoLocking
disabilita tutti i lock sui file. Può essere usato per eseguire alcune operazioni (ad esempio
apt-get -s install) come utente non root.
-
•
Debug::pkgDPkgPM
stampa l'effettiva riga di comando ogni volta che
apt
invoca
dpkg(1).
-
•
Debug::IdentCdrom
disabilita l'inclusione di dati statfs negli ID dei CD-ROM.
Segue un elenco completo delle opzioni di debug per apt.
Debug::Acquire::cdrom
-
Stampa informazioni relative all'accesso a fonti
cdrom://.
Debug::Acquire::ftp
-
Stampa informazioni relative allo scaricamento dei pacchetti usando FTP.
Debug::Acquire::http
-
Stampa informazioni relative allo scaricamento dei pacchetti usando HTTP.
Debug::Acquire::https
-
Stampa informazioni relative allo scaricamento dei pacchetti usando HTTPS.
Debug::Acquire::gpgv
-
Stampa informazioni relative alla verifica delle firme di cifratura fatta usando
gpg.
Debug::aptcdrom
-
Produce in output informazioni sul processo di accesso a raccolte di pacchetti memorizzati su CD-ROM.
Debug::BuildDeps
-
Descrive il processo di risoluzione delle dipendenze di compilazione in
apt-get(8).
Debug::Hashes
-
Produce in output ogni hash crittografico che viene generato dalle librerie
apt.
Debug::IdentCDROM
-
Quando viene generato l'ID per un CD-ROM, non include informazioni da
statfs, cioè il numero di blocchi usati e liberi sul file system del CD-ROM.
Debug::NoLocking
-
Disabilita tutti i lock sui file. Per esempio permette di eseguire due istanze di
«apt-get update»
contemporaneamente.
Debug::pkgAcquire
-
Registra nel log quando vengono aggiunte o rimosse voci dalla coda globale degli scaricamenti.
Debug::pkgAcquire::Auth
-
Produce in output messaggi di stato ed errori relativi alla verifica dei codici di controllo e delle firme di cifratura dei file scaricati.
Debug::pkgAcquire::Diffs
-
Produce in output informazioni sullo scaricamento e l'applicazione dei diff per gli elenchi degli indici dei pacchetti, e gli errori relativi a tali diff.
Debug::pkgAcquire::RRed
-
Produce in output informazioni relative all'applicazione di patch agli elenchi dei pacchetti di apt quando vengono scaricati i diff per gli indici invece degli indici completi.
Debug::pkgAcquire::Worker
-
Registra nel log tutte le interazioni con i sottoprocessi che effettuano realmente gli scaricamenti.
Debug::pkgAutoRemove
-
Registra nel log gli eventi relativi allo stato di automaticamente installato dei pacchetti e alla rimozione dei pacchetti non utilizzati.
Debug::pkgDepCache::AutoInstall
-
Genera messaggi di debug che descrivono quali pacchetti vengono automaticamente installati per risolvere delle dipendenze. Corrisponde al passo iniziale di installazione automatica effettuato, ad esempio, in
apt-get install
e non all'intero risolutore di dipendenze di
apt; per quello vedere
Debug::pkgProblemResolver.
Debug::pkgDepCache::Marker
-
Genera messaggi di debug che descrivono quali pacchetto vengono contrassegnati per essere mantenuti/installati/rimossi mentre il ProblemResolver fa il suo lavoro. Ogni aggiunta o rimozione può causare azioni aggiuntive che vengono mostrate con un rientro di due spazi in più sotto alla voce originale. Il formato per ogni riga è
MarkKeep,
MarkDelete
o
MarkInstall
seguito da
nome-pacchetto <a.b.c -> d.e.f | x.y.z> (sezione)
dove
a.b.c
è l'attuale versione del pacchetto,
d.e.f
è la versione presa in considerazione per l'installazione e
x.y.z
è una versione più recente, ma non considerata per l'installazione (a causa di un punteggio di pin più basso). Gli ultimi due possono essere omessi se non esistono o se sono uguali alla versione installata.
sezione
è il nome della sezione in cui compare il pacchetto.
Debug::pkgDPkgPM
-
Quando invoca
dpkg(1), produce in output l'esatta riga di comando usata, con gli argomenti separati da un singolo carattere di spazio.
Debug::pkgDPkgProgressReporting
-
Produce in output tutti i dati ricevuti da
dpkg(1)
sul descrittore del file di stato ed ogni errore incontrato durante la sua analisi.
Debug::pkgOrderList
-
Genera un trace dell'algoritmo che decide l'ordine in cui
apt
deve passare i pacchetti a
dpkg(1).
Debug::pkgPackageManager
-
Produce in output messaggi di stato che indicano i passi effettuati nell'invocazione di
dpkg(1).
Debug::pkgPolicy
-
Produce in output la priorità di ogni elenco di pacchetti all'avvio.
Debug::pkgProblemResolver
-
Traccia l'esecuzione del risolutore di dipendenze (questo ha effetto solo per ciò che accade quando viene incontrato un problema complesso di dipendenze).
Debug::pkgProblemResolver::ShowScores
-
Visualizza un elenco di tutti i pacchetti installati con il loro punteggio calcolato che è usato dal pkgProblemResolver. La descrizione dei pacchetti è la stessa descritta in
Debug::pkgDepCache::Marker
Debug::sourceList
-
Stampa informazioni sui fornitori lette da
/etc/apt/vendors.list.
Debug::RunScripts
-
Visualizza i comandi esterni che sono richiamati dagli hook di apt. Ciò include ad esempio le opzioni di configurazione
DPkg::{Pre,Post}-Invoke
o
APT::Update::{Pre,Post}-Invoke.
ESEMPI
/usr/share/doc/apt/examples/configure-index.gz
è un file di configurazione che mostra valori d'esempio per tutte le opzioni possibili.
FILE
/etc/apt/apt.conf
-
File di configurazione di APT. Voce di configurazione:
Dir::Etc::Main.
/etc/apt/apt.conf.d/
-
Frammenti di file di configurazione di APT. Voce di configurazione:
Dir::Etc::Parts.
VEDERE ANCHE
apt-cache(8),
apt-config(8),
apt_preferences(5).
BUG
m[blue]Pagina dei bug di APTm[][1]. Se si desidera segnalare un bug in APT, vedere
/usr/share/doc/debian/bug-reporting.txt
o il comando
reportbug(1).
TRADUZIONE
Traduzione in italiano a cura del Team italiano di localizzazione di Debian
<debian-l10n-italian@lists.debian.org>. In particolare hanno contribuito Eugenia Franzoni (2000), Hugh Hartmann (2000-2012), Gabriele Stilli (2012), Beatrice Torracca (2012, 2014, 2015).
Notare che questa versione tradotta del documento può contenere parti non tradotte. Ciò è voluto, per evitare di perdere contenuti quando la traduzione non è aggiornata rispetto all'originale.
AUTORI
Jason Gunthorpe
-
Team APT
-
Daniel Burrows <dburrows@debian.org>
-
Documentazione iniziale di Debug::*.
NOTE
- 1.
-
Pagina dei bug di APT
-
http://bugs.debian.org/src:apt