Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Repository/RigaDiComando"
Differenze tra le versioni 9 e 46 (in 37 versioni)
Versione 9 del 19/05/2007 07.15.48
Dimensione: 9920
Commento:
Versione 46 del 18/02/2019 21.32.14
Dimensione: 14103
Autore: dd3my
Commento: nuovo stile note/avvisi/suggerimenti
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
#format wiki
Linea 2: Linea 3:
[[BR]]
||<tablestyle="float:right; font-size: 0.9em; width:40%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">[[TableOfContents(1)]]||

= Cosa sono i repository =

Ci sono migliaia di programmi installabili in Ubuntu. Questi programmi si trovano in alcuni archivi software (i repository) e sono disponibili per l'installazione attraverso internet. Questo rende l'installazione di nuovi programmi estremamente facile e molto sicura, dato che ogni programma che si installa viene controllato e creato specificamente per Ubuntu.

I repository di Ubuntu sono organizzati in quattro "[:Repository/Componenti:componenti]" sulla base del livello di supporto fornito al software e da quanto il software sia aderente alla [http://www.ubuntu-it.org/index.php?page=Filosofia filosofia di Ubuntu]. Questi componenti sono chiamati '''Main''' (software supportato ufficialmente), '''Restricted''' (software supportato ma non disponibile nei termini del software libero), '''Universe''' (mantenuto dalla comunità, non ufficialmente supportato), '''Multiverse''' (software non libero).

Il CD di installazione di Ubuntu contiene software preso dai componenti '''Main''' e '''Restricted'''. Una volta che il sistema avrà stabilito una connessione a internet, molti software saranno disponibili per l'installazione. Utilizzando il gestore di pacchetti sarà possibile eseguire delle ricerche, installare e aggiornare qualsiasi applicazione direttamente da internet, senza bisogno del CD.

= Gestire i repository dalla riga di comando =

Questa pagina descrive come gestire i repository dalla riga di comando. Questo può essere utilie se non si riesce o non si vuole utilizzare un'interfaccia grafica. Queste informazioni si rivelano utili dato che funzionano in tutte le versioni di Ubuntu.

Le istruzioni contenute in questa pagina assumono una buona conoscenza dell'utilizzo di editor di testo come '''gedit''' o '''[:Nano:nano]'''. Se si preferisce utilizzare un'interfaccia grafica consultare [:Repository/Ubuntu:Gestire i repository con Ubuntu] o [:Repository/Kubuntu:Gestire i repository con Kubuntu].
<<BR>>
<<Indice(depth=2)>>
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=431132")>>

= Introduzione =

Questa pagina descrive come gestire i repository da riga di comando tramite l'utilizzo di un qualsiasi [[Ufficio/EditorDiTesto|editor di testo]], senza utilizzare appositi programmi con interfaccia grafica. Queste informazioni si rivelano utili dato che funzionano in tutte le versioni di Ubuntu.

Se invece si desidera utilizzare gli strumenti specifici della propria distribuzione, leggere le seguenti guide:

 * [[Repository/Ubuntu|Gestire i repository con Ubuntu]]
 * [[Repository/Kubuntu|Gestire i repository con Kubuntu]]
Linea 21: Linea 18:
Ubuntu utilizza [:Apt:Apt] per la gestione dei pacchetti. La lista dei repository, o canali software, è mantenuta nel file: {{{
/etc/apt/sources.list
}}}

Modificando questo file dalla riga di comando è possibile aggiungere, rimuovere o disabilitare temporaneamente i repository.

È sempre utile fare una copia di riserva di questo file prima di modificarlo. Per fare ciò, digitare il seguente comando: {{{
[[AmministrazioneSistema/InstallareProgrammi/Apt|Apt]] è il programma che gestisce l'installazione dei pacchetti e la lista dei repository. Il file che contiene tale elenco è `/etc/apt/sources.list` e tramite la modifica di questo file è possibile aggiungere, rimuovere o disabilitare i repository.

Anche se Ubuntu conserva di default una copia del file `sources.list`, è buona norma creare una copia di backup del file prima di modificarlo, in modo tale da poterlo ripristinare in caso di problemi.

Per creare una copia di backup del file `sources.list`, digitare il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
Linea 31: Linea 26:
Il contenuto del file `/etc/apt/sources.list` è simile a questo:
{{{
deb http://it.archive.ubuntu.com/ubuntu/ edgy main restricted
deb-src http://it.archive.ubuntu.com/ubuntu/ edgy main restricted
<<Anchor(sources.list)>>
= Descrizione del file sources.list =

Per controllare la validità del proprio file `sources.list` senza senza modificarlo, è possibile prenderne visione col seguente comando: {{{
cat /etc/apt/sources.list
}}}
Prendendo come esempio il caso di un sistema Ubuntu 16.04.1 LTS, il contenuto dovrebbe essere simile al seguente: {{{
# deb cdrom:[Ubuntu 16.04.1 LTS _Xenial Xerus_ - Release amd64 (20160719)]/ xenial main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://it.archive.ubuntu.com/ubuntu/ xenial main restricted
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial main restricted
Linea 38: Linea 42:
deb http://it.archive.ubuntu.com/ubuntu/ edgy-updates main restricted
deb-src http://it.archive.ubuntu.com/ubuntu/ edgy-updates main restricted

## Uncomment the following two lines to add software from the 'universe'
## repository.
deb http://it.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
Linea 48: Linea 50:
# deb http://it.archive.ubuntu.com/ubuntu/ edgy universe multiverse
# deb-src http://it.archive.ubuntu.com/ubuntu/ edgy universe multiverse

## Uncomment the following two lines to add software from the 'backports'
## repository.
deb http://it.archive.ubuntu.com/ubuntu/ xenial universe
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial universe
deb http://it.archive.ubuntu.com/ubuntu/ xenial-updates universe
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://it.archive.ubuntu.com/ubuntu/ xenial multiverse
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial multiverse
deb http://it.archive.ubuntu.com/ubuntu/ xenial-updates multiverse
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial-updates multiverse
Linea 58: Linea 70:
# deb http://it.archive.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse
# deb-src http://it.archive.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse


deb http://security.ubuntu.com/ubuntu edgy-security main restricted
deb-src http://security.ubuntu.com/ubuntu edgy-security main restricted
# deb http://security.ubuntu.com/ubuntu edgy-security universe
# deb-src http://security.ubuntu.com/ubuntu edgy-security universe
}}}

= Descrizione del file sources.list =

 * Tutte le righe che iniziano con uno o due caratteri hash (#) sono commenti e non vengono lette da apt o da tutti gli altri programmi di gestione dei pacchetti.

 * Le linee senza i caratteri hash sono le righe dei repository. Le prime due righe nell'esempio sono: {{{
deb http://it.archive.ubuntu.com/ubuntu/ edgy main restricted
deb-src http://it.archive.ubuntu.com/ubuntu/ edgy main restricted
}}}

 * Questo è quello che indicano:
  * '''deb''': questi repository contengono pacchetti binari o precompilati. Sono quelli indicati per la maggior parte degli utenti.
  * '''deb-src''': questi repository contengono il codice sorgente dei pacchetti. Utili agli sviluppatori.
  * '''http://it.archive.ubuntu.com/ubuntu/''': l'URI (Uniform Resource Indentifier), in questo caso un posizione su internet.
  * '''edgy''': il nome della versione o del rilascio della propria distribuzione
  * '''main''' e '''restricted''': il nome dei componenti. Possono essercene diversi, separati da spazi.

= Aggiungere i repository Universe e Multiverse =

I repository opzionali come '''Universe''' e '''Multiverse''' possono essere abilitati togliendo il commento alla corrsipondente riga apt (per es. cancellando il carattere «#» a inizio riga). Nell'esempio precedente: {{{
deb http://it.archive.ubuntu.com/ubuntu/ edgy universe multiverse
deb-src http://it.archive.ubuntu.com/ubuntu/ edgy universe multiverse
}}}

