Come Abilitare i Repository Backports e Testing in Debian
Mentre Debian dà priorità alla stabilità con i suoi pacchetti ben testati, questo a volte significa che gli utenti perdono le ultime funzionalità. È qui che entrano in gioco i Backports e i repository di Testing.
I backport e i repository di testing sono due meccanismi che Debian utilizza per fornire agli utenti l'accesso a versioni più recenti del software rispetto a quelle incluse nella release stabile.
I backports offrono pacchetti selettivamente riportati indietro dalla prossima versione di Debian, fornendo un equilibrio tra stabilità e nuove funzionalità. Testing fornisce accesso a una gamma più ampia di pacchetti più recenti ma con un potenziale maggiore di instabilità.
Questo tutorial dettagliato ti guiderà attraverso i passaggi per abilitare i repository Backports e Testing sui tuoi sistemi Debian 12 e 11. Questa guida copre anche i passaggi per rimuovere i repository backports e testing quando non sono più necessari.
Prima di entrare nell'argomento, permettetemi di fornire una breve introduzione ai backport e ai repository di testing, spiegare perché e quando dovreste abilitarli e discutere le implicazioni dell'abilitare questi repository.
Cos'è il repository Backports?
Backports sono pacchetti della prossima versione di Debian (chiamata "unstable" o "sid") che sono stati ricompilati per l'attuale versione stabile.
Lo scopo dei backport è fornire versioni più recenti di alcuni software agli utenti della versione stabile senza influire sulla stabilità del sistema.
I backport sono destinati a essere compatibili con la versione stabile, ma non sono ufficialmente supportati dal team di sicurezza di Debian e sono forniti sulla base del miglior sforzo possibile.
Gli utenti solitamente usano i backport quando vogliono utilizzare versioni più recenti di determinati software senza aggiornare l'intero sistema alla prossima versione di Debian.
Perché usare i Backport?
- Accesso a funzionalità più recenti: I backport consentono agli utenti di accedere a nuove funzionalità e miglioramenti del software che non sono disponibili nella versione stabile.
- Aggiornamenti di Sicurezza: A volte, le versioni più recenti di un software contengono importanti aggiornamenti di sicurezza che non vengono riportati alle versioni stabili. I backport possono fornire questi aggiornamenti.
- Bisogni di Sviluppo: Gli sviluppatori spesso necessitano di versioni più recenti del software per lavorare sui progetti o per utilizzare gli ultimi strumenti di sviluppo.
Che cos'è il Repository di Testing?
Il repository "Testing" contiene pacchetti che sono in preparazione per la prossima versione stabile. Questi pacchetti sono stati nel repository "unstable" per un po' di tempo e non sono stati riscontrati problemi principali.
I pacchetti in testing sono generalmente più stabili di quelli in unstable, ma non sono testati altrettanto a fondo quanto i pacchetti nella release stabile attuale.
Per impostazione predefinita, il repository di test non è abilitato su un sistema Debian, ma gli utenti possono scegliere di abilitarlo se vogliono usare software più recente di quello disponibile nella versione stabile, ma non così all'avanguardia come quello presente nella versione instabile.
Perché usare i test?
- Accesso a Software più Recenti: Il testing fornisce accesso a versioni più recenti dei pacchetti software che saranno eventualmente incluse nella prossima release stabile di Debian.
- Contribuire al Testing: Gli utenti possono contribuire a Debian testando pacchetti nel repository di testing e fornendo feedback sulle loro prestazioni e stabilità.
- Adozione precoce: Gli utenti che hanno bisogno di versioni più recenti del software o vogliono contribuire ai test possono beneficiare dell'uso del repository di test.
Qual è raccomandato?
Repository Backports è generalmente consigliato per la maggior parte degli utenti che hanno bisogno di software più recente ma vogliono mantenere la stabilità complessiva del sistema. Fornisce un buon equilibrio offrendo pacchetti aggiornati in modo selettivo pur mantenendo stabile il sistema core.
Repository di Test è adatto agli utenti che hanno bisogno delle tecnologie più all'avanguardia e sono disposti ad accettare un certo rischio di instabilità. Viene spesso utilizzato da sviluppatori e tester che necessitano delle ultime funzionalità e aggiornamenti.
- Per la stabilità con pacchetti più recenti: utilizzare il repository backports.
- Per software all'avanguardia con potenziale instabilità: Usa il repository di test.
Scegli in base alle tue esigenze e all'ambiente in cui lavori.
Va bene! Ora passiamo a vedere come abilitare i repository backports e testing su Debian.
Abilita il repository Debian Backports
Per abilitare il repository Backports in Debian, eseguire i seguenti comandi:
echo "deb http://deb.debian.org/debian $(lsb_release -cs)-backports main contrib non-free non-free-firmware" | sudo tee /etc/apt/sources.list.d/backports.listAggiorna l'elenco delle fonti:
sudo apt updateIn alternativa, puoi usare la seguente riga di comando:
sudo sh -c 'echo "deb http://deb.debian.org/debian $(lsb_release -cs)-backports main contrib non-free non-free-firmware" > /etc/apt/sources.list.d/backports.list && apt update'Questa singola riga rileverà automaticamente la versione di Debian e aggiungerà il repository backports appropriato.
Spiegazione:
$ (lsb_release -cs): Questo comando ottiene il nome in codice della tua versione di Debian (ad esempio,bullseyeper Debian 11,bookwormper Debian 12).- Il comando
echocostruisce la riga per il repository backports e la scrive in un nuovo file in/etc/apt/sources.list.d/. sudo sh -c '... && apt update': Esegue il comando con privilegi di root e aggiorna l'elenco dei pacchetti.
Abilita il repository di Debian Testing
Se vuoi aggiungere il repository di testing in Debian, esegui:
echo "deb http://deb.debian.org/debian testing main contrib non-free non-free-firmware" | sudo tee /etc/apt/sources.list.d/testing.listAggiorna le sorgenti del software utilizzando il comando:
sudo apt updateIn alternativa, usa la seguente riga singola:
sudo sh -c 'echo "deb http://deb.debian.org/debian testing main contrib non-free non-free-firmware" > /etc/apt/sources.list.d/testing.list && apt update'Questo comando in una sola riga rileverà automaticamente la versione di Debian e aggiungerà il repository di testing appropriato.
Elenca i repository abilitati su Debian
Per elencare i repository abilitati sul tuo sistema Debian, puoi controllare sia il file principale sources.list sia eventuali file aggiuntivi nella directory /etc/apt/sources.list.d/. Ecco come puoi farlo:
Opzione 1: Utilizzo di apt-cache policy
Puoi usare il comando apt-cache policy per elencare tutti i repository abilitati insieme alla loro priorità e stato.
apt-cache policyQuesto comando visualizzerà un output simile al seguente su Debian 12 Bookworm:
Package files:
100 /var/lib/dpkg/status
release a=now
100 http://deb.debian.org/debian bookworm-backports/non-free amd64 Packages
release o=Debian Backports,a=stable-backports,n=bookworm-backports,l=Debian Backports,c=non-free,b=amd64
origin deb.debian.org
100 http://deb.debian.org/debian bookworm-backports/contrib amd64 Packages
release o=Debian Backports,a=stable-backports,n=bookworm-backports,l=Debian Backports,c=contrib,b=amd64
origin deb.debian.org
100 http://deb.debian.org/debian bookworm-backports/main amd64 Packages
release o=Debian Backports,a=stable-backports,n=bookworm-backports,l=Debian Backports,c=main,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian bookworm-updates/non-free-firmware amd64 Packages
release v=12-updates,o=Debian,a=stable-updates,n=bookworm-updates,l=Debian,c=non-free-firmware,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian bookworm-updates/non-free amd64 Packages
release v=12-updates,o=Debian,a=stable-updates,n=bookworm-updates,l=Debian,c=non-free,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian bookworm-updates/contrib amd64 Packages
release v=12-updates,o=Debian,a=stable-updates,n=bookworm-updates,l=Debian,c=contrib,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian bookworm-updates/main amd64 Packages
release v=12-updates,o=Debian,a=stable-updates,n=bookworm-updates,l=Debian,c=main,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian-security bookworm-security/non-free-firmware amd64 Packages
release v=12,o=Debian,a=stable-security,n=bookworm-security,l=Debian-Security,c=non-free-firmware,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian-security bookworm-security/contrib amd64 Packages
release v=12,o=Debian,a=stable-security,n=bookworm-security,l=Debian-Security,c=contrib,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages
release v=12,o=Debian,a=stable-security,n=bookworm-security,l=Debian-Security,c=main,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian bookworm/non-free-firmware amd64 Packages
release v=12.5,o=Debian,a=stable,n=bookworm,l=Debian,c=non-free-firmware,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian bookworm/non-free amd64 Packages
release v=12.5,o=Debian,a=stable,n=bookworm,l=Debian,c=non-free,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian bookworm/contrib amd64 Packages
release v=12.5,o=Debian,a=stable,n=bookworm,l=Debian,c=contrib,b=amd64
origin deb.debian.org
500 http://deb.debian.org/debian bookworm/main amd64 Packages
release v=12.5,o=Debian,a=stable,n=bookworm,l=Debian,c=main,b=amd64
origin deb.debian.org
Pinned packages:Opzione 2: Elenco delle directory sources.list e sources.list.d
Puoi anche controllare manualmente il file sources.list e i file nella directory sources.list.d per vedere quali repository sono abilitati.
Visualizza sources.list:
cat /etc/apt/sources.listQuesto mostrerà il contenuto del file principale sources.list, che di solito include i repository configurati durante l'installazione di Debian.
Elenca la directory sources.list.d:
ls /etc/apt/sources.list.dQuesto comando elenca tutti i file nella directory sources.list.d, ognuno dei quali contiene configurazioni aggiuntive dei repository.
Visualizzazione dei contenuti del repository:
cat /etc/apt/sources.list.d/backports.listOutput di esempio dal mio Debian 12:
deb http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmwareCome installare pacchetti dai backports
Dopo aver aggiunto il repository Backports, puoi installare i pacchetti dai backports usando l'opzione -t con apt o apt-get.
Per esempio:
sudo apt update
sudo apt install -t bookworm-backports package-nameSostituisci bookworm-backports con il nome reale del tuo repository e package-name con il nome reale del tuo pacchetto.
Ad esempio, il seguente comando installerà il pacchetto curl dal repository Backports in Debian 12:
sudo apt install -t bookworm-backports curlAllo stesso modo, puoi installare pacchetti dal repository Backports su Debian 11 come segue:
sudo apt install -t bullseye-backports curlAggiorna tutti i pacchetti alle loro versioni più recenti disponibili nei backport (non consigliato)
Se vuoi aggiornare tutti i pacchetti del tuo sistema alle versioni più recenti disponibili nel repository backports, puoi usare questo comando:
sudo apt full-upgrade -t bookworm-backports Questo comando aggiorna tutti i pacchetti installati alle loro versioni più recenti disponibili in bookworm-backports, installando eventualmente nuove dipendenze e rimuovendo pacchetti obsoleti per garantire la compatibilità e la funzionalità del sistema.
Attenzione :
- Questo comando dovrebbe essere usato con cautela, poiché potrebbe potenzialmente aggiornare un gran numero di pacchetti alle versioni backport, il che potrebbe influire sulla stabilità del sistema.
- In generale, è più sicuro installare pacchetti specifici dai backports piuttosto che eseguire un aggiornamento completo del sistema alle versioni dei backports.
- Assicurati sempre di avere dei backup prima di effettuare modifiche importanti al sistema come questa.
Prima di eseguire un comando del genere, è buona norma rivedere le modifiche che apporterà:
sudo apt full-upgrade -t bookworm-backports --dry-runQuesta opzione --dry-run ti permette di vedere quali modifiche verrebbero effettuate senza applicarle realmente, aiutandoti a evitare sorprese inaspettate.
Controllare la versione di un pacchetto nel repository Backports
Per verificare la versione disponibile di un pacchetto nel repository backports su Debian, è possibile utilizzare i comandi apt e apt-cache.
1. Aggiorna l'elenco dei pacchetti:
Per prima cosa, assicurati che la tua lista dei pacchetti sia aggiornata per includere le informazioni più recenti da tutti i repository:
sudo apt update2. Controlla le versioni disponibili con apt:
Puoi usare il comando apt per elencare le versioni disponibili di un pacchetto, comprese quelle del repository backports. Ad esempio, per controllare le versioni disponibili del pacchetto curl:
apt list -a curlQuesto comando ti mostrerà tutte le versioni disponibili di curl da tutti i repository abilitati, inclusi i backport.
Listing... Done
curl/stable-backports,now 8.8.0-1~bpo12+1 amd64 [installed]
curl/stable,stable-security 7.88.1-10+deb12u5 amd643. Informazioni dettagliate con apt-cache:
Per informazioni più dettagliate, puoi utilizzare il comando apt-cache. Questo ti mostrerà le versioni disponibili e i rispettivi repository. Per esempio:
apt-cache policy curlQuesto comando fornisce informazioni dettagliate sulle versioni disponibili del pacchetto curl e sui repository da cui provengono. Vedrai un output come questo:
curl:
Installed: 8.8.0-1~bpo12+1
Candidate: 8.8.0-1~bpo12+1
Version table:
*** 8.8.0-1~bpo12+1 100
100 http://deb.debian.org/debian bookworm-backports/main amd64 Packages
100 /var/lib/dpkg/status
7.88.1-10+deb12u5 500
500 http://deb.debian.org/debian bookworm/main amd64 Packages
500 http://deb.debian.org/debian-security bookworm-security/main amd64 PackagesIn questo esempio, la versione di curl 8.8.0-1~bpo12+1 è disponibile dal repository bookworm-backports.
Usando questi comandi, puoi vedere quali versioni di un pacchetto sono disponibili nel repository backports e decidere se installare la versione backportata.
EnableBackports: uno script Bash per controllare e abilitare il repository Backports
Ho creato un piccolo script Bash che ti aiuta a controllare e abilitare i Backports in un sistema Debian Linux.
Questo script fa quanto segue:
- Lo script verifica se il repository Backports è già abilitato cercando in
/etc/apt/sources.liste/etc/apt/sources.list.d/*l'URL del repository Backports. - Se trovato, stampa un messaggio ed esce.
- Se il repository Backports non viene trovato, lo script chiede all'utente di abilitarlo.
- Se l'utente risponde con "sì" (o qualsiasi variante di "sì" non sensibile alle maiuscole), lo script aggiunge l'URL appropriato del repository Backports a
/etc/apt/sources.list.d/backports.list. - Dopo aver aggiunto il repository, lo script aggiorna la lista dei pacchetti con
sudo apt-get update. - Se l'utente risponde con "no", lo script stampa un messaggio ed esce.
Lo script Enable Backports è disponibile nel profilo GitHub Gist di OSTechNix. Puoi scaricarlo, modificarlo e utilizzarlo.
Come usare lo script
1. Scarica il Gist usando curl o wget:
Usando curl:
curl -O https://gist.githubusercontent.com/ostechnix/2a5b36177a10a12d868ce755e658905e/raw/43c9e36089fb5b4cd2879cf0f159659e1f56a591/enablebackports.shUsando wget:
wget https://gist.githubusercontent.com/ostechnix/2a5b36177a10a12d868ce755e658905e/raw/43c9e36089fb5b4cd2879cf0f159659e1f56a591/enablebackports.sh2. Rendere eseguibile lo script:
chmod +x enablebackports.sh3. Esegui lo script con privilegi sudo o root:
sudo ./enablebackports.sh Se Backports è già abilitato, stamperà il seguente messaggio e uscirà:
Backports is already enabled in your system.Se i backports non sono ancora abilitati, ti verrà chiesto se vuoi abilitarli. Se digiti y (o qualsiasi variante di "y" o "yes" non sensibile alle maiuscole), lo script aggiungerà automaticamente il repository dei Backports e aggiornerà la lista delle sorgenti.
Backports repository is not enabled. Do you want to enable it? (yes/no): YeS
deb http://deb.debian.org/debian bookworm-backports main contrib non-free
Hit:1 http://deb.debian.org/debian bookworm InRelease
Hit:3 http://deb.debian.org/debian-security bookworm-security InRelease
Hit:4 http://deb.debian.org/debian bookworm-updates InRelease
Get:5 http://deb.debian.org/debian bookworm-backports InRelease [56.6 kB]
Get:6 http://deb.debian.org/debian bookworm-backports/main amd64 Packages [225 kB]
Get:7 http://deb.debian.org/debian bookworm-backports/main Translation-en [185 kB]
Get:8 http://deb.debian.org/debian bookworm-backports/contrib amd64 Packages [5,392 B]
Get:9 http://deb.debian.org/debian bookworm-backports/contrib Translation-en [5,084 B]
Get:10 http://deb.debian.org/debian bookworm-backports/non-free amd64 Packages [1,640 B]
Get:11 http://deb.debian.org/debian bookworm-backports/non-free Translation-en [904 B]
Hit:2 https://packages.kopia.io/apt stable InRelease
Hit:12 https://repo.protonvpn.com/debian stable InRelease
Fetched 480 kB in 2s (290 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
Backports repository has been enabled in your system!Ora puoi installare pacchetti dal repository Backports come spiegato nella sezione precedente.
Rimozione del repository Backports
Il comando seguente rimuove il file del repository backports specifico per la tua versione di Debian e poi aggiorna la lista dei pacchetti per riflettere la rimozione del repository.
sudo rm /etc/apt/sources.list.d/backports.list && sudo apt updateRimozione del repository di test
Se hai aggiunto il repository di test, puoi rimuoverlo dal tuo sistema Debian utilizzando il comando:
sudo rm /etc/apt/sources.list.d/testing.list && sudo apt updateQuesto comando rimuove il file del repository di test e aggiorna l'elenco dei pacchetti per riflettere la rimozione del repository.
Domande Frequenti (FAQ)
1. Cosa sono i repository Backports e Testing in Debian?
- Repository Backports: Contiene versioni più recenti dei pacchetti software che sono state ricompilate per funzionare sulla versione stabile di Debian senza compromettere la sua stabilità. Permette agli utenti di accedere a nuove funzionalità e miglioramenti che non sono disponibili nella versione stabile.
- Repository di Testing: Contiene pacchetti che sono in fase di valutazione per l'inclusione nella prossima release stabile di Debian. Questo repository offre l'accesso a versioni più recenti del software che hanno subito alcuni test per garantire che soddisfino gli standard di qualità di Debian.
2. Perché Avrei Bisogno del Repository Backports?
- Accesso a Software Più Recente: Ottieni versioni più recenti dei pacchetti software mantenendo la stabilità complessiva del tuo sistema Debian.
- Aggiornamenti di Sicurezza: Alcuni pacchetti nei backports possono contenere importanti aggiornamenti di sicurezza non disponibili nella versione stabile.
- Bisogni di sviluppo: Accesso a strumenti e funzionalità di sviluppo più recenti necessari per progetti specifici.
3. Perché avrei bisogno del repository di test?
- Software all'avanguardia: Accedi alle versioni più recenti di tutti i pacchetti disponibili in Debian.
- Contribuisci a Debian Testing: Aiuta a testare e fornire feedback sui pacchetti che saranno inclusi nella prossima versione stabile.
- Adozione precoce: Ideale per ambienti di sviluppo e test in cui avere il software più recente è più importante della stabilità assoluta.
4. Come faccio ad abilitare il repository Backports?
Apri un terminale ed esegui il seguente comando per aggiungere il repository backports in Debian:
echo "deb http://deb.debian.org/debian $(lsb_release -cs)-backports main contrib non-free" | sudo tee /etc/apt/sources.list.d/backports.listAggiorna l'elenco dei pacchetti:
sudo apt update5. Come abilito il repository di test?
Esegui il seguente comando per aggiungere il repository di testing in Debian:
echo "deb http://deb.debian.org/debian testing main contrib non-free" | sudo tee /etc/apt/sources.list.d/testing.listAggiorna l'elenco dei pacchetti:
sudo apt update6. Come installo un pacchetto dal repository Backports?
Usa l'opzione -t seguita dal nome in codice dei backport per installare un pacchetto. Per esempio, per installare vim dai backport:
sudo apt install -t bookworm-backports vim7. Come rimuovo il repository Backports?
Per rimuovere il file del repository backports, esegui:
sudo rm /etc/apt/sources.list.d/backports.listAggiorna l'elenco dei pacchetti:
sudo apt update8. Come rimuovo il repository di test?
Per rimuovere il file del repository di test, esegui:
sudo rm /etc/apt/sources.list.d/testing.listAggiorna l'elenco dei pacchetti:
sudo apt update9. Come posso controllare i repository abilitati?
Per elencare tutti i repository abilitati, usa il seguente comando:
apt-cache policyPer controllare manualmente i file del repository, puoi elencare e visualizzare il contenuto di sources.list e della directory sources.list.d:
cat /etc/apt/sources.list
ls /etc/apt/sources.list.dConclusione
Abilitando i repository Backports e Testing, puoi installare software aggiornato sul tuo sistema Debian 12 bookworm. I Backports offrono un buon compromesso tra stabilità e nuove funzionalità, mentre Testing offre il software più recente ma con un potenziale rischio di instabilità.
Ricorda, la stabilità è un principio fondamentale di Debian. Se la stabilità è la tua massima priorità, è meglio attenersi ai repository ufficiali di Debian. Abilita questi repository solo se hai bisogno specificamente di software più recente e sei pronto a incontrare bug.
Spero che questo tutorial ti abbia aiutato a capire come abilitare i repository Backports e Testing in Debian Linux.
Se avete ulteriori domande, sentitevi liberi di chiedere nella sezione commenti qui sotto.
Lettura correlata:
- Come Controllare la Disponibilità dei Pacchetti nei Repository di Debian e Ubuntu
- Come trovare l'elenco dei repository installati da riga di comando in Linux