Apt > sources.list


Configurare le fonti di Apt

Apt scarica i pacchetti da uno o più repository software (fonti o "source") e li installa nel computer dell'utente.

Un repository è generalmente un server di rete, come il repository ufficiale Debian Stable. Sono accettati anche directory locali o CD/DVD.

I repository specifici (fonti dei pacchetti) configurati sulla macchina determinano:

Fonti per i pacchetti comunemente usate

Modificare le fonti del software

Precauzioni

Avere la possibilità di cambiare i repository utilizzati dal proprio sistema di gestione dei pacchetti è una funzionalità potente, ma questo potere porta con sé una responsabilità. Si avvisano gli utenti che, aggiungendo repository di terze parti o repository per una versione di Debian che non corrisponde a quella attualmente in uso, è possibile rendere difettoso il proprio sistema (in un modo che potrebbe essere difficile o impossibile da aggiustare in maniera pulita); questi repository creano un rischio di conflitti tra versioni di pacchetti, generando quello che viene a volte chiamato un sistema "Franken-Debian". Il concetto alla base di un sistema Debian stabile è quello che gli sviluppatori Debian hanno selezionato un insieme di software e di loro versioni che funzionano bene insieme. Sebbene questo software venga aggiiornato per risolvere i problemi di sicurezza, è spesso non alla versione più recente. Serve esperienza per capire come i repository possono essere modificati senza il rischio di rendere difettoso il sistema. Si raccomanda agli utenti, a tutti i livelli, di modificare i repository con cautela.

Usando un programma grafico

Alcuni programmi permettono di configurare le fonti di Apt usando un'interfaccia grafica. Per esempio:

Usando un editor di testo

Il file principale di configurazione delle fonti di Apt è /etc/apt/sources.list. Si può modificare questo file (da root) usando il proprio editor di testo preferito. Vedere la pagina di manuale di sources.list per maggiori informazioni.

Per aggiungere fonti personalizzate, il metodo consigliato è creare file separati in /etc/apt/sources.list.d/ nel formato sorgente DEB822. Vedere la pagina di manuale di deb822 per maggiori informazioni.

Formato di sources.list

Le voci in questo file normalmente seguono il seguente formato:

deb http://site.example.com/debian distribuzione componente1 componente2 componente3
deb-src http://site.example.com/debian distribuzione componente1 componente2 componente3

Tipo di archivio

La prima parola di ciascuna riga, deb o deb-src, indica il tipo di archivio. Deb indica che l'archivio contiene pacchetti binari (deb), i pacchetti precompilati che vengono normalmente usati. Deb-src indica i pacchetti sorgente che sono i sorgenti del programma originale più il file di controllo di Debian (.dsc) e il diff.gz che contiene le modifiche necessarie per pacchettizzare il programma.

URL del repository

L'elemento seguente nella riga è l'URL del repository Debian da cui si desiderano scaricare i pacchetti. L'elenco dei mirror principali del repository Debian si può trovare qui.

Distribuzione

"Distribuzione" può essere sia il nome in codice/alias di rilascio (stretch, buster, bullseye, bookworm, sid) che la categoria di rilascio (oldoldstable, oldstable,stable, testing, unstable). Se si intende seguire una categoria di rilascio utilizzare il nome della categoria, se si desidera tenere traccia di un rilascio di Debian utilizzare il nome in codice. Evitare l'uso di stable nel proprio sources.list dato che può avere come risultato delle brutte sorprese e sistemi non funzionanti quando viene fatto il rilascio successivo; l'aggiornamento ad un nuovo rilascio dovrebbe essere un'azione attenta e deliberata, e modificare un file una volta ogni due anni non è un peso.

Ad esempio, usare "testing" se si preferisce aiutare sempre a provare la versione di test. Nel caso in cui si voglia seguire trixie e rimanere con tale versione fino al suo ciclo di vita usare "trixie".

Componenti

main consiste di pacchetti che rispettano le DFSG, che non hanno bisogno di software al di fuori di questa componente per funzionare. Questi sono gli unici pacchetti che sono considerati facenti parte della distribuzione Debian.

contrib ha pacchetti che contengono software aderente alle DFSG, ma che ha dipendenze non in main (eventualmente pacchettizzate per Debian in non-free).

non-free contiene software che non rispetta le DFSG.

