|
|
Riga 1: |
Riga 1: |
| ==Introduzione== | | ==Introduzione== |
|
| |
|
| Qualche volta ci troviamo nella situazione di dover aggiornare una macchina con una connessione internet lenta... | | Qualche volta ci troviamo nella situazione di dover aggiornare una macchina con una connessione internet lenta e/o inesistente... |
| Alcune volte viene suggerito [[Debmirror: creiamo un mirror Debian | Debmirror]] (soluzione che reputo sovradimensionata e dispendiosa), altre viene suggerito il download del primo DVD o dei primi 2-3 CD di Sarge (ma per quanto riguarda sid, non esiste niente del genere)... | | Alcune volte viene suggerito debmirror (soluzione che reputo sovradimensionata e dispendiosa), altre viene suggerito il download del primo DVD o dei primi 2-3 CD di Sarge (ma per quanto riguarda sid, non esiste niente del genere)... |
| Cos� ho pensato di organizzare qualche appunto che avevo su apt-zip, un comodo tool che ci viene in aiuto proprio in questi casi! | | Cos� ho pensato di organizzare qualche appunto che avevo su apt-zip, un comodo tool che ci viene in aiuto proprio in questi casi! |
| Vedremo come utilizzarlo su computer connessi ad internet con una connessione lenta... | | Vedremo come utilizzarlo su computer connessi ad internet con una connessione lenta... |
| | |
|
| |
|
| ==Installazione== | | ==Installazione== |
Riga 16: |
Riga 17: |
| ==Configurazione== | | ==Configurazione== |
|
| |
|
| Il file di configurazione � '''/etc/apt/apt-zip.conf''' e contiene alcuni valori di defalut utilizzati dai due comandi di apt-zip. | | Il file di configurazione � '''/etc/apt/apt-zip.conf''' e contiene alcuni valodi di defalut utilizzati dai due comandi di apt-zip. |
| Ecco quello di default: | | Ecco quello di default: |
| <pre> | | <pre> |
Riga 59: |
Riga 60: |
|
| |
|
| Normalmente solo '''MEDIUM''' viene modificato, in quanto le opzioni di default sono pi� che corrette per qualsiasi utilizzo. | | Normalmente solo '''MEDIUM''' viene modificato, in quanto le opzioni di default sono pi� che corrette per qualsiasi utilizzo. |
| | |
|
| |
|
| ==Preparazione del Sistema== | | ==Preparazione del Sistema== |
Riga 98: |
Riga 100: |
| La sintassi � la seguente: | | La sintassi � la seguente: |
| <pre> | | <pre> |
| apt-zip-list [--help] [--version] [--medium=mountpoint] | | apt-zip-list [--help] [--version] [--medium=mountpoint] [--aptgetaction=action] [--packages=package[,package...]] [--fix-broken] [--skip-mount] [--method=method] [--options=opt[,opt...]] [ --accept=accept[,accept...]] [ --reject=reject[,reject...]] |
| [--aptgetaction=action] [--packages=package[,package...]]
| |
| [--fix-broken] [--skip-mount] [--method=method] [--options=opt[,opt...]]
| |
| [ --accept=accept[,accept...]] [ --reject=reject[,reject...]]
| |
|
| |
|
| apt-zip-inst [--help] [--version] [--medium=mountpoint] [--aptgetaction=action] | | apt-zip-inst [--help] [--version] [--medium=mountpoint] [--aptgetaction=action] [--packages=package[,package...]] [--fix-broken] [--skip-mount] |
| [--packages=package[,package...]] [--fix-broken] [--skip-mount]
| |
| </pre> | | </pre> |
|
| |
|
Riga 162: |
Riga 160: |
| il comando per fare questo � | | il comando per fare questo � |
| <pre> | | <pre> |
| # apt-zip-list --aptgetaction=upgrade --medium=/mnt/point | | # apt-zip-list --aptgetaction=upgrade --medium/mnt/point |
| </pre> | | </pre> |
| nel caso di un supporto removibile, o | | nel caso di un supporto removibile, o |
Riga 223: |
Riga 221: |
| � sufficiente, infatti, lanciare questo comando: | | � sufficiente, infatti, lanciare questo comando: |
| <pre> | | <pre> |
| $ cat fetch-script-wget-maxer | egrep "://" | cut -d " " -f 1 > lista.txt | | $ cat fetch-script-wget-maxer | egrep "://" | cut -d\ -f 1 > lista.txt |
| </pre> | | </pre> |
|
| |
|
Riga 245: |
Riga 243: |
| aggiungendo, eventualmente, '''--skip-mount''' se si tratta di una directory locale... | | aggiungendo, eventualmente, '''--skip-mount''' se si tratta di una directory locale... |
|
| |
|
|
| |
| ==Nessuna Connessione ad Internet==
| |
| In questa sezione vedremo come poter usare apt-zip in casi di totale assenza di connessione ad Internet. Premetto che la cosa abbastanza macchinosa, e richiede due accessi al computer provvisto di connessione.
| |
|
| |
| ===L'idea===
| |
| L'idea , fondamentalmente, semplice: ''inganneremo'' apt creando sulla nostra macchina un mirror dei repository da cui vorremmo attingere i pacchetti. Il mirror, per, sar parziale/fasullo, in quanto conterr solo i file relativi ai pacchetti contenuti nel repository. Sar necessario utilizzare Apache, in quanto apt-zip non inserisce nella lista i pacchetti non raggiungibili tramite una connessione (ad esempio quelli su disco..).
| |
|
| |
|
| |
| ===Configurazione di Apache===
| |
| sufficiente installare apache:
| |
| [code]
| |
| # apt-get install apache
| |
| [/code]
| |
| Per una guida pi approfondita a riguardo, consiglio la lettura di: [[LAMP: Linux, Apache, MySQL e PHP]].
| |
|
| |
| La configurazione di default di Apache utilizza come directory principale di lavoro '''/var/www/''', che verr usata anche da noi per creare i nostri repository ''fittizzi''!
| |
|
| |
| Apache si ''muove'' come l'utente '''www-data''', quindi dovremo sempre preoccuparci di rendere i dati accessibili a questo utente, in modo da non ricevere errori di tipo ''403'', indicanti una mancanza di permessi.
| |
|
| |
| ===La struttura delle Directory===
| |
| Prendiamo come esempio il repository '''Nerim''', contenente software come mplayer, w32codecs, ... molto utili per la visualizzazione di filmati.
| |
|
| |
| Prima di tutto, rechiamoci sul sito ufficiale del repository (http://debian.video.free.fr/), cos da vedere come strutturato.
| |
|
| |
| Prendiamo in analisi i repository per Sarge:
| |
| <pre>
| |
| deb http://ftp.nerim.net/debian-marillat/ sarge main
| |
| </pre>
| |
| come descritto nella guida [[I repository ed il loro utilizzo]], in questo caso i file che descrivono il contenuto del repository si trovano in '''http://ftp.nerim.net/debian-marillat/dists/sarge/main/''', in particolare nella sottodirectory '''binary-i386'''.
| |
|
| |
| Procediamo, quindi, a ricreare una struttura simile in '''/var/www/''':
| |
| <pre>
| |
| # mkdir /var/www/marillat
| |
| # chown user:www-data $_
| |
| # chmod g+s $_
| |
| $ cd /var/www/marillat
| |
| $ mkdir -p dists/sarge/main/binary-i386/
| |
| $ cd $_
| |
| </pre>
| |
|
| |
| in questo caso, '''user''' rappresenta l'utente che normalmente utilizziamo, mentre '''$_''' ci permette di riutilizzare il parametro utilizzato nel comando precedente, facendoci risparmiare qualche carattere ([[Bash tips]] per maggiori informazioni).
| |
|
| |
| La struttura stata creata, non ci resta che recuperare i file contenuti in quella directory: ''Packages.gz'' e ''Release''.
| |
|
| |
| Una volta scaricati, copiamoli nella directory creata:
| |
| <pre>
| |
| $ cp Packages.gz Releasee /var/www/marillat/dists/sarge/main/binary-i386/
| |
| </pre>
| |
|
| |
|
| |
| ===Modifica di sources.list===
| |
| Siamo pronti a modificare il file '''/etc/apt/sources.list''' in modo da utilizzare il repository appena creato.
| |
| Nel nostro caso di esempio, quindi, la riga da aggiungere sar la seguente:
| |
| <pre>
| |
| deb http://localhost/arillat/ sarge main
| |
| </pre>
| |
|
| |
| Una volta terminata la modifica, aggiorniamo il database dei pacchetti disponibili con un
| |
| <pre>
| |
| # apt-get update
| |
| </pre>
| |
|
| |
| ===Creazione della lista di pacchetti===
| |
| Ritornando al nostro ragionamento,
| |
|
| |
| ===Conversione dello script===
| |
|
| |
|
| ==Conclusione== | | ==Conclusione== |