[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ successivo ]
Nello svolgere le sue operazioni APT usa un file che contiene la lista delle "sorgenti APT" dalle quali può attingere i pacchetti. Questo file è /etc/apt/sources.list.
Il contenuto di questo file ha normalmente il seguente formato:
deb http://host/debian distribuzione sezione1 sezione2 sezione3 deb-src http://host/debian distribuzione sezione1 sezione2 sezione3
È da osservare che l'esempio sopra è fittizio e non dovrebbe essere usato. La prima parola di ogni riga, deb o deb-src, indica il tipo di archivio: deb se contiene pacchetti binari cioè i pacchetti già compilati e normalmente utilizzati, o deb-src se l'archivio contiene pacchetti sorgente cioè il codice originale del programma con l'aggiunta del file di controllo (.dsc) e del file diff.gz che contiene i cambiamenti necessari per debianizzare il programma, vedere Compilazione dei sorgenti, Capitolo 5.
Nell'esempio precedente la parola distribuzione definisce quale versione di Debian si vuole usare. Si possono usare i nomi generici, come "stable" e "testing", oppure i nomi prorpi, come "sarge" e "etch". Supponendo che l'attuale versione testing sia "etch" e che si voglia continuare a seguire "etch" anche quando diventerà stable, si dovrà usare "etch" al posto di distribuzione, invece si dovrebbe usare "testing" se si vuole continuare a seguire la versione testing.
Quindi, se si vuole avere sempre l'ultima distribuzione stable e aggiornarla non appena è disponibile una nuova release si dovrebbe usare "stable" come distribuzione. Notare che questa può non essere una buona idea, infatti si potrebbe voler pianificare l'aggiornamento fra le release dato che, qualche volta, è un'operazione che richiede qualcosa di più della semplice risposta a delle domande, inoltre si dovrebbero fare dei test e un backup prima di procedere. Per questi motivi si consiglia di usare sempre i nomi in codice delle release.
Generalmente questo è il contenuto predefinito di sources.list:
deb http://http.us.debian.org/debian stable main deb http://security.debian.org stable/updates main #deb-src http://http.us.debian.org/debian stable #deb-src http://security.debian.org stable/updates main
Queste righe sono quelle necessarie per un'installazione base. La prima delle righe che iniziano con deb punta all'archivio ufficiale, la seconda all'archivio degli aggiornamenti di sicurezza Debian.
Le ultime due righe sono commentate (con un "#" all'inizio), così verranno ignorate da APT. Queste iniziano con deb-src e puntano agli archivi che contengono i pacchetti sorgente. Se si scaricano spesso i sorgenti di un programma per fare dei test o per ricompilarlo, è necessario togliere il "#" all'inizio delle righe.
In /etc/apt/sources.list si possono specificare diversi tipi di righe. APT sa come trattare i seguenti tipi di archivio http, ftp, file (file locali, per esempio una directory su cui è montato un filesystem ISO9660) e ssh.
Nota: ogni volta che si vuole aggiungere una sorgente APT da cui recuperare dei pacchetti si deve modificare questo file.
Non scordarsi di aggiornare l'elenco dei pacchetti dopo aver modificato il file /etc/apt/source.list, vedere Aggiornamento dell'elenco dei pacchetti disponibili, Sezione 4.2. Questa operazione permettere ad APT di sapere quali pacchetti sono disponibili dalle sorgenti specificate.
A partire dalla versione 0.6 di APT, i pacchetti sono autenticati per garantire che provengano dalla sorgente che loro stessi dichiarano, questa è una ulteriore funzione per assicurare la sicurezza. Se il sistema non è in grado di autenticare il pacchetto durante l'installazione viene chiesto se si vuole interrompere l'installazione.
Poiché l'autenticazione è basata su metodi criptografici, APT gestisce un proprio portachiavi. Ciascuna riga nel file sources.list deve avere una chiave corrispondente, nel caso si usino delle sorgenti APT non ufficiali è possibile che la sorgente non possa essere autenticata, si consiglia di prendere contatto con chi gestisce la sorgente e di incoraggiarlo a implementare l'autenticazione del proprio sito.
Per trarre vantaggio da questa funzionalità di sicurezza è necessario
aggiungere una chiave al portachiavi di APT per ogni sorgente autenticata.
Questo può essere fatto con GPG, ma APT fornisce un apposito strumento,
apt-key
, che è un'interfaccia semplificata a GPG.
apt-key
è semplice da usare. La parte complicata del processo è
recuperare una chiave per ogni sorgente e assicurasi che si possa avere fiducia
di quella chiave.
La chiave dell'archivio Debian viene installata in
/usr/share/apt/debian-archive.gpg
, quindi la semplice aggiunta
della chiave di un archivio ufficiale a questo file sufficiente per inserire la
chiave nel portachiavi di APT:
# apt-key add /usr/share/apt/debian-archive.gpg
Per le sorgenti esterne, non ufficiali, è necessario trovare le loro chiavi pubbliche in modo da poterle importare nel portachiavi di APT.
Se per qualsiasi motivo si vuole disattivare il controllo criptografico dei file Release si deve aggiungere la seguente riga nel file di configurazione di APT (si consulti Il file di configurazione di APT, Sezione 3.4):
APT::Get::AllowUnauthenticated "true";
Se si vuole usare un CD-ROM per installare i pacchetti o per aggiornare il
sistema automaticamente con APT, va inserito nel file
sources.list. Per farlo si può usare il programma
apt-cdrom
in questo modo:
# apt-cdrom add
con un CD-ROM di Debian nel lettore. Questa istruzione eseguirà il mount del CD-ROM e, se il CD è valido, verranno cercate le informazioni sui pacchetti che sono sul disco. Se la configurazione del CD-ROM è un po' inusuale, si possono usare le seguenti opzioni:
-h - Questo aiuto -d directory - Mount point del CDROM -r - Rinomina un CDROM già riconosciuto -m - Nessun montaggio -f - Modalità veloce, non controlla i file dei pacchetti -a - Scansione in modalità accurata
Per esempio:
# apt-cdrom -d /home/kov/mycdrom add
Si può controllare l'identità di un CD-ROM, senza inserirlo nella lista:
# apt-cdrom ident
Notare che questo programma funziona solo se il CD-ROM è correttamente configurato in /etc/fstab.
APT usa /etc/apt/apt.conf
come file di configurazione principale.
Nonostante la normale installazione non crei questo file si può crearlo e
inserirvi all'interno le proprie modifiche. Se si preferisce si può usare
anche un sistema più modulare di gestione della configurazione: si possono
mettere dei singoli file con il qualsiasi nome si desideri nella directory
/etc/apt/apt.conf.d/
.
Se si sceglie la modalità modulare si deve prestare attenzione a due cose: alcuni dei pacchetti Debian scrivono parte della loro configurazione nella directory quindi si devono prevenire delle sovrapposizioni fra i nomi dei file, per esempio aggiungendo il suffisso -local al nome. Inoltre la configurazione viene letta seguendo l'ordine alfabetico dei nomi dei file quindi si può aggiungere un numero all'inizio del nome per posizionarlo correttamente nella sequenza. Per esempio si può nominare un file 00000myconf-local se si vuole essere sicuri che questo file sia il primo che viene considerato.
Per conoscere la sintassi e le opzioni accettate in questi file di configurazione controllare la pagina man di apt.conf(5).
APT usa un algoritmo con priorità per decidere da quale repository recuperare un certo pacchetto. Segue un semplice esempio:
$ apt-cache policy apt-howto apt-howto: Installato: 1.8.10.3-1 Candidato: 1.8.11-1 Tabella versione: 1.8.11-1 0 500 http://ftp.nl.debian.org sid/main Packages *** 1.8.10.3-1 0 500 http://ftp.nl.debian.org sarge/main Packages 100 /var/lib/dpkg/status
Ci sono due sorgenti: una per sid e una per sarge.
La versione installata è segnata da ***. Si capisce che è quella
installata anche perché viene citato il file /var/lib/dpkg/status
che contiene le informazioni sullo stato attuale del sistema. Si può anche
vedere che il pacchetto proviene da sarge e che è disponibile anche la versione
per sid.
Come si può vedere APT dà priorità 100 ai pacchetti installati e 500 a tutte le altre sorgenti con una eccezione: la versione experimental, che, come già visto, viene gestita in modo speciale da parecchi strumenti. APT preferisce installare i pacchetti dalle sorgenti con priorità più alta e a parità di priorità installa il pacchetto con il numero di versione più grande. Come si può vedere il campo Candidato, che elenca la versione più recente, indica come candidata all'installazione la versione proveniente da unstable: APT vorrebbe aggiornare il pacchetto.
Se si vuole prendere da sid solo alcuni pacchetti e non si vuole che APT consideri i pacchetti provenienti da questa sorgente come candidati per l'aggiornamento si deve giocare un po' sulla priorità della sorgente. In particolare si deve usare il campo Archive del file Release relativo alla sorgente di cui si vuole modificare la priorità. All'interno del file Release, scaricato durante il processo di aggiornamento, si può trovare:
# grep ^Archive /var/lib/apt/lists/ftp.nl.debian.org_debian_dists_sarge_main_binary-i386_Release Archive: stable
Notare che il nome del file cambia in base alla sorgente. Per far in modo che
APT mantenga i pacchetti nella versione presente in stable si deve aggiungere
un file contenente la seguente riga in /etc/apt/apt.conf.d/
:
APT::Default-Release "stable";
Di conseguenza la policy APT si modifica in questo modo:
$ apt-cache policy apt-howto apt-howto: Installato: 1.8.10.3-1 Candidato: 1.8.10.3-1 Tebella versione: 1.8.11-1 0 500 http://ftp.nl.debian.org sid/main Packages *** 1.8.10.3-1 0 990 http://ftp.nl.debian.org sarge/main Packages 100 /var/lib/dpkg/status
APT dà una priorità di 990 a tutti i pacchetti provenienti dalla sorgente predefinita, invece le altre sorgenti rimangono identiche all'esempio precedente. La priorità dei pacchetti installati dalle altre sorgenti passa da 100 a 500. APT non li retrocede perché considera la retrocessione solo le priorità superiori a 1000. Questo significa che APT non fa l'aggiornamento automatico delle versioni provenienti dalle sorgenti diverse da quella predefinita, l'unico modo è utilizzare uno strumento che aggiri questo comportamento, come per esempio aptitude.
È anche possibile definire una priorità per gruppi di pacchetti
basandosi su molti criteri tramite il file di configurazione
/etc/apt/preferences
. Si può anche provare a convincere APT a
fare la retrocessione completa del sistema, quest'operazione non è supportata e
non dovrebbe essere provata da chi ha problemi di cuore. Si possono avere
altre informazioni a riguardo leggendo la pagina di manuale di
apt_preferences(5).
Se si sta usando APT in una rete in cui tutte le connessioni http e ftp sono
realizzate attraverso un proxy allora si può impostare APT in modo che usi
questo proxy. Si può farlo modificando il file di configurazione
/etc/apt/apt.conf
o inserendo un file di configurazione nella
directory /etc/apt/apt.conf.d/
, che semplifica l'organizzazione
delle configurazioni (vedere Il file di configurazione di
APT, Sezione 3.4).
Se questo file non esiste si deve crearlo e aggiungere delle righe come queste:
Acquire::http::proxy "http://proxy:port"; Acquire::ftp::proxy "http://proxy:port";
Sostituire proxy e port con i valori forniti dal vostro amministratore di rete, se il proxy lo richiede è anche possibile specificare utente e password in questo modo:
Acquire::http::proxy "http://utente:password@proxy:port";
Ci sono molte altre opzioni di APT che si possono impostare nel file di
configurazione /etc/apt/apt.conf
, vedere Il
file di configurazione di APT, Sezione 3.4.
[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ successivo ]
APT HOWTO
2.0.2 - October 2006kov@debian.org