Il repository Backports

Da Guide@Debianizzati.Org.
Jump to navigation Jump to search
I repository
Arrow left.png

Introduzione ai repository

Repository ufficiali di Debian

Repository esterni

Extra

Arrow right.png



Debian-swirl.png Versioni Compatibili
Tutte le versioni supportate di Debian

Introduzione

Info.png Nota
  • In questa guida si danno per scontate le nozioni di base riguardo il funzionamento di Debian, e dei repository in particolare.
  • Backports possiede tutte e tre le sezioni ufficiali, cioè main, contrib e non-free, tuttavia nei seguenti esempi si indicherà solo main.


Chi utilizza la suite stable di Debian anche per uso personale, si scontra spesso con un problema: il software può essere datato rispetto alle altre release. Il repository backports sopperisce alla necessità di software più aggiornato, mettendo a disposizione pacchetti ricompilati dal ramo testing, senza che questi richiedano nuove librerie per funzionare. E da settembre 2010 il repository è diventato a tutti gli effetti un repository ufficiale di Debian.
Di seguito i campi più importanti estratti dal file Release del repository per Debian 10 (Buster):

Origin: Debian Backports
Label: Debian Backports
Suite: buster-backports
Codename: buster-backports
Changelogs: http://metadata.ftp-master.debian.org/changelogs/@CHANGEPATH@_changelog
Date: (data ultimo aggiornamento)
Valid-Until: (circa una settimana dopo l'ultimo aggiornamento)
NotAutomatic: yes
ButAutomaticUpgrades: yes
Architectures: (tutte le architetture supportate, per esempio amd64 e i386)
Components: main contrib non-free
Description: Backports for the Buster Distribution

Una prima differenza dagli altri repository è che non c'è un riferimento a stable nella suite (per esempio: stable-backports), ma la suite corrisponde al codename (buster-backports).

In secondo luogo il comportamento di default è determinato dalle due righe NotAutomatic: yes e ButAutomaticUpgrades: yes, che assegnano una priorità di pinning (pari a 100, anziché 500) in modo da garantire l'aggiornamento automatico di pacchetti già installati dai backports e al tempo stesso impedire l'installazione automatica di nuovi pacchetti.

L'uso del pinning pertanto non è più necessario per i backports in una configurazione standard, e consigliata, di /etc/apt/sources.list (ed eventuali altri file con estensione .list in /etc/apt/sources.list.d) con un'unica release di Debian. Ossia nel caso di Debian 10 (Buster), se sono presenti soltanto:

  • il repository principale (buster o stable) e relativo repository di sicurezza (buster/updates o stable/updates);
  • eventuali aggiornamenti raccomandati (buster-updates o stable-updates);
  • backports ufficiali (buster-backports).

Si noti inoltre che Debian "Bullseye", l'attuale testing, non dispone di repository backports in quanto i pacchetti provengono sempre e di continuo da Debian Sid. Saranno aggiunti solo quando diverrà la nuova stable.

Debian 10 (Buster) Backports (da testing)

Attention.png Avvertimento
Si ricorda che i backports non sono sottoposti agli stessi controlli dei repository principali di una Debian stable, per cui per un sistema di produzione il loro uso è sconsigliato. Inoltre si raccomanda di installare soltanto il software strettamente necessario, senza prelevare da essi ogni singolo pacchetto presente.


La lista dei pacchetti disponibili in buster-backports è consultabile su backports.debian.org.

Configurazione

Con privilegi di amministrazione utilizzate il comando apt:

# apt edit-sources

per modificare il file /etc/apt/sources.list con un primitivo controllo di sintassi, aggiungendo le seguenti righe:

# Backports per Debian 10 (Buster) - da testing
deb http://deb.debian.org/debian/ buster-backports main
deb-src http://deb.debian.org/debian/ buster-backports main

(utilizzando l'editor nano, il più semplice se non si è pratici, per salvare è sufficiente premere Ctrl-o e per uscire Ctrl-x)

Ora aggiornate la vostra lista di pacchetti, rendendo effettive le modifiche:

# apt update

Per Debian 9 (Stretch)

Stretch Backports (da stable)

Se si sta utilizzando Stretch attualmente la oldstable, è ancora possibile avvalersi dei backports. Si noti che in questo caso i pacchetti avranno la stessa versione di quelli che provengono da Buster, ossia dalla stable anziché dalla testing.

La lista dei pacchetti disponibili in stretch-backports è consultabile su backports.debian.org.

Configurazione

Con apt edit-sources aggiungete le righe:

# Backports per Debian 9 (Stretch) - da stable
deb http://deb.debian.org/debian/ stretch-backports main
deb-src http://deb.debian.org/debian/ stretch-backports main

Ora aggiornate la vostra lista di pacchetti, rendendo effettive le modifiche:

# apt update

Stretch Backports Sloppy (da testing)

Se si vogliono installare anche per Stretch pacchetti con la stessa versione di quelli presenti in Bullseye, l'attuale testing, si devono aggiungere i repository stretch-backports-sloppy.

I repository backports-sloppy vengono creati per la oldstable al momento del rilascio della nuova stable di Debian.

La lista dei pacchetti disponibili in stretch-backports-sloppy è consultabile su backports.debian.org, e la selezione è solitamente più limitata, a causa delle maggiori difficoltà a effettuare un porting dei pacchetti per essere utilizzati con le librerie presenti nella Debian di due versioni precedenti e della minore richiesta.

Configurazione

Con apt edit-sources aggiungete le righe:

# Backports Sloppy per Debian 9 (Stretch) - da testing
deb http://deb.debian.org/debian/ stretch-backports-sloppy main
deb-src http://deb.debian.org/debian/ stretch-backports-sloppy main

Ora aggiornate la vostra lista di pacchetti, rendendo effettive le modifiche:

# apt update

Utilizzo

Il repository backports ufficiale è disabilitato di default. Ciò significa che i pacchetti provenienti dai backports non vengono installati automaticamente, salvo siano presenti soltanto in quel repository. Si noti che ciò non vale necessariamente per eventuali backports non ufficiali, e si deve far riferimento al loro file Release.

Per installare qualche programma dai backports bisogna perciò specificare ad apt/apt-get la sorgente di installazione, per cui per esempio nel caso di Buster il comando di installazione sarà:

# apt -t buster-backports install package_name

E per installare il kernel presente nei backports:

# apt -t buster-backports install linux-image-[TAB]

dove la pressione del tasto [TAB] permette di visualizzare la lista dei kernel disponibili nel caso sia stato attivato l'autocompletamento.
Prestare attenzione al fatto che potrebbe essere necessario prelevare con lo stesso metodo anche gli headers del kernel.

Si tenga presente che il repository è disabilitato con il preciso scopo di impedirne l'uso indiscriminato su una Debian stable, se si volesse usarlo per un sistema di produzione. Infatti il software presente, anche se pacchettizzato e spesso ricompilato per essere distribuito assieme ai pacchetti presenti su una Debian stable, proviene dalla suite testing e ne condivide sia i punti di forza, ovvero il software più aggiornato, che le debolezze, come minori controlli di sicurezza e minore stabilità.

Aggiornamento

Non è più necessaria alcuna regola di pinning per il loro aggiornamento automatico. Una volta installati manualmente, i pacchetti saranno tenuti aggiornati dai backports, come tutti gli altri pacchetti, per esempio con:

# apt update
# apt upgrade

Se l'aggiornamento non riuscisse, per via di un conflitto causato dalle nuove dipendenze, allora sarebbe necessario ripetere il comando usato per l'installazione del pacchetto, in modo da installare anche le nuove dipendenze dai backports.

Info.png Pinning
Il pinning è richiesto solo in caso di presenza di più versioni di Debian: se si hanno repository di stable e testing/Sid, il pinning è necessario per impedire che i pacchetti della stable e dei backports vengano aggiornati automaticamente a testing/Sid. Tenendo presente che l'uso di più release è sconsigliato, per maggiori informazioni è possibile consultare la guida Repository & pinning.




Guida scritta da: Ferdybassi 16:21, 31 dic 2009 (CET)

Swirl-auth100.png Guida Debianized

Estesa da:
HAL 9000
Verificata da:
S3v 18:43, 9 ott 2012 (CEST)
Wtf 12:28, 19 mag 2013 (CEST)
Spoon 19:22, 14 dic 2015 (CET)
HAL 9000 16:24, 3 ago 2019 (CEST)

Verificare ed estendere la guida | Cos'è una guida Debianized