Il progetto Debian nell'ottobre del 2022 ha preso la decisione di creare una nuova componente non-free-firmware dei repository, e di includere il suo contenuto nei supporti di installazione per Debian bookworm per facilitare la vita ai propri utenti.
Si si desiderano avere più informazioni, seguire la discussione firmware GR result - what happens next?.
Il wiki Debian ha una pagina sul firmware per i rilasci più vecchi, bookworm e successive.

Ad esempio, per Bookworm (rilasciata come Debian 12.0 (stable) il 10 giugno 2023):

deb http://deb.debian.org/debian bookworm main non-free-firmware
deb-src http://deb.debian.org/debian bookworm main non-free-firmware

deb http://deb.debian.org/debian-security/ bookworm-security main non-free-firmware
deb-src http://deb.debian.org/debian-security/ bookworm-security main non-free-firmware

deb http://deb.debian.org/debian bookworm-updates main non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates main non-free-firmware

Esempio di file sources.list

Quello che segue è un esempio di un file sources.list per Debian 12/Bookworm (stable).

deb http://deb.debian.org/debian bookworm main
deb-src http://deb.debian.org/debian bookworm main

deb http://deb.debian.org/debian-security/ bookworm-security main
deb-src http://deb.debian.org/debian-security/ bookworm-security main

deb http://deb.debian.org/debian bookworm-updates main
deb-src http://deb.debian.org/debian bookworm-updates main

La sezione equivalente in stile deb822 in /etc/apt/sources.list.d/debian.sources è invece del tipo:

Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: bookworm bookworm-updates
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Types: deb deb-src
URIs: http://deb.debian.org/debian-security
Suites: bookworm-security
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Se si ha bisogno delle componenti contrib, non-free e non-free-firmware, aggiungere contrib non-free non-free-firmware dopo main. Per esempio per Debian 12/Bookworm:

deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware

deb http://deb.debian.org/debian-security/ bookworm-security main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian-security/ bookworm-security main contrib non-free non-free-firmware

deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware

La sezione equivalente in stile deb822 che include le componenti non-free e non-free-firmware è:

Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: bookworm bookworm-updates
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Types: deb deb-src
URIs: http://deb.debian.org/debian-security
Suites: bookworm-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Se sono necessarie anche le componenti Backport con contrib e non-free, aggiungere le righe per bookworm-backports. Per esempio, per Debian 12/Bookworm:

deb http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware

La sezione equivalente in stile deb822 che include le componenti non-free non-free-firmware e bookworm-backports è:

Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: bookworm bookworm-updates bookworm-backports
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Types: deb deb-src
URIs: http://deb.debian.org/debian-security
Suites: bookworm-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Quello che segue è un esempio di file sources.list per Debian 11/Bullseye (oldstable).

deb http://deb.debian.org/debian bullseye main
deb-src http://deb.debian.org/debian bullseye main

deb http://deb.debian.org/debian-security/ bullseye-security main
deb-src http://deb.debian.org/debian-security/ bullseye-security main

deb http://deb.debian.org/debian bullseye-updates main
deb-src http://deb.debian.org/debian bullseye-updates main

Se si ha bisogno delle componenti contrib e non-free, aggiungere contrib non-free dopo main. Per esempio per Debian 11/Bullseye:

deb http://deb.debian.org/debian bullseye main contrib non-free
deb-src http://deb.debian.org/debian bullseye main contrib non-free

deb http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
deb-src http://deb.debian.org/debian-security/ bullseye-security main contrib non-free

deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free

Se sono necessarie anche le componenti Backport con contrib e non-free, aggiungere le righe per bullseye-backports. Per esempio, per Debian 11/Bullseye:

deb http://deb.debian.org/debian bullseye-backports main contrib non-free
deb-src http://deb.debian.org/debian bullseye-backports main contrib non-free

Domande sui cicli di supporto? Cliccare qui.

Se è necessaria Debian Unstable, allora cambiare la distribuzione in unstable. Notare che Updates e Security non sono utilizzate dato che Unstable è una versione di sviluppo in divenire che consiste dei pacchetti più recenti. Cioè unstable main sarà l'unica voce in sources.list.

deb http://deb.debian.org/debian/ unstable main
deb-src http://deb.debian.org/debian/ unstable main

