Repository & pinning: differenze tra le versioni

Riga 131: Riga 131:


{{Box|File multipli|È possibile creare più file di nome arbitrario in ''/etc/apt/apt.preferences.d/'' invece di creare un unico file di nome ''preferences'',  (si veda il manuale).}}
{{Box|File multipli|È possibile creare più file di nome arbitrario in ''/etc/apt/apt.preferences.d/'' invece di creare un unico file di nome ''preferences'',  (si veda il manuale).}}
== Blocco/retrocessione di pacchetti ==
Il file <code>preferences</code> come già accennato può essere usato per bloccare e/o retrocedere (downgrade) uno o più pacchetti (al limite tutti); in entrambi i casi è necessario definire un pin maggiore di 1000 per il pacchetto desiderato. Se per esempio nel file <code>preferences</code> fosse presente un record come il seguente:
<pre>
Package: nome_pacchetto
Pin: version 1.0.1
Pin-Priority: 1001
</pre>
Si avrebbero i seguenti due casi:
# Se nel sistema non esiste una versione del suddetto pacchetto oppure se già installato la sua versione è più vecchia di 1.0.1, allora il pacchetto viene aggiornato normalmente, ma una volta terminata l'installazione questo pacchetto non verrà mai più aggiornato.
# Se il pacchetto è già stato installato e la sua versione è più recente di 1.0.1 allora il pacchetto presente nel sistema viene disinstallato e sostituito con quello avente versione 1.0.1. Terminata l'installazioen il pacchetto non verrà mai più aggiornato.
Per permettere nuovamente l'aggiornamento del pacchetto è necessario o ridurre il pin sotto 1000 o eliminare del tutto il record.
=== Retrocedere l'intero sistema ===
Nella maggior parte dei casi (o forse sempre) questa '''È UNA FOLLIA''', tuttavia per motivazioni puramente didattiche si mostra come fare. In primis è necessario eliminare, se presente, dal file <code>apt.conf</code> il parametro ''default-release'', dopo di che aggiungere al file <code>preferences</code> un record come il seguente (sostituire a "stable" la versione desiderata, ad esempio "testing" se si vuole retrocedere da "unstable").
<pre>
Package: *
Pin: release a=stable
Pin-Priority: 1001
</pre>
A questo punto dovrebbe essere sufficiente digitare da terminale:
<pre># apt-get dist-upgrade</pre>
oppure
<pre># aptitude full-upgrade</pre>


= Esempi =
= Esempi =
2 894

contributi