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.
Syntactically the configuration language is modeled after what the
ISC tools such as bind and dhcp use. Lines starting with // are treated as
comments (ignored), as well as all text between /* and */, just like C/C++
comments. Lines starting with # are also treated as comments. Each line is
of the form APT::Get::Assume-Yes "true";. The quotation marks and
trailing semicolon are required. The value must be on one line, and there is
no kind of string concatenation. Values must not include backslashes or
extra quotation marks. Option names are made up of alphanumeric characters
and the characters "/-:._+". A new scope can be opened with curly
braces, like this:
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 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.
Color
This scope defines colors and styles. The basic colors
supported are
red,
green,
yellow,
blue,
magenta,
cyan, and
white.
The subscope action defines the colors for package lists in
install and similar commands. The following options may be set:
APT::Color::Action::Upgrade, APT::Color::Action::Install,
APT::Color::Action::Install-Dependencies,
APT::Color::Action::Downgrade, APT::Color::Action::Remove;
corresponding to their lists in the apt(8) output.
Each color may reference one or more other color options by name,
relative to APT::Color. Their escape sequences will be combined.
APT::Color::Bold "\x1B[1m";
APT::Color::Action::Install "cyan";
APT::Color::Action::Upgrade "bold action::install";
Colors may be turned on or off completely by setting
APT::Color to
yes or
no, by utilizing
NO_COLOR or
APT_NO_COLOR
environment variables, or using the
--color,
--no-color
command-line options.
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»,
«bookworm», «trixie», «4.0»,
«5.0*». Vedere anche
apt_preferences(5).
Snapshot
Snapshot to use for all repositories configured with
Snapshot: yes. See also
sources.list(5), the
--snapshot option
that sets this value, and
Acquire::Snapshots::URI below.
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.
NeverAutoRemove
Never autoremove packages that match the regular
expression(s).
Protect-Kernels
This option tells apt autoremove that kernels are
protected and defaults to true. In case kernels are not protected they are
treated as any other package.
VersionedKernelPackages
Define the regular expression(s) for versioned kernel
packages. Based on these expressions a rule set is injected into apt similar
to APT::NeverAutoRemove regular expressions.
NeverAutoRemove::KernelCount
Keep a custom amount of kernels when autoremoving and
defaults to 2, meaning two kernels are kept. Apt will always keep the running
kernel and the latest one. If the latest kernel is the same as the running
kernel, the second latest kernel is kept. Because of this, any value lower
than 2 will be ignored. If you want only the latest kernel, you should set
APT::Protect-Kernels to false.
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
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 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
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.
Snapshots::URI ambito
Like changelogs, snapshots can only be acquired if an URI
is known from where to get them. Preferable the Release file indicates this in
a 'Snapshots' field. If this isn't available the Label/Origin field of the
Release file is used to check if a
Acquire::Snapshots::URI::Label::LABEL or
Acquire::Snapshots::URI::Origin::ORIGIN option exists and if so this
value is taken. The value in the Release file can be overridden with
Acquire::Snapshots::URI::Override::Label::LABEL or
Acquire::Snapshots::URI::Override::Origin::ORIGIN. The value should be
a normal URI to a directory, except that the snapshot ID replaced with the
placeholder @SNAPSHOTID@. The special value 'no' is available for this option
indicating that this source cannot be used to acquire snapshots from. Another
source will be tried if available in this case.
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::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 è 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.
BUG¶
Pagina dei bug di APT[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