Si può usare invece https://... in tutte le righe soprastanti per utilizzare i repository attraverso connessioni HTTPS cifrate, se il mirror corrispondente lo gestisce. (Gli utenti di Debian 9/Stretch o rilasci più vecchi devono prima installare il pacchetto apt-transport-https.)

Si può usare uno strumento GNOME per modificare il proprio file sources.list. Accedervi tramite Menu → Sistema → Amministrazione → Sorgenti software.

Usare Tor con Apt

Apt può recuperare e scaricare gli aggiornamenti attraverso Tor. Affinché ciò funzioni è necessario installare i pacchetti tor e apt-transport-tor. Si possono usare i servizi onion ufficiali forniti da Debian.

Ecco un esempio di sources.list che usa i servizi onion per Debian 11/Bullseye:

deb tor+http://2s4yqjx5ul6okpp3f2gaunr2syex5jgbfpfvhxxbbjwnrsvbk5v3qbid.onion/debian bullseye main
deb-src tor+http://2s4yqjx5ul6okpp3f2gaunr2syex5jgbfpfvhxxbbjwnrsvbk5v3qbid.onion/debian bullseye main

deb tor+http://5ajw6aqf3ep7sijnscdzw77t7xq4xjpsy335yb2wiwgouo7yfxtjlmid.onion/
debian-security bullseye-security main
deb-src tor+http://5ajw6aqf3ep7sijnscdzw77t7xq4xjpsy335yb2wiwgouo7yfxtjlmid.onion/
debian-security bullseye-security main

deb tor+http://2s4yqjx5ul6okpp3f2gaunr2syex5jgbfpfvhxxbbjwnrsvbk5v3qbid.onion/debian bullseye-updates main
deb-src tor+http://2s4yqjx5ul6okpp3f2gaunr2syex5jgbfpfvhxxbbjwnrsvbk5v3qbid.onion/debian bullseye-updates main

CD-ROM

Volendo usare un CD-ROM per installare i pacchetti o per aggiornare automaticamente il sistema con APT, va inserito nel file /etc/apt/sources.list. Per fare ciò si può usare il programma apt-cdrom in questo modo:

con il CD-ROM di Debian nell'unità ottica.

È possibile utilizzare -d per indicare la directory del punto di montaggio del CD-ROM o aggiungere un punto di montaggio che non corrisponde ad un CD (es. una chiavetta USB).

Risoluzione dei nomi

A volte la risoluzione dei nomi può non funzionare.

# apt update
0% [Working]Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Err:1 http://deb.debian.org/debian testing InRelease
  Temporary failure resolving 'deb.debian.org'
Reading package lists... Done
W: Failed to fetch http://deb.debian.org/debian/dists/testing/InRelease  Temporary failure resolving 'deb.debian.org'
W: Some index files failed to download. They have been ignored, or old ones used instead.

Si può aggirare temporaneamente il problema ottenendo l'indirizzo IP da un'altra macchina e poi utilizzandolo al posto dell'URI:

echo "deb http://128.30.2.26/debian testing main" > /etc/apt/sources.list

apt update
Get:1 http://128.30.2.26/debian testing InRelease [232 kB]
Get:2 http://128.30.2.26/debian testing/main s390x Packages [7583 kB]
Get:3 http://128.30.2.26/debian testing/main Translation-en [5134 kB]     
Fetched 13.0 MB in 32s (403 kB/s)                                              
Reading package lists... Done

Pacchetti dei simboli di debug

Per fare il debug di un crash, spesso sono necessari i relativi file dei simboli di debug. Per la maggior parte dei pacchetti Debian, essi sono nei pacchetti dbgsym. Questi sono disponibili da un archivio distinto.

Ecco un esempio di frammento di sources.list per i pacchetti dbgsym per Debian 12/Bookworm:

deb http://deb.debian.org/debian-debug/ bookworm-debug main

e un esempio per Debian 11/Bullseye:

deb http://deb.debian.org/debian-debug/ bullseye-debug main

E ugualmente se si usa testing:

deb http://deb.debian.org/debian-debug/ testing-debug main

E un ultimo esempio se si usa la distribuzione unstable:

deb http://deb.debian.org/debian-debug/ unstable-debug main

Maggiori informazioni


CategoryPackageManagement