Repository & pinning: differenze tra le versioni

→‎/etc/apt/apt.conf: ripristino parte cancellata, un po' estesa per chiarezza
m (→‎Esempi: rimossa parte inutile (ora apt.conf ha solo APT::Default-Release))
(→‎/etc/apt/apt.conf: ripristino parte cancellata, un po' estesa per chiarezza)
Riga 91: Riga 91:


Si noti inoltre che:
Si noti inoltre che:
* Le dichiarazioni di parametri da riga di comando hanno sempre la precedenza su quelli definiti in un file di configurazione, quindi usare un comando del tipo <code>apt-get install pacchetto -t release_taldeitali</code> sorpassa qualunque release obiettivo (<code>Default-Release</code>) dichiarata nel file <code>apt.conf</code>. Perciò avere un pinning a 990 in preferences non è necessariamente equivalente a impostare una <code>Default-Release</code>.
* Comandi del tipo <code>apt-get install pacchetto/release_taldeitali</code> non cambiano la ''target release'', ma si limitano a dire di prelevare lo specifico pacchetto dalla release indicata invece che da quella predefinita. Questo implica che le dipendenze continueranno ad essere risolte in base alla release obiettivo eventualmente specificata in <code>apt.conf</code> e/o in base al file <code>preferences</code> e/o in accordo all'algoritmo predefinito.
* Comandi del tipo <code>apt-get install pacchetto/release_taldeitali</code> non cambiano la ''target release'', ma si limitano a dire di prelevare lo specifico pacchetto dalla release indicata invece che da quella predefinita. Questo implica che le dipendenze continueranno ad essere risolte in base alla release obiettivo eventualmente specificata in <code>apt.conf</code> e/o in base al file <code>preferences</code> e/o in accordo all'algoritmo predefinito.
* Definire una release obiettivo in <code>apt.conf</code> è equivalente a dichiarare in <code>preferences</code> (si veda la prossima sezione) quanto segue:
* Le dichiarazioni di parametri da riga di comando hanno sempre la precedenza su quelli definiti in un file di configurazione, che di conseguenza verranno ignorati, quindi usare un comando del tipo <code>apt-get install pacchetto -t release_taldeitali</code> disabilita durante l'esecuzione qualunque release obiettivo (<code>Default-Release</code>) dichiarata nel file <code>apt.conf</code>. Perciò avere un pinning a 990 in preferences non è necessariamente equivalente a impostare una <code>Default-Release</code>.
* Definire una release obiettivo in <code>apt.conf</code> è quasi equivalente a dichiarare in <code>preferences</code> (si veda la prossima sezione) quanto segue:
<pre>Package: *
Pin: release a=release_voluta
Pin-Priority: 990
</pre>
:senonché, qualora si sia definita una <code>Default-Release</code> in <code>apt.conf</code>, qualsiasi dichiarazione in <code>preferences</code> riguardante tutti i pacchetti (<code>Package: *</code>) di quella stessa release sarà ignorata. Per esempio sarebbe del tutto inutile definire:
<pre>
<pre>
Package: *
Package: *
Pin: release a=release_voluta
Pin: release a=release_in_default_release
Pin-Priority: 990
Pin-Priority: 1000
</pre>
</pre>
* Ricapitolando <code>-t release_voluta</code> ignora e ha gli stessi effetti di una <code>Default-Release</code>, che a sua volta ignora ogni generica (<code>Package: *</code>) impostazione di pinning relativa alla stessa release.


{{Box|File multipli|L'utente può, invece di creare un unico file di nome ''apt.conf'', creare più file di nome arbitrario in ''/etc/apt/apt.conf.d/'' (si veda il manuale)}}
{{Box|File multipli|L'utente può, invece di creare un unico file di nome ''apt.conf'', creare più file di nome arbitrario in ''/etc/apt/apt.conf.d/'' (si veda il manuale)}}
3 581

contributi