Old:Apt-Proxy: un proxy per i pacchetti Debian: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
mNessun oggetto della modifica
mNessun oggetto della modifica
 
(24 versioni intermedie di 5 utenti non mostrate)
Riga 1: Riga 1:
Spesso abbiamo la necessit� di installare la nuova versione di un pacchetto di cui proprio non possiamo fare a meno, che per� non � disponibile per il rilascio di Debian che abbiamo installato.
{{Old}}
== Introduzione ==
In questo tutorial analizzeremo [http://apt-proxy.sourceforge.net/ apt-proxy].


Il caso pi� frequente � probabilmente quello di un' installazione di Testing (Etch) con la necessit� di installare anche pacchetti presenti solo in Unstable o in Experimental, oppure di voler usare un repository con pacchetti particolari, ma compilati per una release di Debian diversa dalla nostra.
Apt-proxy è un comodo strumento per mantenere una cache dei pacchetti Debian già scaricati, riuscendo così a velocizzare il download da parte di altri client connessi alla stessa LAN ed a risparmiare un po' di banda, soprattutto nei casi in cui questa è a pagamento. =)


APT � nostro fido alleato anche in questi frangenti, permettendoci di utilizzare fonti per pacchetti di releases diverse (e soddisfarne le dipendenze) senza costringerci ad un upgrade dell' intera distribuzione e senza dover impazzire per risolvere conflitti e inconsistenze.
== Installazione ==
Per installarlo è sufficiente dare il seguente comando:
<pre>
# apt-get install apt-proxy
</pre>
 
{{Box|NOTA|In questo periodo sta avvenendo la transizione tra la versione 1 e la versione 2. In questo howto verranno analizzate entrambe le versioni, e verrà illustrato anche il passaggio dalla v1 alla v2.}}


In questo how-to mostrer come utilizzare pacchetti Debian provenienti da Testing, Unstable, Experimental, Marillat (multimedia/video) e Rarewares.org (multimedia/audio), ma le istruzioni sono facilmente riportabili anche ad altre situazioni (unstable + experimental, stable + testing, stable + unstable, stable + testing + unstable, ecc...).


Assicuriamoci di essere l' utente root e procediamo.
== Configurazione ==
 
=== Versione 1 ===
 
La configurazione è molto semplice; tutti i parametri sono contenuti in un file:
<code>/etc/apt-proxy/apt-proxy.conf</code>.
 
Ne riporto una versione semplificata, in cui le varie variabili di
configurazione sono commentate:


Per prima cosa editiamo il file '''/etc/apt/sources.list''' ed inseriamo gli archivi dei pacchetti Debian che utilizzeremo:
<pre>
<pre>
### Debian Ufficiale -- Sarge
-------------------------------------------------------
deb http://ftp.it.debian.org/debian/ testing main non-free contrib
# imposta la directory in cui salvare al cache
APT_PROXY_CACHE=/var/cache/apt-proxy
 
# Esempio per il repository ufficiale Debian
# Debian main
#
# Qui di seguito sono riportate le righe da inserire in un ipotetico
sources.list
# ovviamente sostituendo APTPROXY con l'indirizzo del server che funge da proxy.
#deb http://APTPROXY:9999/debian stable main contrib non-free
#deb http://APTPROXY:9999/debian woody main contrib non-free
#deb http://APTPROXY:9999/debian sarge main contrib non-free
#deb http://APTPROXY:9999/debian sid main contrib non-free
#deb http://APTPROXY:9999/debian project/experimental/main/binary-$(ARCH)/
 
# Qui aggiungiamo un backend, indicando la directory in cui verrà creata la
cache
# La prima riga contiene la dichiarazione del backend, la seconda indica un
repository
# locale (quello della cache), dalla seconda alla penultima sono indicati i vari
mirror
# ufficiali, l'ultima indica un collegamento `alternativo` a http, cioè via
ftp...
# Da notare l'importanza delle backslash a fine riga (ultima riga esclusa)
add_backend /debian/
$APT_PROXY_CACHE/debian/
http://ftp2.it.debian.org/debian/  
# http://ftp.de.debian.org/debian/
# http://ftp.uk.debian.org/debian/
# +ftp.us.debian.org::debian/
 
 
 
############################## OTHER VARS ##################################
# Qui sono presenti le variabili di configurazione
#
# Dopo quanti giorni devono essere eliminati i pacchetti vecchi;
# Se impostata a 0, attiva l'eliminazione immediata dei vecchi pacchetti
(sconsigliata)
CLEANUP_DAYS=14
 
# Dopo quanti giorni verranno cancellati i pacchetti considerati vecchi,
raramente utilizzati
# Commentarla per disabilitare questa funzione.
CLEAN_SWEEP=60
 
# Il numero massimo di versioni di un pacchetto da conservare in memoria.
# Commentarla per disabilitare questa funzione.
MAX_VERSIONS=2
 
# Frequenza massima, in minuti, degli aggiornamenti dei pacchetti
# Impostare un valore abbastanza alto per avere delle buone performance.
BACKEND_FREQ=240
 
# Quanti secondi devono passare prima che RSYNC vada in TimeOut
RSYNC_TIMEOUT=30


### Debian Ufficiale -- Sarge Sicurezza
# Quanti secondi devono passare prima che RSYNC vada in TimeOut
deb http://security.debian.org/ testing/updates main contrib non-free
WGET_TIMEOUT=30


### Debian Ufficiale -- Sid
# Consente di impostare il path dell'eseguibile di wget e/o di appendere delle
deb http://ftp.it.debian.org/debian/ unstable main non-free contrib
opzioni all'eseguibile
#WGET=wget


###  Debian Ufficiale -- Experimental
# Consente di impostare il path dell'eseguibile di rsync e/o di appendere delle
deb http://ftp.debian.org/debian/ ../project/experimental main
opzioni all'eseguibile
#RSYNC=rsync


### Multimedia -- Audio -- Rarewares
# Per appoggiarsi ad un proxy per il download dei pacchetti:
deb http://www.rarewares.org/debian/packages/unstable ./
#export http_proxy=http://proxy:8080/
#export ftp_proxy=http://proxy:8080/
# in caso di necessità, è possibile gestire l'autenticazione:
#export http_proxy=http://user:pass@proxy:8080/
#export ftp_proxy=http://user:pass@proxy:8080/


### Multimedia -- Video -- Marillat
-------------------------------------------------------
deb ftp://ftp.nerim.net/debian-marillat/ etch main
deb ftp://ftp.nerim.net/debian-marillat/ sid main
</pre>
</pre>


A questo punto dobbiamo preparare due files normalmente non presenti sulla nostra debianbox: si tratta dei file '''preferences''' e '''apt.conf'''.
Questi due file istruiranno APT su come gestire le dipendenze dei pacchetti, informandolo su come comportarsi in caso di conflitti e altri problemi.


Creiamo il file preferences:
=== Versione 2 ===
In questo periodo è stata rilasciata la versione 2 di [http://apt-proxy.sourceforge.net/ apt-proxy ]. Le migliorie sono tante, e invito a fare una visitina al sito ufficiale.
 
Prima di passare all'analisi del nuovo file di configurazione, vorrei sottolineare che, ora, apt-proxy gira come servizio, con relativo script di
avvio/riavvio/stop: <code>/etc/init.d/apt-proxy</code>. Questo vuole dire che, ogni volta che viene modificato il file, conviene riavviare il server apt-proxy.
 
Analizziamo il file di configurazione di questa nuova versione. Come per il file di configurazione precedente, l'esempio riportato presenta dei commenti per i vari parametri.
 
<pre>
<pre>
# touch /etc/apt/preferences
[DEFAULT]
</pre>
;; Tutti i valori usati per il tempo sono espressi in secondi, è possibile
editiamolo col nostro editor di fiducia e inseriamo queste direttive:
;; però indicarli anche in minuti(m), ore(h) o giorni(d), posponendo al numero
<pre>
;; la lettera distintiva dell'unità di misura.
Package: *
 
Pin: release o=xmixahlx
;; È possibile impostare l'IP al quale risponde il server
Pin-Priority: 950
;; utile per limitare l'accesso (ad esempio non renderlo accessibile
;; dall'esterno)
;address = 192.168.0.254
 
;; Porta a cui il server presta ascolto
port = 9999
 
;; Intervallo di refresh per i file di controllo (Packages/Sources/Contents)
;;
;; Età minima di un file prima di aggiornarlo
min_refresh_delay = 1h
 
;; Vita minima di un file prima che venga aggiornato (NOT YET IMPLEMENTED)
;min_age = 23h
 
;; Rimuovi il commento da questa direttiva per fare in modo che
;; apt-proxy continui a scaricare anche se il client si disconnette.
;; Utile per connessioni always-on (ADSL...), probabilmente non è una
;; buona idea per connessioni dial-up (modem 56k).
;; complete_clientless_downloads = 1
 
;; Debugging settings.
;; for all debug information use this:
;; debug = all:9
debug = all:4 db:0
 
;; Debugging remote python console
;; Do not enable in an untrusted environment
;telnet_port = 9998
;telnet_user = apt-proxy
;telnet_password = secret
 
;; Timeout mentre si ricevono dati da un server
timeout = 15
 
;; Cache directory di apt-proxy
cache_dir = /var/cache/apt-proxy
 
;; Usare FTP passivo? (default=on)
;passive_ftp = on
 
;; Usare un proxy HTTP?
;http_proxy = [username:password@]host:port
 
;; Limit download rate from backend servers (http and rsync only), in bytes/sec
;bandwidth_limit = 100000
 
;;--------------------------------------------------------------
;; Cache housekeeping
 
;; Time to perform periodic housekeeping:
;;  - delete files that have not been accessed in max_age
;;  - scan cache directories and update internal tables
cleanup_freq = 1d
 
;; Maximum age of files before deletion from the cache (seconds)
max_age = 120d
 
;; Maximum number of versions of a .deb to keep per distribution
max_versions = 3
 
;; Add HTTP backends dynamicaly if not already defined? (default=on)
;dynamic_backends = on


Package: *
;;---------------------------------------------------------------
Pin: release o=Unofficial Multimedia Packages
;;---------------------------------------------------------------
Pin-Priority: 900
;; Backend servers
;;
;; Disporre ogni server nella sua sezione [section]


Package: *
;[debian]
Pin: release a=testing
;Questo backend è stato commentato, per prevenire problemi durante
Pin-Priority: 850
;l'importazione dei backend dalla versione 1
;
;;; The main Debian archive
;;; è possibile sovrascrivere la direttiva `timeout` di default:
;;timeout = 30
;
;;; Backend server, in ordine di preferenza
;backends =
;      http://ftp.us.debian.org/debian
;      http://ftp.de.debian.org/debian
;      http://ftp2.de.debian.org/debian
;      ftp://ftp.uk.debian.org/debian
;
;min_refresh_delay = 1d
;
;[security]
;Questo backend è stato commentato, per prevenire problemi durante
;l'importazione dei backend dalla versione 1
;
;;; Debian security archive
;backends =
;      http://security.debian.org/debian-security
;      http://ftp2.de.debian.org/debian-security
;
;min_refresh_delay = 1m
;
;[ubuntu]
;;; Ubuntu archive
;backends = http://archive.ubuntu.com/ubuntu
;min_refresh_delay = 15m
;
;[ubuntu-security]
;;; Ubuntu security updates
;backends = http://security.ubuntu.com/ubuntu
;min_refresh_delay = 1m


Package: *
;[backports.org]
Pin: release a=unstable
;; backports.org
Pin-Priority: 800
;backends = http://backports.org/debian
min_refresh_delay = 1d


Package: *
;;[blackdown]
Pin: release a=experimental
;;; Blackdown Java
Pin-Priority: 750
;;backends = http://ftp.gwdg.de/pub/languages/java/linux/debian
</pre>
;min_refresh_delay = 1d


Il pinning pu� essere orientato ad un archivio, un'origine, la versione di un pacchetto, un componente, ecc...
;[debian-people]
;; people.debian.org
;backends = http://people.debian.org


Con '''"o="''' si specifica l' origine (la distribuzione) del pacchetto, con '''"a="''' l'archivio (sarge,sid, stable, ecc...).
;[emdebian]
;; The Emdebian project
;backends = http://emdebian.sourceforge.net/emdebian


Questo dato � reperibile in modo inequivocabile attraverso APT, andando a sbirciare all'interno del file "Release" che � contenuto in tutti i  repository ufficiali. Per archivi personali e/o non ufficiali, invece, non � sempre e necessariamente presente (purtroppo).
;[rsync]
;; Un esempio di utilizzo con un server rsync. Non è raccomandato
;; il suo utilizzo, a meno che non sia l'unico servizio disponibile:
;; rsync è molto efficiente solo nel trasferimento di dati non compressi
;; e carica molto il server.
;backends = rsync://ftp.uk.debian.org/debian


Vediamo alcuni esempi:
;[gnuab]
;; Debian GNU/Hurd-related tools
;backends = http://ftp.gnuab.org/debian


<pre>
[debian]
# cd /var/lib/apt/lists
backends =
# cat www.rarewares.org_debian_packages_unstable_._Release
        http://ftp.it.debian.org/debian
Archive: unstable
Origin: xmixahlx                    
Label: xmixahlx_rarewares-unstable
Architecture: i386


# cat ftp.nerim.net_debian-marillat_dists_testing_main_binary-i386_Release
[security]
Archive: testing
backends =
Component: main
        http://security.debian.org
Origin: Unofficial Multimedia Packages
Label: Unofficial Multimedia Packages
Architecture: i386
</pre>


Dove:
[blackdown]
* '''Archive''' = � l' archivio Debian a cui i pacchetti appartengono (ad es.: stable, testing. ecc...);
backends =
* '''Component''' = indica il tipo di componente (ad es.: main, contrib, non-free);
        http://ftp.gwdg.de/pub/languages/java/linux/debian
* '''Origin''' = specifica il proprietario del repository;
* '''Label''' = identifica il repository: potete inserire descrizioni, ecc...;
* '''Architecture''' = l'architettura dei pacchetti contenuti nel repository (ad es.: i386, sparc, source, ecc...).  


Possiamo vedere che nel file Release � contenuto proprio il dato che stavamo cercando: Origin.
[marillat]
backends =
        ftp://ftp.nerim.net/debian-marillat


Ora creiamo il file apt-conf
[jedit]
backends =
        http://dl.sourceforge.net/sourceforge/jedit


<pre>
[mythtv]
# touch /etc/apt/apt.conf
backends =
        http://dijkstra.csh.rit.edu:8088/~mdz/debian/
</pre>
</pre>


editiamolo inserendo quanto segue:
Ok, ora abbiamo visto il file di configurazione, che dire: semplicissimo!
Prima di concludere la parte relativa alla configurazione del server, vorrei
mostrare alcuni comandi importanti, utili per la configurazione e l'utilizzo
di apt-proxy:
 
<code>'''apt-proxy-import'''</code> -- Comando utilissimo durante la prima installazione: consente di importare dei pacchetti Debian già scaricati nella cache di apt-proxy. Utilizzo:
<pre>
# apt-proxy-import /dir/contenente/i/pacchetti
</pre>
In generale, i pacchetti vengono automaticamente scaricati da APT nella directory <code>/var/cache/apt/archives</code>, questo è quindi il percorso da usare più comune.


<code>'''apt-proxy-v1tov2'''</code> -- Comodissima utility che converte il file di configurazione della versione 1 in uno compatibile con la versione 2. Utilizzo:
<pre>
<pre>
APT::Default-Release "testing";
# apt-proxy-v1tov2 [v1_conf [v2_sample_conf]] > v2_conf
APT::Cache-Limit 10000000;
Apt::Get::Purge;
APT::Clean-Installed;
APT::Get::Fix-Broken;
APT::Get::Fix-Missing;
APT::Get::Show-Upgraded "true";
</pre>
</pre>
Di default utilizza <code>/etc/apt-proxy/apt-proxy.conf</code> per <code>v1_conf</code> e <code>/etc/apt-proxy/apt-proxy-v2.conf</code> per <code>v2_sample_conf</code>.


Facciamo l' update del database dei pacchetti:
<code>'''/etc/init.d/apt-proxy [start|stop|restart|force-reload]'''</code> -- Script di gestione di apt-proxy:
*<code>start</code>: avvia il server;
*<code>stop</code>: lo arresta;
*<code>restart</code>: lo riavvia;
*<code>force-reload</code>: forza la rilettura del file di configurazione.


== Utilizzo ==
Niente di più semplice: basta modificare il proprio <code>/etc/apt/sources.list</code> mettendo come server <code>indirizzo_server:9999</code>
=== Esempio ===
Se prima, nel nostro <code>sources.list</code> avevamo una riga del tipo:
<pre>
<pre>
# apt-get update
deb http://ftp2.it.debian.org/debian/ testing main
non-free contrib
</pre>
</pre>
non ci basterà che seguire questi passi, per configurare il server e i client:


D'ora in avanti avremo due possibilit� per installare un nuovo pacchetto: il metodo che usiamo di solito e cio�:
1) inseriamo il backend nel server, se non è già presente:  
<pre>[debian]
backends =
http://ftp2.it.debian.org/debian/
</pre>


2) modifichiamo il <code>sources.list</code> dei client:
<pre>
<pre>
# apt-get install nome_pacchetto
deb http://indirizzoserver:9999/debian/ testing main non-free contrib
</pre>
</pre>


che utilizzer� pacchetti proveniente dalla versione impostata come '''Default-Release''' in '''apt.conf''', oppure il comando
3) aggiorniamo apt-proxy
<pre>
# /etc/init.d/apt-proxy force-reload
</pre>


4) aggiorniamo con:
<pre>
<pre>
# apt-get install -t versione_di_debian nome_pacchetto
# apt-get update
</pre>
</pre>


che provveder� a installare il pacchetto da noi richiesto per la versione specificata (versione_debian), risolvendo automaticamente le dipendenze.
Fine!
 
Happy debian!
 
----


Autore: [[User:Keltik|Keltik]]<br>
{{Autori
Revisione: [[User:Nest|Nest]] <br>
|Autore=[[User:MaXeR|MaXeR]]
Verificato: [[Utente:TheNoise|~ The Noise]]
}}

Versione attuale delle 11:08, 8 mag 2016

Emblem-important.png Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica.


Introduzione

In questo tutorial analizzeremo apt-proxy.

Apt-proxy è un comodo strumento per mantenere una cache dei pacchetti Debian già scaricati, riuscendo così a velocizzare il download da parte di altri client connessi alla stessa LAN ed a risparmiare un po' di banda, soprattutto nei casi in cui questa è a pagamento. =)

Installazione

Per installarlo è sufficiente dare il seguente comando:

# apt-get install apt-proxy
Info.png NOTA
In questo periodo sta avvenendo la transizione tra la versione 1 e la versione 2. In questo howto verranno analizzate entrambe le versioni, e verrà illustrato anche il passaggio dalla v1 alla v2.


Configurazione

Versione 1

La configurazione è molto semplice; tutti i parametri sono contenuti in un file: /etc/apt-proxy/apt-proxy.conf.

Ne riporto una versione semplificata, in cui le varie variabili di configurazione sono commentate:

-------------------------------------------------------
# imposta la directory in cui salvare al cache
APT_PROXY_CACHE=/var/cache/apt-proxy

# Esempio per il repository ufficiale Debian
# Debian main
#
# Qui di seguito sono riportate le righe da inserire in un ipotetico
sources.list
# ovviamente sostituendo APTPROXY con l'indirizzo del server che funge da proxy.
#deb http://APTPROXY:9999/debian stable main contrib non-free
#deb http://APTPROXY:9999/debian woody main contrib non-free
#deb http://APTPROXY:9999/debian sarge main contrib non-free
#deb http://APTPROXY:9999/debian sid main contrib non-free
#deb http://APTPROXY:9999/debian project/experimental/main/binary-$(ARCH)/

# Qui aggiungiamo un backend, indicando la directory in cui verrà creata la
cache
# La prima riga contiene la dichiarazione del backend, la seconda indica un
repository 
# locale (quello della cache), dalla seconda alla penultima sono indicati i vari
mirror
# ufficiali, l'ultima indica un collegamento `alternativo` a http, cioè via
ftp...
# Da notare l'importanza delle backslash a fine riga (ultima riga esclusa)
add_backend /debian/ 
 $APT_PROXY_CACHE/debian/ 
 http://ftp2.it.debian.org/debian/ 
# http://ftp.de.debian.org/debian/ 
# http://ftp.uk.debian.org/debian/ 
# +ftp.us.debian.org::debian/



############################## OTHER VARS ##################################
# Qui sono presenti le variabili di configurazione
#
# Dopo quanti giorni devono essere eliminati i pacchetti vecchi;
# Se impostata a 0, attiva l'eliminazione immediata dei vecchi pacchetti
(sconsigliata)
CLEANUP_DAYS=14

# Dopo quanti giorni verranno cancellati i pacchetti considerati vecchi,
raramente utilizzati
# Commentarla per disabilitare questa funzione.
CLEAN_SWEEP=60

# Il numero massimo di versioni di un pacchetto da conservare in memoria.
# Commentarla per disabilitare questa funzione.
MAX_VERSIONS=2

# Frequenza massima, in minuti, degli aggiornamenti dei pacchetti
# Impostare un valore abbastanza alto per avere delle buone performance.
BACKEND_FREQ=240

# Quanti secondi devono passare prima che RSYNC vada in TimeOut
RSYNC_TIMEOUT=30

# Quanti secondi devono passare prima che RSYNC vada in TimeOut
WGET_TIMEOUT=30

# Consente di impostare il path dell'eseguibile di wget e/o di appendere delle
opzioni all'eseguibile
#WGET=wget

# Consente di impostare il path dell'eseguibile di rsync e/o di appendere delle
opzioni all'eseguibile
#RSYNC=rsync

# Per appoggiarsi ad un proxy per il download dei pacchetti:
#export http_proxy=http://proxy:8080/
#export ftp_proxy=http://proxy:8080/
# in caso di necessità, è possibile gestire l'autenticazione:
#export http_proxy=http://user:pass@proxy:8080/
#export ftp_proxy=http://user:pass@proxy:8080/

-------------------------------------------------------


Versione 2

In questo periodo è stata rilasciata la versione 2 di apt-proxy . Le migliorie sono tante, e invito a fare una visitina al sito ufficiale.

Prima di passare all'analisi del nuovo file di configurazione, vorrei sottolineare che, ora, apt-proxy gira come servizio, con relativo script di avvio/riavvio/stop: /etc/init.d/apt-proxy. Questo vuole dire che, ogni volta che viene modificato il file, conviene riavviare il server apt-proxy.

Analizziamo il file di configurazione di questa nuova versione. Come per il file di configurazione precedente, l'esempio riportato presenta dei commenti per i vari parametri.

[DEFAULT]
;; Tutti i valori usati per il tempo sono espressi in secondi, è possibile
;; però indicarli anche in minuti(m), ore(h) o giorni(d), posponendo al numero
;; la lettera distintiva dell'unità di misura.

;; È possibile impostare l'IP al quale risponde il server
;; utile per limitare l'accesso (ad esempio non renderlo accessibile
;; dall'esterno)
;address = 192.168.0.254

;; Porta a cui il server presta ascolto
port = 9999

;; Intervallo di refresh per i file di controllo (Packages/Sources/Contents)
;;
;; Età minima di un file prima di aggiornarlo
min_refresh_delay = 1h

;; Vita minima di un file prima che venga aggiornato (NOT YET IMPLEMENTED)
;min_age = 23h

;; Rimuovi il commento da questa direttiva per fare in modo che
;; apt-proxy continui a scaricare anche se il client si disconnette.
;; Utile per connessioni always-on (ADSL...), probabilmente non è una
;; buona idea per connessioni dial-up (modem 56k).
;; complete_clientless_downloads = 1

;; Debugging settings.
;; for all debug information use this:
;; debug = all:9
debug = all:4 db:0

;; Debugging remote python console
;; Do not enable in an untrusted environment
;telnet_port = 9998
;telnet_user = apt-proxy
;telnet_password = secret

;; Timeout mentre si ricevono dati da un server
timeout = 15

;; Cache directory di apt-proxy
cache_dir = /var/cache/apt-proxy

;; Usare FTP passivo? (default=on)
;passive_ftp = on

;; Usare un proxy HTTP?
;http_proxy = [username:password@]host:port

;; Limit download rate from backend servers (http and rsync only), in bytes/sec
;bandwidth_limit = 100000

;;--------------------------------------------------------------
;; Cache housekeeping

;; Time to perform periodic housekeeping:
;;  - delete files that have not been accessed in max_age
;;  - scan cache directories and update internal tables
cleanup_freq = 1d

;; Maximum age of files before deletion from the cache (seconds)
max_age = 120d

;; Maximum number of versions of a .deb to keep per distribution
max_versions = 3

;; Add HTTP backends dynamicaly if not already defined? (default=on)
;dynamic_backends = on

;;---------------------------------------------------------------
;;---------------------------------------------------------------
;; Backend servers
;;
;; Disporre ogni server nella sua sezione [section]

;[debian]
;Questo backend è stato commentato, per prevenire problemi durante
;l'importazione dei backend dalla versione 1
;
;;; The main Debian archive
;;; è possibile sovrascrivere la direttiva `timeout` di default:
;;timeout = 30
;
;;; Backend server, in ordine di preferenza
;backends =
;       http://ftp.us.debian.org/debian
;       http://ftp.de.debian.org/debian
;       http://ftp2.de.debian.org/debian
;       ftp://ftp.uk.debian.org/debian
;
;min_refresh_delay = 1d
;
;[security]
;Questo backend è stato commentato, per prevenire problemi durante
;l'importazione dei backend dalla versione 1
;
;;; Debian security archive
;backends =
;       http://security.debian.org/debian-security
;       http://ftp2.de.debian.org/debian-security
;
;min_refresh_delay = 1m
;
;[ubuntu]
;;; Ubuntu archive
;backends = http://archive.ubuntu.com/ubuntu
;min_refresh_delay = 15m
;
;[ubuntu-security]
;;; Ubuntu security updates
;backends = http://security.ubuntu.com/ubuntu
;min_refresh_delay = 1m

;[backports.org]
;; backports.org
;backends = http://backports.org/debian
min_refresh_delay = 1d

;;[blackdown]
;;; Blackdown Java
;;backends = http://ftp.gwdg.de/pub/languages/java/linux/debian
;min_refresh_delay = 1d

;[debian-people]
;; people.debian.org
;backends = http://people.debian.org

;[emdebian]
;; The Emdebian project
;backends = http://emdebian.sourceforge.net/emdebian

;[rsync]
;; Un esempio di utilizzo con un server rsync. Non è raccomandato
;; il suo utilizzo, a meno che non sia l'unico servizio disponibile:
;; rsync è molto efficiente solo nel trasferimento di dati non compressi
;; e carica molto il server.
;backends = rsync://ftp.uk.debian.org/debian

;[gnuab]
;; Debian GNU/Hurd-related tools
;backends = http://ftp.gnuab.org/debian

[debian]
backends =
        http://ftp.it.debian.org/debian

[security]
backends =
        http://security.debian.org

[blackdown]
backends =
        http://ftp.gwdg.de/pub/languages/java/linux/debian

[marillat]
backends =
        ftp://ftp.nerim.net/debian-marillat

[jedit]
backends =
        http://dl.sourceforge.net/sourceforge/jedit

[mythtv]
backends =
        http://dijkstra.csh.rit.edu:8088/~mdz/debian/

Ok, ora abbiamo visto il file di configurazione, che dire: semplicissimo! Prima di concludere la parte relativa alla configurazione del server, vorrei mostrare alcuni comandi importanti, utili per la configurazione e l'utilizzo di apt-proxy:

apt-proxy-import -- Comando utilissimo durante la prima installazione: consente di importare dei pacchetti Debian già scaricati nella cache di apt-proxy. Utilizzo:

 
# apt-proxy-import /dir/contenente/i/pacchetti

In generale, i pacchetti vengono automaticamente scaricati da APT nella directory /var/cache/apt/archives, questo è quindi il percorso da usare più comune.

apt-proxy-v1tov2 -- Comodissima utility che converte il file di configurazione della versione 1 in uno compatibile con la versione 2. Utilizzo:

# apt-proxy-v1tov2 [v1_conf [v2_sample_conf]] > v2_conf

Di default utilizza /etc/apt-proxy/apt-proxy.conf per v1_conf e /etc/apt-proxy/apt-proxy-v2.conf per v2_sample_conf.

/etc/init.d/apt-proxy [start|stop|restart|force-reload] -- Script di gestione di apt-proxy:

  • start: avvia il server;
  • stop: lo arresta;
  • restart: lo riavvia;
  • force-reload: forza la rilettura del file di configurazione.

Utilizzo

Niente di più semplice: basta modificare il proprio /etc/apt/sources.list mettendo come server indirizzo_server:9999

Esempio

Se prima, nel nostro sources.list avevamo una riga del tipo:

deb http://ftp2.it.debian.org/debian/ testing main
non-free contrib

non ci basterà che seguire questi passi, per configurare il server e i client:

1) inseriamo il backend nel server, se non è già presente:

[debian]
	backends =
		http://ftp2.it.debian.org/debian/

2) modifichiamo il sources.list dei client:

deb http://indirizzoserver:9999/debian/ testing main non-free contrib

3) aggiorniamo apt-proxy

# /etc/init.d/apt-proxy force-reload

4) aggiorniamo con:

# apt-get update

Fine!




Guida scritta da: MaXeR Swirl-auth20.png Debianized 20%
Estesa da:
Verificata da:

Verificare ed estendere la guida | Cos'è una guida Debianized