[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ successivo ]


APT HOWTO
Capitolo 6 - Trucchi e tecniche


6.1 Come installare pacchetti "on demand"

Si sta compilando un programma e, improvvisamente, boom! Si verifica un errore perché è necessario un file .h che non è installato. Il programma auto-apt, disponibile nell'omonimo pacchetto, può risolvere questa situazione. Ferma l'esecuzione del processo principale, chiede di installare i pacchetti necessari e, una volta installati, prosegue nell'esecuzione del processo principale.

Quello che si deve fare è lanciare:

     # auto-apt run comando

Dove "comando" è il comando che deve essere eseguito a cui potrebbero mancare alcuni file. Per esempio:

     # auto-apt run ./configure

Questo chiederà di installare i pacchetti necessari e, se li vogliamo installare, chiama automaticamente apt-get. Gli utenti che usano X possono usare anche un'interfaccia grafica anziché la normale interfaccia testuale.

Per funzionare correttamente auto-apt usa un database che deve essere tenuto aggiornato. Questo può essere fatto usando i commandi auto-apt update, auto-apt updatedb e auto-apt update-local.


6.2 Caching dei pacchetti

Nel caso si debbano gestire molte macchine in rete può risultare molto utile l'uso di un sistema di caching dei pacchetti in modo che non sia necessario scaricare i pacchetti per ogni macchina. Questo manuale si concentra sul pacchetto apt-proxy che fa esattamente questa cosa anche se sono possibili altre soluzioni come apt-cacher, si possono provare entrambe le soluzioni e scegliere quella che si adatta meglio alle proprie necessità.

Per prima cosa installare il pacchetto apt-proxy. Si registrerà da solo su inetd per ascoltare le richieste sulla porta 9999, potrebbe essere necessario riavviare il servizio inetd.

Successivamente si deve modificare il file /etc/apt-proxy/apt-proxy.conf. Questo file elenca i server che realmente apt-proxy usarà per scaricare l'elenco dei pacchetti e i pacchetti. Si possono usare i metodi di trasferimento http, ftp, e rsync. Il file contiene dei backend predefiniti:

     add_backend /debian/                                    \ 
             $APT_PROXY_CACHE/debian/                        \ 
             http://ftp.us.debian.org/debian/                \ 
             http://ftp.de.debian.org/debian/                \ 
             http://ftp.uk.debian.org/debian/                \ 
             +ftp.us.debian.org::debian/

Questo comporta che quando un client tenta di prelevare qualcosa da /debian/ apt-proxy userà per prima cosa la propria cache, poi i mirror Debian http elencati e infine un server rsync. Questo server è quello preferito per scaricare l'elenco dei pacchetti (il segno "+" significa preferito per i file di controllo).

Come fanno i client a usare questo backend? Aggiungendo la seguente riga al file /etc/apt/sources.list dei client (compresa la macchina su cui è installato apt-proxy):

     deb http://server:9999/debian/ stable main

La riga assomiglia moltissimo a una riga normale, la differenza è che si specifica il proprio server apt-proxy nel posto in cui normalmente si inserisce un mirror http o ftp, che si specifica il numero di porta (9999) e infine che si seleziona il backend (/debian/). Dopo tutte queste impostazioni iniziali aggiornare l'elenco dei pacchetti e aggiornare i pacchetti su solo una delle macchine in modo che i pacchetti siano scaricati solo per la prima volta. Dopo aver completato l'aggiornamento della prima macchina procedere con le altre.

Si può usare il comando apt-proxy-import per importare i pacchetti che al momento si trovano nella cache di APT (/var/cache/apt/archives/) eseguendo apt-proxy-import /var/cache/apt/archives. Notare che è necessario eseguire il processo di aggiornamento almeno su un client per inizializzare la cache di apt-proxy prima di usare apt-proxy-import.

Si possono avere altre informazioni su apt-proxy leggendo i commenti che popolano il file /etc/apt-proxy/apt-proxy.conf. Per esempio, alla fine del file si trovano le configurazioni di esempio per impostare i proxy http e ftp a usare apt-proxy.


6.3 Scegliere il miglior mirror da inserire in sources.list: netselect, netselect-apt

Un dubbio molto frequente, in particolare per nuovi utenti, è: "quale mirror inserire in sources.list?". Ci sono molti modi per deciderlo. Gli utenti esperti probabilmente hanno uno script che misura il tempo di ping verso svariati mirror. Ma c'è un programma che fa questo per noi: netselect.

Per installare netselect, generalmente si esegue:

     # aptitude install netselect

