3 581
contributi
m (→Il pinning) |
m (aggiunti link) |
||
Riga 2: | Riga 2: | ||
__TOC__ | __TOC__ | ||
==Introduzione== | ==Introduzione== | ||
A volte ci si può trovare nella necessità di dover installare – o meglio, reinstallare – diversi pacchetti con versione minore rispetto a quelli installati. Questa operazione, l’ inverso dell’ upgrade, viene chiamata con un grosso sforzo di fantasia | A volte ci si può trovare nella necessità di dover installare – o meglio, reinstallare – diversi [[pacchetto|pacchetti]] con versione minore rispetto a quelli installati. Questa operazione, l’ inverso dell’ upgrade, viene chiamata con un grosso sforzo di fantasia [[downgrade]]. Debian e il suo sistema di gestione dei pacchetti software ci permette di gestire senza grandi sofferenze anche questa situazione particolare. | ||
Nei casi più semplici può essere sufficiente utilizzare lo strumento grafico Synaptic: si seleziona il pacchetto e quindi si seleziona la voce apposita 'Forza Versione' dal menu 'Pacchetto'. Cosa fare però quando abbiamo la necessità di dover ripristinare versioni precedenti di librerie e programmi nevralgici per il nostro sistema operativo (definiti dall' APT System come 'essentials')? In questi casi non ci resta che dotarci di alcuni semplicissimi strumenti e una buona dose di concentrazione e sangue freddo. | Nei casi più semplici può essere sufficiente utilizzare lo strumento grafico Synaptic: si seleziona il pacchetto e quindi si seleziona la voce apposita 'Forza Versione' dal menu 'Pacchetto'. Cosa fare però quando abbiamo la necessità di dover ripristinare versioni precedenti di librerie e programmi nevralgici per il nostro sistema operativo (definiti dall' APT System come 'essentials')? In questi casi non ci resta che dotarci di alcuni semplicissimi strumenti e una buona dose di concentrazione e sangue freddo. | ||
Riga 14: | Riga 14: | ||
Pin: release a=stable | Pin: release a=stable | ||
Pin-Priority: 1001</pre> | Pin-Priority: 1001</pre> | ||
Questa impostazione ci garantisce che gli unici pacchetti che avranno la precedenza su tutti gli altri sono quelli provenienti dal ramo impostato alla voce '''Pin: release'''. Assicuriamoci di inserire qui l'archivio di Debian da cui vogliamo riportare i pacchetti, che in questo caso è ''stable'', ma che potrebbe essere ''testing'' o ''unstable''. Si noti che se si specifica il codename va utilizzato '''n='''''CODENAME'' (per esempio Wheezy, Jessie o Sid) invece di '''a='''''stable/testing/unstable'' (si veda <code>man apt_preferences</code>). | Questa impostazione ci garantisce che gli unici pacchetti che avranno la precedenza su tutti gli altri sono quelli provenienti dal ramo impostato alla voce '''Pin: release'''. Assicuriamoci di inserire qui l'archivio ([[suite]]) di Debian da cui vogliamo riportare i pacchetti, che in questo caso è ''stable'', ma che potrebbe essere ''testing'' o ''unstable''. Si noti che se si specifica il [[codename]] va utilizzato '''n='''''CODENAME'' (per esempio Wheezy, Jessie o Sid) invece di '''a='''''stable/testing/unstable'' (si veda <code>man apt_preferences</code>). | ||
Invece nel file <code>apt.conf</code>, oppure creando un file in <code>/etc/apt/apt.conf.d</code>, provvediamo a far corrispondere la versione di default con quella da noi specificata nel file <code>preferences</code>. La variabile da editare è '''APT::Default-Release''', inserendo | Invece nel file <code>apt.conf</code>, oppure creando un file in <code>/etc/apt/apt.conf.d</code>, provvediamo a far corrispondere la versione di default con quella da noi specificata nel file <code>preferences</code>. La variabile da editare è '''APT::Default-Release''', inserendo la [[release]], ossia a scelta la suite oppure il codename. | ||
<pre>APT::Default-Release " | <pre>APT::Default-Release "release"; | ||
APT::Cache-Limit 15000000; | APT::Cache-Limit 15000000; | ||
Apt::Get::Purge; | Apt::Get::Purge; | ||
Riga 26: | Riga 26: | ||
===Le sorgenti software=== | ===Le sorgenti software=== | ||
Una volta configurato opportunamente il pinning dobbiamo editare le sorgenti software del nostro sistema in modo che puntino tutte alla versione di Debian a cui vogliamo fare il downgrade. Se ad esempio vogliamo riportare i nostri pacchetti a '''stable''', elimineremo tutte le sorgenti relative a testing, unstable, ecc... e utilizzeremo solo | Una volta configurato opportunamente il pinning dobbiamo editare le sorgenti software del nostro sistema in modo che puntino tutte alla versione di Debian a cui vogliamo fare il [[downgrade]]. Se ad esempio vogliamo riportare i nostri pacchetti a '''stable''', elimineremo tutte le sorgenti relative a testing, unstable, ecc... e utilizzeremo solo | ||
<pre>deb http://ftp.it.debian.org/debian/ stable main non-free contrib</pre> | <pre>deb http://ftp.it.debian.org/debian/ stable main non-free contrib</pre> | ||
e così via. Fatto questo, aggiorniamo il database dei pacchetti col il classico | e così via. Fatto questo, aggiorniamo il database dei pacchetti col il classico | ||
Riga 32: | Riga 32: | ||
===Programmi utilizzati=== | ===Programmi utilizzati=== | ||
È fondamentale comprendere che la rimozione di programmi essenziali senza le dovute cautele e accorgimenti porta inevitabilmente ad una serie di anomalie di grave entità (non funzionamento dell’ interfaccia, della rete ecc…), a ritrovarsi ad avere un sistema operativo inusabile o addirittura nemmeno in grado di bootstrapare. Mentre stiamo facendo il downgrade concentriamoci esclusivamente su questo compito, non utilizziamo programmi non indispensabili, leggiamo sempre 4 volte l’ output a video e nel dubbio evitiamo di rimuovere qualsiasi cosa. | È fondamentale comprendere che la rimozione di programmi essenziali senza le dovute cautele e accorgimenti porta inevitabilmente ad una serie di anomalie di grave entità (non funzionamento dell’ interfaccia, della rete ecc…), a ritrovarsi ad avere un sistema operativo inusabile o addirittura nemmeno in grado di bootstrapare. Mentre stiamo facendo il [[downgrade]] concentriamoci esclusivamente su questo compito, non utilizziamo programmi non indispensabili, leggiamo sempre 4 volte l’ output a video e nel dubbio evitiamo di rimuovere qualsiasi cosa. | ||
Assicuriamoci di avere a portata di mano alcuni programmi fondamentali: | Assicuriamoci di avere a portata di mano alcuni programmi fondamentali: | ||
Riga 39: | Riga 39: | ||
==Il downgrade== | ==Il downgrade== | ||
In un terminale individuiamo i pacchetti di cui vogliamo effettuare il downgrade. Nell’ esempio io utilizzo un unico pacchetto, ma la lista è molto più lunga. | In un terminale individuiamo i pacchetti di cui vogliamo effettuare il [[downgrade]]. Nell’ esempio io utilizzo un unico [[pacchetto]], ma la lista è molto più lunga. | ||
<pre>$ apt-show-versions |grep newer | <pre>$ apt-show-versions |grep newer | ||
[...] | [...] |
contributi