[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ successivo ]
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.
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
.
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.
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.
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 2004kov@debian.org