Old:Apt-Proxy: un proxy per i pacchetti Debian: differenze tra le versioni
m (→Versione 2) |
mNessun oggetto della modifica |
||
(21 versioni intermedie di 5 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
==Introduzione== | {{Old}} | ||
In questo tutorial analizzeremo apt-proxy. | == Introduzione == | ||
In questo tutorial analizzeremo [http://apt-proxy.sourceforge.net/ apt-proxy]. | |||
==Installazione== | 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: | Per installarlo è sufficiente dare il seguente comando: | ||
<pre> | <pre> | ||
Riga 15: | Riga 14: | ||
==Configurazione== | == Configurazione == | ||
===Versione 1=== | === Versione 1 === | ||
La configurazione è molto semplice; tutti i parametri sono contenuti in un file: | La configurazione è molto semplice; tutti i parametri sono contenuti in un file: | ||
/etc/apt-proxy/apt-proxy.conf | <code>/etc/apt-proxy/apt-proxy.conf</code>. | ||
Ne riporto una versione semplificata, in cui le varie variabili di | Ne riporto una versione semplificata, in cui le varie variabili di | ||
Riga 50: | Riga 49: | ||
# ufficiali, l'ultima indica un collegamento `alternativo` a http, cioè via | # ufficiali, l'ultima indica un collegamento `alternativo` a http, cioè via | ||
ftp... | ftp... | ||
# Da notare l'importanza delle backslash a | # Da notare l'importanza delle backslash a fine riga (ultima riga esclusa) | ||
add_backend /debian/ | add_backend /debian/ | ||
$APT_PROXY_CACHE/debian/ | $APT_PROXY_CACHE/debian/ | ||
Riga 107: | Riga 106: | ||
=== Versione 2 === | === Versione 2 === | ||
In questo periodo è stata rilasciata la versione 2 di | 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. | ||
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 | 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. | 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. | 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. | ||
Riga 130: | Riga 127: | ||
port = 9999 | port = 9999 | ||
;; Intervallo di refresh per Packages/Sources/Contents | ;; Intervallo di refresh per i file di controllo (Packages/Sources/Contents) | ||
;; | ;; | ||
;; | ;; Età minima di un file prima di aggiornarlo | ||
min_refresh_delay = | min_refresh_delay = 1h | ||
;; Vita minima di un file prima che venga aggiornato (NOT YET IMPLEMENTED) | ;; Vita minima di un file prima che venga aggiornato (NOT YET IMPLEMENTED) | ||
Riga 139: | Riga 136: | ||
;; Rimuovi il commento da questa direttiva per fare in modo che | ;; Rimuovi il commento da questa direttiva per fare in modo che | ||
;; apt-proxy continui a scaricare anche se il client si | ;; apt-proxy continui a scaricare anche se il client si disconnette. | ||
;; Utile per connessioni always-on (ADSL...) | ;; Utile per connessioni always-on (ADSL...), probabilmente non è una | ||
;; buona idea per connessioni dial-up (modem 56k). | |||
;; complete_clientless_downloads = 1 | ;; complete_clientless_downloads = 1 | ||
Riga 146: | Riga 144: | ||
;; for all debug information use this: | ;; for all debug information use this: | ||
;; debug = all:9 | ;; debug = all:9 | ||
debug = all db: | debug = all:4 db:0 | ||
;; Debugging remote python console | ;; Debugging remote python console | ||
Riga 155: | Riga 153: | ||
;; Timeout mentre si ricevono dati da un server | ;; Timeout mentre si ricevono dati da un server | ||
timeout = | timeout = 15 | ||
;; Cache directory di apt-proxy | ;; Cache directory di apt-proxy | ||
cache_dir = /var/cache/apt-proxy | cache_dir = /var/cache/apt-proxy | ||
;; | ;; Usare FTP passivo? (default=on) | ||
;passive_ftp = on | ;passive_ftp = on | ||
;; | ;; Usare un proxy HTTP? | ||
;http_proxy = host:port | ;http_proxy = [username:password@]host:port | ||
;; | ;; Limit download rate from backend servers (http and rsync only), in bytes/sec | ||
; | ;bandwidth_limit = 100000 | ||
;;-------------------------------------------------------------- | ;;-------------------------------------------------------------- | ||
Riga 175: | Riga 173: | ||
;; - delete files that have not been accessed in max_age | ;; - delete files that have not been accessed in max_age | ||
;; - scan cache directories and update internal tables | ;; - scan cache directories and update internal tables | ||
cleanup_freq = | cleanup_freq = 1d | ||
;; Maximum age of files before deletion from the cache (seconds) | ;; Maximum age of files before deletion from the cache (seconds) | ||
max_age = | max_age = 120d | ||
;; Maximum number of versions of a .deb to keep per distribution | ;; Maximum number of versions of a .deb to keep per distribution | ||
max_versions = | max_versions = 3 | ||
;; Add HTTP backends dynamicaly if not already defined? (default=on) | ;; Add HTTP backends dynamicaly if not already defined? (default=on) | ||
Riga 190: | Riga 188: | ||
;; Backend servers | ;; Backend servers | ||
;; | ;; | ||
;; Disporre ogni server nella sua sezione [section] | |||
;[debian] | ;[debian] | ||
;Questo backend è stato commentato, per prevenire problemi durante | ;Questo backend è stato commentato, per prevenire problemi durante | ||
;l'importazione dei backend dalla versione | ;l'importazione dei backend dalla versione 1 | ||
; | ; | ||
;;; The main Debian archive | ;;; The main Debian archive | ||
;;; è possibile sovrascrivere la direttiva `timeout` di default: | ;;; è possibile sovrascrivere la direttiva `timeout` di default: | ||
;;timeout = 30 | ;;timeout = 30 | ||
; | ; | ||
;;; Backend server, in ordine di preferenza | ;;; Backend server, in ordine di preferenza | ||
Riga 209: | Riga 205: | ||
; ftp://ftp.uk.debian.org/debian | ; ftp://ftp.uk.debian.org/debian | ||
; | ; | ||
;min_refresh_delay = 1d | |||
; | ; | ||
;[security] | ;[security] | ||
;Questo backend è stato commentato, per prevenire problemi durante | ;Questo backend è stato commentato, per prevenire problemi durante | ||
;l'importazione dei backend dalla versione | ;l'importazione dei backend dalla versione 1 | ||
; | ; | ||
;;; Debian security archive | ;;; Debian security archive | ||
Riga 228: | Riga 216: | ||
; http://ftp2.de.debian.org/debian-security | ; http://ftp2.de.debian.org/debian-security | ||
; | ; | ||
;[ | ;min_refresh_delay = 1m | ||
;; | ; | ||
;backends = | ;[ubuntu] | ||
;;; Ubuntu archive | |||
; | ;backends = http://archive.ubuntu.com/ubuntu | ||
; | ;min_refresh_delay = 15m | ||
; | |||
;[ | ;[ubuntu-security] | ||
;; | ;;; Ubuntu security updates | ||
;backends = http:// | ;backends = http://security.ubuntu.com/ubuntu | ||
;min_refresh_delay = 1m | |||
;[backports.org] | ;[backports.org] | ||
;; backports.org | ;; backports.org | ||
;backends = http://backports.org/debian | ;backends = http://backports.org/debian | ||
min_refresh_delay = 1d | |||
;[blackdown] | ;;[blackdown] | ||
;;; Blackdown Java | ;;; Blackdown Java | ||
;;backends = http://ftp.gwdg.de/pub/languages/java/linux/debian | ;;backends = http://ftp.gwdg.de/pub/languages/java/linux/debian | ||
; | ;min_refresh_delay = 1d | ||
;[debian-people] | ;[debian-people] | ||
;; people.debian.org | ;; people.debian.org | ||
Riga 262: | Riga 252: | ||
;; e carica molto il server. | ;; e carica molto il server. | ||
;backends = rsync://ftp.uk.debian.org/debian | ;backends = rsync://ftp.uk.debian.org/debian | ||
;[gnuab] | |||
;; Debian GNU/Hurd-related tools | |||
;backends = http://ftp.gnuab.org/debian | |||
[debian] | [debian] | ||
backends = | backends = | ||
http://ftp.it.debian.org/debian | http://ftp.it.debian.org/debian | ||
[security] | [security] | ||
Riga 295: | Riga 282: | ||
</pre> | </pre> | ||
Ok, ora abbiamo visto il file di configurazione | Ok, ora abbiamo visto il file di configurazione, che dire: semplicissimo! | ||
Prima di concludere la parte relativa alla configurazione del server, vorrei | Prima di concludere la parte relativa alla configurazione del server, vorrei | ||
mostrare alcuni comandi importanti, utili per la configurazione e l'utilizzo | mostrare alcuni comandi importanti, utili per la configurazione e l'utilizzo | ||
di apt-proxy: | 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: | ||
</ | |||
Comando utilissimo durante la prima installazione: consente di importare dei | |||
pacchetti Debian già scaricati nella cache di apt-proxy. | |||
Utilizzo: | |||
<pre> | <pre> | ||
# apt-proxy-import | # apt-proxy-import /dir/contenente/i/pacchetti | ||
</pre> | </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. | |||
Comodissima utility che converte il file di configurazione della versione 1 in | <code>'''apt-proxy-v1tov2'''</code> -- Comodissima utility che converte il file di configurazione della versione 1 in uno compatibile con la versione 2. Utilizzo: | ||
uno compatibile con la versione 2. | |||
Utilizzo: | |||
<pre> | <pre> | ||
# apt-proxy-v1tov2 [v1_conf [v2_sample_conf]] > v2_conf | # apt-proxy-v1tov2 [v1_conf [v2_sample_conf]] > v2_conf | ||
</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>. | |||
<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. | |||
[start|stop|restart|force-reload] | |||
</ | |||
Script di gestione di apt-proxy: | |||
start: avvia il server; | |||
stop: lo arresta; | |||
restart: lo riavvia; | |||
force-reload: | |||
== | == 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> | ||
deb http://ftp2.it.debian.org/debian/ testing main | deb http://ftp2.it.debian.org/debian/ testing main | ||
non-free contrib | non-free contrib | ||
</pre> | </pre> | ||
non ci basterà che seguire questi passi, per configurare il server e i client: | non ci basterà che seguire questi passi, per configurare il server e i client: | ||
Riga 358: | Riga 322: | ||
</pre> | </pre> | ||
2) modifichiamo il sources.list dei client: | 2) modifichiamo il <code>sources.list</code> dei client: | ||
<pre> | <pre> | ||
deb http://indirizzoserver:9999/debian/ testing main non-free contrib | deb http://indirizzoserver:9999/debian/ testing main non-free contrib | ||
Riga 368: | Riga 332: | ||
</pre> | </pre> | ||
4) aggiorniamo con | 4) aggiorniamo con: | ||
<pre> | <pre> | ||
# apt-get update | # apt-get update | ||
</pre> | </pre> | ||
Fine! | Fine! | ||
{{Autori | |||
|Autore=[[User:MaXeR|MaXeR]] | |||
}} | |||
Versione attuale delle 11:08, 8 mag 2016
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
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 | Debianized 20% |
Estesa da: | |
Verificata da: | |
Verificare ed estendere la guida | Cos'è una guida Debianized |