[[Immagine(Icone/Piccole/note.png,,left)]] [[BR]] Se si desidera abilitare solo il componente '''Universe''' e non quello '''Multiverse''', cancellare la parola «'''multiverse'''» dalla riga. [[BR]] [[BR]] [[BR]]

Una volta terminato con le modifiche, salvare il file. Ora, per ricevere la lista dei pacchetti aggiornata con i nuovi repository, digitare: {{{
deb http://it.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu xenial partner
# deb-src http://archive.canonical.com/ubuntu xenial partner

deb http://security.ubuntu.com/ubuntu xenial-security main restricted
# deb-src http://security.ubuntu.com/ubuntu xenial-security main restricted
deb http://security.ubuntu.com/ubuntu xenial-security universe
# deb-src http://security.ubuntu.com/ubuntu xenial-security universe
deb http://security.ubuntu.com/ubuntu xenial-security multiverse
# deb-src http://security.ubuntu.com/ubuntu xenial-security multiverse
}}}

Le righe di testo che iniziano con uno o due caratteri hash «#» sono commenti e servono esclusivamente per fornire informazioni all'utente. Non influiscono in alcun modo sull'operato del proprio gestore di pacchetti.

I repository vengono indicati con la seguente struttura: {{{
tipo posizione componenti
}}}

 * '''Tipo''', può essere:

  * '''deb''': questi repository contengono pacchetti binari o precompilati. Sono indicati per la maggior parte degli utenti.
  * '''deb-src''': questi repository contengono il codice sorgente dei pacchetti e sono utili agli sviluppatori. Nell'esempio precedente, tutti i repository di questo tipo sono commentati '''#''', pertanto non vengono considerati.

 * '''Posizione''': è l'indirizzo a cui è reperibile il server o il supporto che ospita i pacchetti, ad esempio:

  '''http://it.archive.ubuntu.com/ubuntu/''': l' '''URI''' (Uniform Resource Indentifier), in questo caso una posizione su internet.

 * '''Componenti''': possono essere diversi, e vanno separati l'uno dall'altro da uno spazio, ad esempio: {{{
main universe multiverse
}}}

 * Può inoltre essere presente l'identificativo del rilascio di Ubuntu per cui i pacchetti sono preparati, come ad esempio nel file sopraccitato '''xenial''', ma questa indicazione può mancare in alcuni repository non ufficiali.

= Abilitare i repository =

Per abilitare un repository procedere come segue:

 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/apt/sources.list`, quindi cancellare il simbolo hash '''#''' davanti alla riga di interesse.

 0. Salvare la modifica ed aggiornare l'elenco pacchetti, digitando il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]: {{{