Eseguendo netselect senza alcun argomento viene mostrato un breve elenco delle opzioni. Eseguendolo con una lista di host separati da uno spazio come argomento visualizzerà un punteggio e il nome di uno degli host. Il punteggio prende in considerazione il tempo di ping e gli hop (numero di nodi della rete che si deve attraversare per raggiungere la destinazione) ed è inversamente proporzionale alla velocità di download stimata (il più basso è il migliore). Il nome mostrato è quello dell'host che ha il punteggio più basso (la lista completa dei punteggi si ottiene usando l'opzione -vv). Osservare questo esempio:

     # netselect ftp.debian.org http.us.debian.org ftp.at.debian.org download.unesp.br ftp.debian.org.br
       365 ftp.debian.org.br
     #

Significa che, fra i mirror indicati nella riga di comando, ftp.debian.org.br era il migliore, con un punteggio di 365. (Attenzione!! Questo risultato è stato ottenuto su un certo computer e per un certo tipo d'accesso alla rete, quindi questo valore non è assolutamente di validità generale).

Ora è necessario aggiungere il mirror più veloce nel file /etc/apt/sources.list (vedere Il file /etc/apt/sources.list, Sezione 2.1) e seguire i suggerimenti in Gestione dei pacchetti, Capitolo 3.

Nota: la lista completa dei mirror Debian si può trovare a questo indirizzo http://www.debian.org/mirror/mirrors_full.

Dalla versione 0.3 netselect include lo script netselect-apt, che esegue automaticamente il processo descritto sopra. È sufficiente passare come parametro il ramo della distribuzione (stable è il valore predefinito) e verrà generato un nuovo sources.list con i mirror migliori per main e per non-US nella directory attuale. Il seguente esempio genera un sources.list per la distribuzione stable:

     # ls sources.list
     ls: sources.list: File or directory not found
     # netselect-apt stable
     (...)
     # ls -l sources.list
     sources.list
     #

Da ricordare: il file sources.list è creato nella directory attuale e deve essere spostato nella directory /etc/apt.


6.4 Rimuovere i file di localizzazione inutilizzati: localepurge

Molti utenti Debian usano una sola impostazione internazionale. Un utente brasiliano, per esempio, generalmente usa locale settato come pt_BR tutto il tempo e non gli interessa avere a disposizione anche es.

localepurge è uno strumento molto utile per questi utenti, infatti possono liberare molto spazio mantenendo solo i file di localizzazione che realmente usano. Per installare localepurge: apt-get install localepurge.

Questo pacchetto è veramente semplice da configurare dato che debconf guida l'utente passo dopo passo nella sua configurazione. Tuttavia si deve porre attenzione alle risposte delle prime domande, che, se non corrette, potrebbero causare la rimozione di tutti i file di localizzazione, compresi quelli che si indendeva mantenere. In questo caso, l'unico modo per ripristinare questi file è reinstallare i pacchetti che li forniscono.


6.5 Come essere informato sui cambiamenti nei pacchetti

Ogni pacchetto installa, nella sua directory dedicata alla documentazione (/usr/share/doc/pacchetto), un file chiamato changelog.Debian.gz che contiene l'elenco dei cambiamenti fatti al pacchetto sino all'ultima versione. È possibile leggere questo file usando, per esempio, zless però non è semplice, dopo un aggiornamento completo del sistema, cercare i changelog di ogni pacchetto che è stato aggiornato.

C'è un modo per automatizzare questo lavoro tramite l'uso di apt-listchanges. Per prima cosa si deve installare il pacchetto apt-listchanges. Durante l'installazione, debconf chiederà come lo si vuole configurare. Si consiglia di ricordare i seguenti suggerimenti mentre si risponde.

L'opzione "Should apt-listchanges be automatically run by apt?" è molto utile e il suo effetto è che per tutti i pacchetti che verranno installati APT mostrerà i changelog automaticamente. L'opzione "Should apt-listchanges prompt for confirmation after displaying changes?" è utile perché permette di fermare l'installazione dopo che il changelog è stato mostrato permettendo così di leggere cosa è apparso e inoltre verrà chiesto se continuare l'installazione. Se non si vuole più installare il pacchetto apt-listchanges restituirà un errore e apt interromperà l'installazione.

Dopo aver installato apt-listchanges, appena i pacchetti sono disponibili per l'installazione (scaricati, presi da un CD, ecc.) apt mostrerà i changelog di questi pacchetti prima di installarli.


[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ successivo ]


APT HOWTO

1.9.3 - Novembre 2004

Gustavo Noronha Silva kov@debian.org

Traduzione di Luca Monducci