sudo apt update
}}}
 Se non si ricevono errori, l'operazione è andata a buon fine.

In caso di errori, invece, è possibile ripristinare la situazione precedente tramite il backup precedentemente creato, digitando quindi il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]: {{{
sudo cp /etc/apt/sources.list.backup /etc/apt/sources.list
sudo apt update
}}}

{{{#!wiki tip
Se si desidera abilitare solo un componente di quelli presenti nella riga interessata, omettere i componenti indesiderati.}}}

= Aggiungere altri repository =

{{{#!wiki important
Si consiglia di prestare sempre la massima attenzione nella scelta di repository affidabili e compatibili per non compromettere la sicurezza e la stabilità del proprio sistema operativo.}}}

Possono esserci diverse ragioni per aggiungere dei repository non ufficiali alla propria lista. Ad esempio si può avere bisogno di programmi non presenti nei [[Repository#Repository_ufficiali|repository ufficiali]] o disponibili in questi ultimi soltanto in versioni non aggiornate, oppure di software vincolati da licenze e/o brevetti ecc.

A tal fine seguire le procedure indicate di seguito.<<BR>>Dopo tali procedure sarà possibile [[AmministrazioneSistema/InstallareProgrammi#Installare_e_rimuovere_pacchetti_da_repository|installare]] o [[AmministrazioneSistema/Aggiornamenti|aggiornare]] da altri repository il software desiderato.

Per controllare se siano già presenti repository esterni:
 0. Visionare il file `/etc/apt/sources.list` come indicato nel precedente [[#sources.list|paragrafo]], verificando che non siano presenti ulteriori righe oltre quelle relative ai repository ufficiali.
 0. Digitare il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
ls /etc/apt/sources.list.d
}}}
 verificando la presenza di eventuali file con estensione `.list`. Analogamente a `/etc/apt/sources.list`:
  * è possibile visionarne il contenuto tramite il comando:{{{
cat /etc/apt/sources.list.d/nome_file.list
}}}
  * eventuali righe che iniziano con il simbolo '''#''' sono commentate e non vengono prese in considerazione.

== Repository di terze parti ==

 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] il file `/etc/apt/sources.list`;
 0. Inserire a fondo pagina il repository desiderato, quindi salvare il file;
 0. Aggiornare la lista dei repository, digitando il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]: {{{
sudo apt update
}}}

Tuttavia, per evitare modifiche accidentali indesiderate al file `/etc/apt/sources.list`, si consiglia di utilizzare la seguente procedura alternativa:
 0. Aprire un [[Ufficio/EditorDiTesto|editor di testo]] con i [[AmministrazioneSistema/Sudo|privilegi di amministrazione]] e scrivere il repository desiderato;
 0. Salvare il file all'interno della cartella `/etc/apt/sources.list.d/` indicando come estensione `.list` (ad esempio `virtualbox.list`);
 0. Aggiornare la lista dei repository, digitando il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]: {{{
sudo apt update
}}}

{{{#!wiki tip
Solitamente alcuni programmi installabili [[AmministrazioneSistema/InstallareProgrammi/PacchettiDebian|tramite pacchetto debian]] (quali '''[[InternetRete/Navigazione/GoogleChrome|GoogleChrome]]''', '''[[InternetRete/Navigazione/Opera|Opera]]''', '''[[InternetRete/Telefonia/Skype#Skype_for_Linux|Skype]]''' ed altri) provvedono automaticamente a generare un file relativo al proprio repository all'interno della cartella `/etc/apt/sources.list.d/`.}}}

<<Anchor(ppa)>>
== Aggiungere repository launchpad ==

Se il repository si trova sulla piattaforma [[https://launchpad.net/|Launchpad]] è possibile seguire una procedura automatizzata:

 0. Solo se si è su [[Installazione/CdMinimale|sistema minimale]], installare il pacchetto [[apt://software-properties-common | software-properties-common]].
 0. Digitare nel [[AmministrazioneSistema/Terminale|terminale]] un comando che abbia la seguente sintassi: {{{
sudo add-apt-repository ppa:utente/nome-ppa
}}}
 avendo cura di sostituire «`utente`» con il nome del profilo launchpad del manutentore del repository e «`nome-ppa`» con il nome del repository (ad esempio `ppa:libreoffice/ppa`);
 0. Se in uso Ubuntu 16.04 o precedente, aggiornare la lista dei repository digitando il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]: {{{
sudo apt update
}}}
 Al contrario, su Ubuntu 18.04 l'update non sarà necessario (verrà eseguito automaticamente).

Se la procedura è andata a buon fine, il repository launchpad verrà salvato in un file aggiuntivo all'interno della cartella `/etc/apt/sources.list.d/`.<<BR>>
Per annullare le modifiche effettuate tramite questa procedura, è possibile seguire le istruzioni di [[AmministrazioneSistema/Ppa-purge|questa guida]].

{{{#!wiki tip
Solitamente sulle pagine della piattaforma [[https://launchpad.net/|launchpad]] sono riportate istruzioni relative comandi da eseguire da [[AmministrazioneSistema/Terminale|terminale]].}}}

= Abilitare automaticamente tutti i repository =

{{{#!wiki important
Questo comando è destinato all'utilizzo di utenti esperti in quanto potrebbe rendere inutilizzabile il proprio file `sources.list` in caso di repository doppi.}}}

È possibile abilitare automaticamente tutti i repository presenti nel `sources.list` togliendo tutti i caratteri hash «#» seguiti dal termine ''deb'' digitando: {{{
sudo sed -i -e "s/# deb/deb/g" /etc/apt/sources.list
}}}
e aggiornare quindi la lista dei pacchetti: {{{
Linea 96: Linea 198:
Ora il sistema è pronto per installare pacchetti provenienti da '''Universe''' e '''Multiverse'''.

= Aggiungere altri repository =

[[Immagine(Icone/Piccole/note.png,,left)]] Possono esserci molte buone ragioni per aggiungere dei repository non ufficiali alla propria lista. Per esempio, alcuni software non possono essere distribuiti da Ubuntu per motivi di licenza o brevetti (consultare [:FormatiProprietari:FormatiProprietari]). Prima di aggiungere tali repository, assicurarsi che questi canali funzionino e che il software fornito sia compatibile con Ubuntu. Repository non pensati per Ubuntu possono causare danni al proprio sistema.

 * È possibile aggiungere dei repository personalizzati inserendo semplicemente la riga apt all'interno del file. Dovrebbe essere una riga simile a questa: {{{
deb http://mirror3.ubuntulinux.nl/ dapper-seveas freenx
}}}
 
 * Aggiungere la riga alla fine del file `sources.list` e salvare il file.
 
 * Aggiornare la lista dei pacchetti: {{{

= Gestire le chiavi GPG =

Le chiavi di autenticazione sono fornite dal manutentore del repository. Solitamente vengono pubblicate all'interno di un server pubblico per la gestione delle chiavi come `www.keyserver.net`.

Può accadere che l'azione di aggiornamento della lista pacchetti eseguita con il comando: {{{
Linea 111: Linea 206:

Ora il sistema è pronto per installare pacchetti provenienti dal nuovo repository.

= Abilitare repository con uno script (non interattivo) =

Questa sezione è dedicata a utenti esperti.

 * Problema: si cerca un metodo per abilitare repository extra senza nessun input da parte dell'utente.
 * Risoluzione: si crea uno script personalizzato per una applicazione che necessita dei pacchetti dai repository '''Universe''' e '''Multiverse'''.

Quello che segue è un semplice script per abilitare i repository che sono "commentati" in una installazione predefinita di Ubuntu.
 
 * Prima di tutto, fare una copia di riserva del file `sources.list`: {{{
sudo cp /etc/apt/sources.list /etc/apt/sources.list.orig
}}}

 * Ora applicare i cambiamenti al file: {{{
sudo sed -i -e "s/# deb/deb/g" /etc/apt/sources.list
}}}
 
 * Aggiornare la lista dei pacchetti: {{{
restituisca un errore simile al seguente: {{{
W: Errore GPG: http://xxxxxx.xxxxxx.xx xxxx Release: Le seguenti firme non sono state verificate perché la chiave pubblica non è disponibile: NO_PUBKEY XYXYXYXYXYXYXY
W: È consigliabile eseguire apt-get update per correggere questi problemi
}}}

In tal caso è necessario aggiungere le chiavi di sicurezza del repository indicato dall'errore.

 0. Digitare il seguente comando in un [[AmministrazioneSistema/Terminale| terminale]]:{{{
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com CHIAVE
}}}
 sostituendo la dicitura «`CHIAVE`» con il numero della chiave pubblica che compare nell'errore.
 0. Controllare che l'inserimento della chiave sia avvenuto correttamente, digitando il seguente comando in un [[AmministrazioneSistema/Terminale| terminale]]:{{{
Linea 135: Linea 221:
Ora il sistema è pronto all'uso dei nuovi repository.

= Suggerimenti e raccomandazioni =

 * È sempre una buona idea fare una copia di riserva di file come `/etc/apt/sources.list` prima di modificarli. È così possibile, se necessario, ripristinare la versione originale. Se dovesse andare storto qualche cosa, è possibile creare un nuovo file `sources.list` da [http://www.ubuntulinux.nl/source-o-matic source-o-matic].

 * Se si decide di aggiungere altri repository al file `sources.list`, assicurarsi che tali repository funzionino con Ubuntu. Repository non pensati per funzionare con Ubuntu possono introdurre delle inconsistenze all'interno del sistema e potrebbero costringere a reinstallare il sistema. Infine, prima di aggiungere nuovi repository, assicurarsi che il software cercato non sia presente nei repository di Ubuntu.

 * Ricordarsi che in alcuni paesi non è legale utilizzare alcuni repository non di Ubuntu.

 * Potrebbe essere necessario aggiungere delle chiavi di sicurezza durante l'aggiunta di qualche repository. Consultare [:Repository/Ubuntu#chiavisicurezza:Gestire le chiavi di autenticazione] per maggiori informazioni.

 * Ricordarsi di aggiornare la lista dei pacchetti dopo i cambiamenti al file `sources.list` eseguendo il comando: {{{
sudo apt-get update
}}}
Linea 153: Linea 223:
 * [http://www.debian.org/doc/manuals/apt-howto/index.en.html Manuale Debian di apt]

 * [:Apt:apt-get]

 * [:InstallareProgrammi:Guida all'installazione dei programmi]

 * [:SourcesList:/etc/apt/sources.list ottimizzato]
 * [[AmministrazioneSistema/InstallareProgrammi/Apt|Guida a APT]]
 * [[AmministrazioneSistema/InstallareProgrammi/Aptitude|Guida a aptitude]]
 * [[AmministrazioneSistema/InstallareProgrammi|Guida all'installazione dei programmi]]
 * [[Repository/SourcesList|/etc/apt/sources.list ottimizzato]]
 * [[AmministrazioneSistema/Ppa-purge| Guida a ppa-purge]].
 * [[http://www.debian.org/doc/manuals/apt-howto/index.en.html|Manuale Debian di apt]]

----
CategoryAmministrazione


Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Questa pagina descrive come gestire i repository da riga di comando tramite l'utilizzo di un qualsiasi editor di testo, senza utilizzare appositi programmi con interfaccia grafica. Queste informazioni si rivelano utili dato che funzionano in tutte le versioni di Ubuntu.

Se invece si desidera utilizzare gli strumenti specifici della propria distribuzione, leggere le seguenti guide:

Informazioni preliminari

Apt è il programma che gestisce l'installazione dei pacchetti e la lista dei repository. Il file che contiene tale elenco è /etc/apt/sources.list e tramite la modifica di questo file è possibile aggiungere, rimuovere o disabilitare i repository.

Anche se Ubuntu conserva di default una copia del file sources.list, è buona norma creare una copia di backup del file prima di modificarlo, in modo tale da poterlo ripristinare in caso di problemi.

Per creare una copia di backup del file sources.list, digitare il seguente comando nel terminale:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup

Descrizione del file sources.list

Per controllare la validità del proprio file sources.list senza senza modificarlo, è possibile prenderne visione col seguente comando:

cat /etc/apt/sources.list

Prendendo come esempio il caso di un sistema Ubuntu 16.04.1 LTS, il contenuto dovrebbe essere simile al seguente:

# deb cdrom:[Ubuntu 16.04.1 LTS _Xenial Xerus_ - Release amd64 (20160719)]/ xenial main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://it.archive.ubuntu.com/ubuntu/ xenial main restricted
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://it.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
deb http://it.archive.ubuntu.com/ubuntu/ xenial universe
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial universe
deb http://it.archive.ubuntu.com/ubuntu/ xenial-updates universe
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://it.archive.ubuntu.com/ubuntu/ xenial multiverse
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial multiverse
deb http://it.archive.ubuntu.com/ubuntu/ xenial-updates multiverse
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://it.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
# deb-src http://it.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu xenial partner
# deb-src http://archive.canonical.com/ubuntu xenial partner

deb http://security.ubuntu.com/ubuntu xenial-security main restricted
# deb-src http://security.ubuntu.com/ubuntu xenial-security main restricted
deb http://security.ubuntu.com/ubuntu xenial-security universe
# deb-src http://security.ubuntu.com/ubuntu xenial-security universe
deb http://security.ubuntu.com/ubuntu xenial-security multiverse
# deb-src http://security.ubuntu.com/ubuntu xenial-security multiverse

Le righe di testo che iniziano con uno o due caratteri hash «#» sono commenti e servono esclusivamente per fornire informazioni all'utente. Non influiscono in alcun modo sull'operato del proprio gestore di pacchetti.

I repository vengono indicati con la seguente struttura:

tipo posizione componenti
  • Tipo, può essere:

    • deb: questi repository contengono pacchetti binari o precompilati. Sono indicati per la maggior parte degli utenti.

    • deb-src: questi repository contengono il codice sorgente dei pacchetti e sono utili agli sviluppatori. Nell'esempio precedente, tutti i repository di questo tipo sono commentati #, pertanto non vengono considerati.

  • Posizione: è l'indirizzo a cui è reperibile il server o il supporto che ospita i pacchetti, ad esempio:

  • Componenti: possono essere diversi, e vanno separati l'uno dall'altro da uno spazio, ad esempio:

    main universe multiverse
  • Può inoltre essere presente l'identificativo del rilascio di Ubuntu per cui i pacchetti sono preparati, come ad esempio nel file sopraccitato xenial, ma questa indicazione può mancare in alcuni repository non ufficiali.

Abilitare i repository

Per abilitare un repository procedere come segue:

  1. Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/apt/sources.list, quindi cancellare il simbolo hash # davanti alla riga di interesse.

  2. Salvare la modifica ed aggiornare l'elenco pacchetti, digitando il seguente comando nel terminale:

    sudo apt update
    Se non si ricevono errori, l'operazione è andata a buon fine.

In caso di errori, invece, è possibile ripristinare la situazione precedente tramite il backup precedentemente creato, digitando quindi il seguente comando nel terminale:

sudo cp /etc/apt/sources.list.backup /etc/apt/sources.list
sudo apt update

Se si desidera abilitare solo un componente di quelli presenti nella riga interessata, omettere i componenti indesiderati.

Aggiungere altri repository

Si consiglia di prestare sempre la massima attenzione nella scelta di repository affidabili e compatibili per non compromettere la sicurezza e la stabilità del proprio sistema operativo.

Possono esserci diverse ragioni per aggiungere dei repository non ufficiali alla propria lista. Ad esempio si può avere bisogno di programmi non presenti nei repository ufficiali o disponibili in questi ultimi soltanto in versioni non aggiornate, oppure di software vincolati da licenze e/o brevetti ecc.

A tal fine seguire le procedure indicate di seguito.
Dopo tali procedure sarà possibile installare o aggiornare da altri repository il software desiderato.

Per controllare se siano già presenti repository esterni:

  1. Visionare il file /etc/apt/sources.list come indicato nel precedente paragrafo, verificando che non siano presenti ulteriori righe oltre quelle relative ai repository ufficiali.

  2. Digitare il seguente comando nel terminale:

    ls /etc/apt/sources.list.d

    verificando la presenza di eventuali file con estensione .list. Analogamente a /etc/apt/sources.list:

    • è possibile visionarne il contenuto tramite il comando:

      cat /etc/apt/sources.list.d/nome_file.list
    • eventuali righe che iniziano con il simbolo # sono commentate e non vengono prese in considerazione.

Repository di terze parti

  1. Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/apt/sources.list;

  2. Inserire a fondo pagina il repository desiderato, quindi salvare il file;
  3. Aggiornare la lista dei repository, digitando il seguente comando nel terminale:

    sudo apt update

Tuttavia, per evitare modifiche accidentali indesiderate al file /etc/apt/sources.list, si consiglia di utilizzare la seguente procedura alternativa:

  1. Aprire un editor di testo con i privilegi di amministrazione e scrivere il repository desiderato;

  2. Salvare il file all'interno della cartella /etc/apt/sources.list.d/ indicando come estensione .list (ad esempio virtualbox.list);

  3. Aggiornare la lista dei repository, digitando il seguente comando nel terminale:

    sudo apt update

Solitamente alcuni programmi installabili tramite pacchetto debian (quali GoogleChrome, Opera, Skype ed altri) provvedono automaticamente a generare un file relativo al proprio repository all'interno della cartella /etc/apt/sources.list.d/.

Aggiungere repository launchpad

Se il repository si trova sulla piattaforma Launchpad è possibile seguire una procedura automatizzata:

  1. Solo se si è su sistema minimale, installare il pacchetto software-properties-common.

  2. Digitare nel terminale un comando che abbia la seguente sintassi:

    sudo add-apt-repository ppa:utente/nome-ppa

    avendo cura di sostituire «utente» con il nome del profilo launchpad del manutentore del repository e «nome-ppa» con il nome del repository (ad esempio ppa:libreoffice/ppa);

  3. Se in uso Ubuntu 16.04 o precedente, aggiornare la lista dei repository digitando il seguente comando nel terminale:

    sudo apt update
    Al contrario, su Ubuntu 18.04 l'update non sarà necessario (verrà eseguito automaticamente).

Se la procedura è andata a buon fine, il repository launchpad verrà salvato in un file aggiuntivo all'interno della cartella /etc/apt/sources.list.d/.
Per annullare le modifiche effettuate tramite questa procedura, è possibile seguire le istruzioni di questa guida.

Solitamente sulle pagine della piattaforma launchpad sono riportate istruzioni relative comandi da eseguire da terminale.

Abilitare automaticamente tutti i repository

Questo comando è destinato all'utilizzo di utenti esperti in quanto potrebbe rendere inutilizzabile il proprio file sources.list in caso di repository doppi.

È possibile abilitare automaticamente tutti i repository presenti nel sources.list togliendo tutti i caratteri hash «#» seguiti dal termine deb digitando:

sudo sed -i -e "s/# deb/deb/g" /etc/apt/sources.list

e aggiornare quindi la lista dei pacchetti:

sudo apt-get update

Gestire le chiavi GPG

Le chiavi di autenticazione sono fornite dal manutentore del repository. Solitamente vengono pubblicate all'interno di un server pubblico per la gestione delle chiavi come www.keyserver.net.

Può accadere che l'azione di aggiornamento della lista pacchetti eseguita con il comando:

sudo apt-get update

restituisca un errore simile al seguente:

W: Errore GPG: http://xxxxxx.xxxxxx.xx xxxx Release: Le seguenti firme non sono state verificate perché la chiave pubblica non è disponibile: NO_PUBKEY XYXYXYXYXYXYXY
W: È consigliabile eseguire apt-get update per correggere questi problemi

In tal caso è necessario aggiungere le chiavi di sicurezza del repository indicato dall'errore.

  1. Digitare il seguente comando in un terminale:

    sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com CHIAVE

    sostituendo la dicitura «CHIAVE» con il numero della chiave pubblica che compare nell'errore.

  2. Controllare che l'inserimento della chiave sia avvenuto correttamente, digitando il seguente comando in un terminale:

    sudo apt-get update

Ulteriori risorse


CategoryAmministrazione