Jigdo: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
m (→‎Introduzione: aggiornamento link; -br)
m (verificata)
 
(35 versioni intermedie di 5 utenti non mostrate)
Riga 1: Riga 1:
{{Versioni compatibili|Etch|Lenny|Squeeze|Sid}}
{{Template:Installazione
|precedente=Correggere la risoluzione di GDM}}
{{Versioni compatibili|Jessie|Stretch|Buster}}
== Introduzione ==
== Introduzione ==
Jigdo ([http://atterer.org/jigdo/ Home Page]) è uno strumento veramente potente: permette di scaricare i singoli file che compongono una ISO e di creare quest'ultima a partire da quanto scaricato.
Jigdo è uno strumento veramente potente: permette di prelevare i singoli file che compongono una ISO e di creare quest'ultima a partire da quanto scaricato.<br/>
Anche se può sembrare una cosa inutile, in questo caso risulta una delle alternative più veloci e ''semplici'' (questo lo vedremo in seguito) per scaricare e mantenere aggiornate le ISO di Debian.


Anche se può sembrare una cosa inutile, in questo caso risulta una delle alternative più veloci e ''semplici'' (questo lo vedremo in seguito) per scaricare e mantenere aggiornate le ISO di Debian.
Questo programma è disponibile per diversi sistemi operativi in modo da poter creare un'immagine di Debian in maniera indipendente dala piattaforma utiizzata. Viene distribuito con una licenza [[GNU GPL]] ed è liberamente prelevabile dalla homepage<sup>[[#Collegamenti esterni|[1]]]</sup> del progetto oppure dai [[repository]] di Debian.


== Installazione ==
== Installazione ==
Jigdo è, ovviamente, disponibile come pacchetto Debian:
Jigdo è, ovviamente, disponibile come pacchetto Debian. Con [[privilegi di amministrazione]] è quindi sufficiente il seguente comando:
<pre>
<pre>
# apt-get install jigdo-file
# apt-get install jigdo-file
</pre>
</pre>


Per gli utenti di altre distribuzioni è scaricabile presso la [http://atterer.net/jigdo/ Home Page del progetto], dove sono presenti anche le versioni per gli altri sistemi operativi.
Per gli utenti di altre distribuzioni è scaricabile presso la homepage del progetto dove sono presenti anche le versioni per gli altri sistemi operativi.


== Come Funziona ==
== Come funziona ==
Il principio è molto semplice: vengono scaricati i singoli file facenti parte dell'immagine del CD/DVD per poi riassemblarli nell'immagine finale. Questo porta  parecchi vantaggi, sia per chi deve scaricare l'immagine, sia per chi rende disponibili i file da scaricare:
Il principio è molto semplice: vengono scaricati i singoli file facenti parte dell'immagine del CD/DVD per poi riassemblarli nell'immagine finale. Questo porta  parecchi vantaggi, sia per chi deve scaricare l'immagine, sia per chi rende disponibili i file da scaricare:


Riga 29: Riga 32:
* un mirror dei repository Debian, in questo caso, può essere usato sia come un normale mirror, sia con Jigdo per creare le immagini.
* un mirror dei repository Debian, in questo caso, può essere usato sia come un normale mirror, sia con Jigdo per creare le immagini.


== Dove trovare i file <code>.jigdo</code> ==
== Immagini scaricabili con Jigdo ==
I file <code>''.jigdo''</code> sono reperibili direttamente sul sito Debian.Org, esattamente a [http://www.debian.org/CD/jigdo-cd/#which questa pagina].
Per poter utilizzare Jigdo è necessario scaricare uno o più file con estensione ".jigdo" relativi all'immagine (o alle immagini) che si intende creare.
{|class="wikitable"
!Tipo immagine
!Architettura
!Ramo Debian
!Caratteristiche
!Link
|-
|rowspan="2" | DVD || rowspan="2" | tutte
||stable || file .jigdo per tutti i DVD. Esiste anche un immagine che contiene solo gli aggiornamenti rispetto al precedente rilascio. Non c'è un file .jigdo per creare un'immagine netinst.
||[[#Collegamenti esterni|[2]]]
|-
||testing || file .jigdo per tutti i DVD (non c'è un file .jigdo per netinst).
||[[#Collegamenti esterni|[2]]]
|-
|rowspan="2" | CD || rowspan="2" | tutte
||stable || file .jigdo per un'installazione completa (solo Xfce), oppure per una netinst o per un'inatallazione su Mac Mini Apple.
||[[#Collegamenti esterni|[2]]]
|-
||testing || come per la stable e in più è presente un file .jigdo per creare un'immagine di Debian Edu.
||[[#Collegamenti esterni|[2]]]
|-
|Blu-ray
||i386 e amd64
||stable
||file .jigdo per la creazione di tre Blu-ray.
||[[#Collegamenti esterni|[2]]]
|-
|Con firmware
||i386 e amd64
||stable e testing ||
||[[#Collegamenti esterni|[3]]]
|-
|Versioni antecedenti la [[stable]]
||dipende dalla versione
||stable ||
||[[#Collegamenti esterni|[4]]]
|}
Non esistono file ".jigdo" per creare "mini.iso" o immagin per [[Sid]].
 
Si legga anche la [[Installare Debian|la guida sull'installazione di Debian]].


Supponiamo di voler scaricare il primo CD di Sarge, i passi da seguire sono i seguenti:
== Primo download di una ISO ==
* creare una directory di lavoro:
Supponiamo di voler scaricare il primo DVD di Debian [[Stretch]]; i passi da seguire sono i seguenti:
* creare una directory di lavoro ed entrarci:
<pre>
<pre>
$ mkdir /home/maxer/Sarge
$ mkdir jigdo
$ cd /home/maxer/Sarge
$ cd jigdo
</pre>
</pre>
* scaricare i file <code>.jigdo</code>
 
* copiare l'URL al file <code>.jigdo</code> che ci interessa, nel nostro caso <nowiki>''https://cdimage.debian.org/debian-cd/current/amd64/jigdo-dvd/debian-9.0.0-amd64-DVD-1.jigdo''</nowiki>;
 
* lanciare il comando
<pre>
<pre>
$ wget http://cdimage.debian.org/debian-cd/3.1_r0a/i386/jigdo-cd/debian-31r0a-i386-binary-1.jigdo
$ jigdo-lite
</pre>
* scaricare i file <code>.template</code>
<pre>
$ mkdir jigdotemplates
$ cd jigdotemplates
$ wget http://cdimage.debian.org/debian-cd/3.1_r0a/i386/jigdo-cd/jigdotemplates/debian-31r0a-i386-binary-1.template
$ cd ..
</pre>
</pre>


== Primo Download di una iso ==
Verranno poste alcune domande che ci permetteranno di personalizzare il processo di download dei file.<br/>
Il primo download di una iso è semplicissimo: una volta posizionati nella directory contenente i file <code>.jigdo</code>, è sufficiente lanciare il comando
La prima domanda posta riguarda l'URL del file ".jigdo" da scaricare ed è sufficiente incollare l'URL che abbiamo copiato in precedenza.
<pre>
 
$ jigdo-lite debian-31r0a-i386-binary-1.jigdo
Jigsaw Download "lite"
</pre>
Copyright (C) 2001-2005  |  jigdo@
(in questo caso si suppone di voler scaricare il primo CD di Sarge, in linea con l'esempio precedente).
Richard Atterer          |  atterer.net
Loading settings from `/home/utente/.jigdo-lite'
-----------------------------------------------------------------
To resume a half-finished download, enter name of .jigdo file.
To start a new download, enter URL of .jigdo file.
You can also enter several URLs/filenames, separated with spaces,
or enumerate in {}, e.g. `<nowiki>http://server/cd-{1_NONUS,2,3}.jigdo</nowiki>'
jigdo: '''<nowiki>https://cdimage.debian.org/debian-cd/current/amd64/jigdo-dvd/debian-9.0.0-amd64-DVD-1.jigdo</nowiki>'''


Verranno poste alcune domande, che ci permetteranno di personalizzare il processo di download dei file.
<pre>
<pre>
If you already have a previous version of the CD you are
If you already have a previous version of the CD you are
Riga 68: Riga 115:
Files to scan:   
Files to scan:   
</pre>
</pre>
 
Questa opzione ci sarà molto utile in futuro, per ora, a meno che non si dispone di un CD di testing, non è necessario rispondere. Continuiamo con il processo premendo <nowiki>[invio]</nowiki>.
Questa opzione ci sarà molto utile in futuro, per ora, a meno che non si dispone di un cd di Sarge, non è necessario rispondere. Continuiamo con il processo premendo <nowiki>[invio]</nowiki>.


<pre>
<pre>
Riga 82: Riga 128:
Debian mirror [http://debian.fastweb.it/debian/]:   
Debian mirror [http://debian.fastweb.it/debian/]:   
</pre>
</pre>
La seconda domanda ci permette di scegliere il mirror da cui scaricare. Consiglio vivamente di scegliere un mirror italiano, così da alleggerire il carico di quelli centrali.
La terza domanda ci permette di scegliere il [[mirror]] da cui scaricare. Consiglio vivamente di scegliere un mirror italiano, così da alleggerire il carico di quelli centrali.<br/>
In questo caso è stato scelto ''http://debian.fastweb.it/debian/'', se non si conoscono gli indirizzi esatti dei mirror, è possibile inserire semplicemente le due lettere del paese (nel nostro caso '''it''').
In questo caso è stato scelto <nowiki>http://debian.fastweb.it/debian</nowiki>; se non si conoscono gli indirizzi esatti dei mirror, è possibile inserire semplicemente le due lettere del paese (nel nostro caso '''it''').


<pre>
<pre>
Riga 91: Riga 137:
Will not create image or temporary file - try again with different input files
Will not create image or temporary file - try again with different input files
</pre>
</pre>
La ''configurazione'' pre-download è terminata, Jigdo provvederà, ora, a scaricare tutti i file necessari per la creazione dell'immagine. Ogni 10 pacchetti verrà mostrata una scritta come quella riportata sopra, che ci informerà sull'andamento del download. Sempre ogni 10 file scaricati, verrà aggiornata l'immagine (che verrà creata dopo i primi 10 pacchetti correttamente scaricati):
La ''configurazione'' pre-download è terminata; Jigdo provvederà, ora, a scaricare tutti i file necessari per la creazione dell'immagine. Ogni 10 pacchetti verrà mostrata una scritta come quella riportata sopra, che ci informerà sull'andamento del download. Sempre ogni 10 file scaricati, verrà aggiornata l'immagine (che verrà creata dopo i primi 10 pacchetti correttamente scaricati):
<pre>
<pre>
FINISHED --11:17:54--
FINISHED --11:17:54--
Riga 105: Riga 151:
Downloaded: 482,660 bytes in 2 files
Downloaded: 482,660 bytes in 2 files
Found 2 of the 2 files required by the template
Found 2 of the 2 files required by the template
Successfully created `debian-31r0a-i386-binary-1.iso'
Successfully created `debian-testing-i386-kde-CD-1.iso'


-----------------------------------------------------------------
-----------------------------------------------------------------
Riga 111: Riga 157:
</pre>
</pre>


Bene, ora i file necessari sono stati scaricati ed è stata creata l'immagine <code>debian-31r0a-i386-binary-1.iso</code>.
Bene, ora i file necessari sono stati scaricati ed è stata creata l'immagine <code>debian-testing-i386-kde-CD-1.iso</code>.


Ora viene eseguito un check aggiuntivo, per verificare l'integrità dell'immagine.
Ora viene eseguito un check aggiuntivo, per verificare l'integrità dell'immagine.
<pre>
<pre>
The fact that you got this far is a strong indication that `debian-31r0a-i386-binary-1.iso'
The fact that you got this far is a strong indication that `debian-testing-i386-kde-CD-1.iso'
was generated correctly. I will perform an additional, final check,
was generated correctly. I will perform an additional, final check,
which you can interrupt safely with Ctrl-C if you do not want to wait.
which you can interrupt safely with Ctrl-C if you do not want to wait.
Riga 124: Riga 170:
L'immagine è stata scaricata e costruita senza errori, ora possiamo masterizzarla e utilizzarla normalmente.
L'immagine è stata scaricata e costruita senza errori, ora possiamo masterizzarla e utilizzarla normalmente.


Degna di nota è la possibilità di interruzione del processo, che può essere ripreso in seguito esattamente dal punto in cui è stato interrotto. Ogni volta che si ricomincerà a scaricare l'immagine, si verrà avvisati dell'esistenza della directory <code>'''debian-31r0a-i386-binary-1.iso.tmpdir'''</code> (il nome è relativo al primo cd di Sarge):
Degna di nota è la possibilità di interruzione del processo, che può essere ripreso in seguito esattamente dal punto in cui è stato interrotto. Ogni volta che si ricomincerà a scaricare l'immagine, si verrà avvisati dell'esistenza della directory <code>debian-testing-i386-kde-CD-1.iso.tmpdir</code> (il nome è relativo al primo CD di testing con KDE):
<pre>
<pre>
The temporary directory `debian-31r0a-i386-binary-1.iso.tmpdir' already exists. Its contents
The temporary directory `debian-testing-i386-kde-CD-1.iso.tmpdir' already exists. Its contents
ARE GOING TO BE DELETED (possibly after having been copied to the
ARE GOING TO BE DELETED (possibly after having been copied to the
image, if they are of interest for it). If you do not want this
image, if they are of interest for it). If you do not want this
Riga 134: Riga 180:
In questo caso possiamo tranquillamente ignorare il messaggio premendo <nowiki>[invio]</nowiki> e continuare con il download.
In questo caso possiamo tranquillamente ignorare il messaggio premendo <nowiki>[invio]</nowiki> e continuare con il download.


== Aggiornamento di una iso ==
== Aggiornamento di una ISO ==
L'aggiornamento di una iso è un processo quasi identico a quello descritto nel paragrafo precedente.
È necessario scaricare i file <code>.jigdo</code> e <code>.template</code> aggiornati (sostituendoli a quelli vecchi) e seguire una delle seguenti vie per recuperare i file ancora validi presenti nella vecchia iso (così da velocizzare al massimo il processo di download).


Supponiamo di aver scaricato Sarge, e che sia stata rilasciato un aggiornamento (<code>''3.1r1''</code>). Con Jigdo possiamo evitare di scaricare tutte le immagini, scaricando solamente i file che sono stati aggiornati.
L'aggiornamento di una ISO è un processo quasi identico a quello descritto nel paragrafo precedente.<br/>
È necessario indicare l'URL del file <code>.jigdo</code> aggiornato e seguire una delle seguenti vie per recuperare i file ancora validi presenti nella vecchia ISO (così da velocizzare al massimo il processo di download).
 
Supponiamo di aver scaricato un'immagine Debian con Jigdo e che sia stata rilasciato un aggiornamento settimanale (se stiamo utilizzando testing) o una [[point release]] (se stiamo utilizzando Debian stable). Con Jigdo possiamo evitare di scaricare tutte le immagini, scaricando solamente i file che sono stati aggiornati.


=== Da una .iso ===
=== Da una .iso ===
Se abbiamo conservato l'iso dei cd è possibile montarle in loop ed utilizzarle come se fosse un normale cd. Per montare una immagine in loop dobbiamo essere ''root'' ed avere una directory dove far montare il contenuto (supponiamo <code>'''/mnt/loop/'''</code>).
==== Testing ====
Se abbiamo conservato l'ISO del CD/DVD è possibile montarlo in loop ed utilizzarle come se fosse un normale CD.
{{Warningbox|Prima di eseguire il comando ''jigdo-lite'' assicurarsi che nella posizione da cui si sta eseguendo il comando non sia già presente un vecchio file ''.template'' relativo all'immagine da aggiornare, poiché in caso contrario jigdo non procederà a scaricare il nuovo file ''.template'', ma riutilizzerà quello vecchio senza aggiornare un bel niente.}}
Dato che la nuova immagine aggiornata ha lo stesso identico nome della vecchia, per prima cosa rinominiamola:
<pre>
$ mv debian-testing-i386-kde-CD-1.iso debian-testing-i386-kde-CD-1.iso.old
</pre>
{{Box|Nota:|In alternativa è possibile eseguire la procedura in una nuova directory, oppure spostare l'immagine. È possibile effettuare lo spostamento anche se la ISO è già stata montata (ovviamente sempre all'interno della stessa partizione) in quanto mount prende come riferimento l'inode del file e non il nome.}}
==== Stable ====
L'aggiornamento di un'immagine di Debian stable è necessario tipicamente solo quando viene rilasciata la point release. In questo caso il nome dell'immagine e, quindi, del file ".template" saranno diversi e non è necessario, a differenza di quanto avveniva per testing, alcun intervento preliminare al montaggio del file .iso.


==== Mount ====
Per montare una immagine in loop dobbiamo essere ''root'' ed avere una directory dove far montare il contenuto (supponiamo <code>/mnt</code>):
<pre>
<pre>
# mount -o loop debian-31r0a-i386-binary-1.iso /mnt/loop
# mount -o loop debian-testing-i386-kde-CD-1.iso.old /mnt
</pre>
</pre>


se tutto è andato bene, in <code>/mnt/loop</code> troveremo il contenuto del primo cd di Sarge:
<!-- RIMUOVERE LA PARTE SU FUSEISO? -->
Oppure se si è installato il pacchetto '''fuseiso9660''', senza privilegi è sufficiente creare una directory nella propria home e montarla lì:
<pre>
<pre>
# ls -l /mnt/loop/
$ mkdir "$HOME"/mnt
total 315
$ fuseiso9660 debian-testing-i386-kde-CD-1.iso.old "$HOME"/mnt
-r--r--r-- 1 root root  11100 Jun  7 13:50 README.html
-r--r--r--  1 root root  83434 Jun  4 20:04 README.mirrors.html
-r--r--r--  1 root root  45512 Jun  4 20:04 README.mirrors.txt
-r--r--r--  1 root root  5926 Jun  7 13:50 README.txt
-r--r--r--  1 root root    60 Jun  7 13:50 autorun.bat
-r--r--r--  1 root root    29 Jun  7 13:50 autorun.inf
lr-xr-xr-x  1 root root      1 Jun  7 13:50 debian -> .
dr-xr-xr-x  3 root root  2048 Jun  7 13:50 dists
dr-xr-xr-x  5 root root  4096 Jun  7 13:50 doc
dr-xr-xr-x  4 root root  2048 Jun  7 13:50 install
dr-xr-xr-x  2 root root  4096 Jun  7 13:50 isolinux
-r--r--r--  1 root root 156641 Jun  7 14:17 md5sum.txt
dr-xr-xr-x  2 root root  2048 Jun  7 13:50 pics
dr-xr-xr-x  4 root root  2048 Jun  7 13:50 pool
dr-xr-xr-x  3 root root  2048 Jun  7 13:50 tools
</pre>
</pre>
Prima di Debian 8 ([[Jessie]]) era anche necessario che l'utente facesse parte del gruppo '''fuse'''.


Ora scarichiamo i nuovi file <code>''.jigdo''</code> e <code>''.template''</code> come se si trattasse di un nuovo download e procediamo come sopra, con l'unico accorgimento di indicare, <code>/mnt/loop</code> come risposta alla seguente domanda:
Se tutto è andato bene, in <code>/mnt</code> (oppure in <code>$HOME/mnt</code> se abbiamo utilizzato ''fuse'') troveremo il contenuto del primo CD di Debian testing:
<pre>
$ ls -l /mnt
totale 689
-r--r--r-- 1 root root    27 16 feb  2010 autorun.inf
dr-xr-xr-x 2 root root  2048 16 feb  2010 css
lr-xr-xr-x 1 root root      1 16 feb  2010 debian -> .
dr-xr-xr-x 3 root root  2048 16 feb  2010 dists
dr-xr-xr-x 4 root root  4096 16 feb  2010 doc
-r--r--r-- 1 root root  75863 11 feb  2010 g2ldr
-r--r--r-- 1 root root  8192 11 feb  2010 g2ldr.mbr
dr-xr-xr-x 2 root root  2048 16 feb  2010 install
dr-xr-xr-x 2 root root  2048 16 feb  2010 install.386
dr-xr-xr-x 2 root root  4096 16 feb  2010 isolinux
-r--r--r-- 1 root root  94785 16 feb  2010 md5sum.txt
dr-xr-xr-x 2 root root  4096 16 feb  2010 pics
dr-xr-xr-x 3 root root  2048 16 feb  2010 pool
-r--r--r-- 1 root root    204 16 feb  2010 README.excluded
-r--r--r-- 1 root root  9163 16 feb  2010 README.html
-r--r--r-- 1 root root 132350 12 feb  2010 README.mirrors.html
-r--r--r-- 1 root root  69760 12 feb  2010 README.mirrors.txt
-r--r--r-- 1 root root    398 16 feb  2010 README.source
-r--r--r-- 1 root root  5748 16 feb  2010 README.txt
-r--r--r-- 1 root root 280420 11 feb  2010 setup.exe
dr-xr-xr-x 2 root root  2048 16 feb  2010 tools
-r--r--r-- 1 root root    176 16 feb  2010 win32-loader.ini
</pre>
==== Aggiornamento ====
Ora procediamo come sopra, con l'unico accorgimento di indicare <code>/mnt</code> (o la directory in cui abbiamo montato l'immagine) come risposta alla seguente domanda:
<pre>
<pre>
If you already have a previous version of the CD you are
If you already have a previous version of the CD you are
Riga 177: Riga 250:
Alternatively, just press enter if you want to start downloading
Alternatively, just press enter if you want to start downloading
the remaining files.
the remaining files.
Files to scan: /mnt/loop
Files to scan: /mnt
</pre>
</pre>


Il programma si occuperà di prendere i file ''riutilizzabili'', evitando di riscaricarli. Il resto del processo si svolge come per un download normale.
Il programma si occuperà di prendere i file ''riutilizzabili'', evitando di riscaricarli. Il resto del processo si svolge come per un download normale.


{{Box|Nota:|Se si esegue la procedura nella stessa directory in cui è presente l'immagine ''vecchia'' è necessario spostarla o rinominarla. È possibile spostarla anche se è già stata montata (ovviamente sempre all'interno della stessa partizione) in quanto mount prende come riferimento l'inode del file e non il nome.}}
=== Da un CD/DVD ===
 
Se invece si dispone solo dell'immagine masterizzata è sufficiente montare il CD/DVD ed indicare, alla richiesta di un percorso in cui cercare dei file ''riutilizzabili'', il punto di mount del lettore CD/DVD.
=== Da un Cd/Dvd ===
Se invece si dispone solo dell'immagine masterizzata è sufficiente montarle il CD/DVD ed indicare, alla richiesta di un percorso in cui cercare dei file ''riutilizzabili'' il punto di mount del lettore CD/DVD.


== Configurazione ==
== Configurazione ==
Riga 196: Riga 267:
tmpDir='.'
tmpDir='.'
jigdoOpts='--cache jigdo-file-cache.db'
jigdoOpts='--cache jigdo-file-cache.db'
wgetOpts='--passive-ftp --dot-style=mega --continue --timeout=30 --limit-rate=110K'
wgetOpts='-nv --passive-ftp --dot-style=mega --continue --timeout=30 --limit-rate=110K'
scanMenu='/store3/Sarge/loop/    '</pre>
scanMenu='/store3/Sarge/loop/    '</pre>


La personalizzazione più importante è certamente quella relativa a '''wget''': è possibile specificare le opzioni da passare a questo programma tramite la voce '''wgetOpts'''. Nel mio caso ho aggiunto <code>--limit-rate=110K</code> così da limitare la velocità di download a 110Kbyte, evitando la saturazione della banda.
La personalizzazione più importante è certamente quella relativa a '''wget''': è possibile specificare le opzioni da passare a questo programma tramite la voce '''wgetOpts'''. Nel mio caso ho aggiunto <code>--limit-rate=110K</code> così da limitare la velocità di download a 110Kbyte, evitando la saturazione della banda, mentre l'opzione "-nv" limita la verbosità di <code>wget</code> .


== Link ==
== Conclusioni ==
[http://atterer.net/jigdo/ Home Page di Jigdo]
Anche se a prima vista Jigdo sembra uno strumento complesso e macchinoso, non è così. Jigdo rappresenta uno strumento veloce e utile per il download di immagini .iso e per il loro aggiornamento, permettendo di risparmiare molto tempo dopo il primo download.


[http://www.debian.org/CD/jigdo-cd/ Scaricare le immagini dei CD Debian con Jigdo]
A tutti gli scettici consiglio di scaricarlo per provare... diventerà uno strumento fondamentale!


[http://atterer.net/jigdo/#download Jigdo per Windows]
== Collegamenti esterni ==
[1] [http://atterer.org/jigdo/ Homepage del progetto Jigdo]


== Conclusioni ==
'''Download delle immagini con Jigdo'''<br/>
Anche se a prima vista Jigdo sembra uno strumento complesso e macchinoso, non è così. Jigdo rappresenta uno strumento veloce e utile per il download di immagini .iso e per il loro aggiornamento, permettendo di risparmiare molto tempo dopo il primo download.
[2] [https://www.debian.org/CD/jigdo-cd/#which DVD/CD/Blu-ray/netinst per testing e stable]<br/>
[3] [https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware Immagini con firmware]<br/>
[4] [https://cdimage.debian.org/cdimage/archive/ Immagini per versioni antecedenti la stable]<br/>


A tutti gli scettici consiglio di scaricarlo per provare... diventerà uno strumento fondamentale!
{{Autori
|Autore = [[Utente:MaXeR|MaXeR]]
|Verificata_da =
:[[Utente:Wtf|Wtf]]
:[[Utente:S3v|S3v]] 17:09, 8 ago 2017 (CEST)
:[[Utente:Lorenzoz|Lorenzoz]] 19:19, 9 dic 2014 (CET)
:[[Utente:HAL 9000|HAL 9000]] 15:14, 14 lug 2019 (CEST)
|Numero_revisori=4
}}


Autore: [[Utente:MaXeR|MaXeR]]
[[Categoria:Installazione]]
[[Categoria:Installazione]]
[[Categoria:Creare repository]]
[[Categoria:Creare repository]]

Versione attuale delle 13:14, 14 lug 2019

Installazione
Arrow left.png

Preparazione

Procedura generale

Casi specifici

Altro



Debian-swirl.png Versioni Compatibili

Debian 8 "jessie"
Debian 9 "stretch"
Debian 10 "buster"

Introduzione

Jigdo è uno strumento veramente potente: permette di prelevare i singoli file che compongono una ISO e di creare quest'ultima a partire da quanto scaricato.
Anche se può sembrare una cosa inutile, in questo caso risulta una delle alternative più veloci e semplici (questo lo vedremo in seguito) per scaricare e mantenere aggiornate le ISO di Debian.

Questo programma è disponibile per diversi sistemi operativi in modo da poter creare un'immagine di Debian in maniera indipendente dala piattaforma utiizzata. Viene distribuito con una licenza GNU GPL ed è liberamente prelevabile dalla homepage[1] del progetto oppure dai repository di Debian.

Installazione

Jigdo è, ovviamente, disponibile come pacchetto Debian. Con privilegi di amministrazione è quindi sufficiente il seguente comando:

# apt-get install jigdo-file

Per gli utenti di altre distribuzioni è scaricabile presso la homepage del progetto dove sono presenti anche le versioni per gli altri sistemi operativi.

Come funziona

Il principio è molto semplice: vengono scaricati i singoli file facenti parte dell'immagine del CD/DVD per poi riassemblarli nell'immagine finale. Questo porta parecchi vantaggi, sia per chi deve scaricare l'immagine, sia per chi rende disponibili i file da scaricare:

Per chi scarica:

  • dopo il primo download vengono scaricati solo i pacchetti aggiornati;
  • minor banda richiesta;
  • possibilità di interruzione del processo;
  • in caso di interruzione prolungata, i file non aggiornati verranno riutilizzati;
  • un mirror dei repository Debian, in questo caso, può essere usato sia come un normale mirror, sia con Jigdo per creare le immagini.

Per i mirror:

  • vengono gestiti file piccoli;
  • quando ci sono degli aggiornamenti questi non comportano il download di tutta l'immagine, ma solo dei file che hanno subito modifiche;
  • minor carico in caso di utilizzo di Jigdo da parte degli utenti;
  • un mirror dei repository Debian, in questo caso, può essere usato sia come un normale mirror, sia con Jigdo per creare le immagini.

Immagini scaricabili con Jigdo

Per poter utilizzare Jigdo è necessario scaricare uno o più file con estensione ".jigdo" relativi all'immagine (o alle immagini) che si intende creare.

Tipo immagine Architettura Ramo Debian Caratteristiche Link
DVD tutte stable file .jigdo per tutti i DVD. Esiste anche un immagine che contiene solo gli aggiornamenti rispetto al precedente rilascio. Non c'è un file .jigdo per creare un'immagine netinst. [2]
testing file .jigdo per tutti i DVD (non c'è un file .jigdo per netinst). [2]
CD tutte stable file .jigdo per un'installazione completa (solo Xfce), oppure per una netinst o per un'inatallazione su Mac Mini Apple. [2]
testing come per la stable e in più è presente un file .jigdo per creare un'immagine di Debian Edu. [2]
Blu-ray i386 e amd64 stable file .jigdo per la creazione di tre Blu-ray. [2]
Con firmware i386 e amd64 stable e testing [3]
Versioni antecedenti la stable dipende dalla versione stable [4]

Non esistono file ".jigdo" per creare "mini.iso" o immagin per Sid.

Si legga anche la la guida sull'installazione di Debian.

Primo download di una ISO

Supponiamo di voler scaricare il primo DVD di Debian Stretch; i passi da seguire sono i seguenti:

  • creare una directory di lavoro ed entrarci:
$ mkdir jigdo
$ cd jigdo
  • copiare l'URL al file .jigdo che ci interessa, nel nostro caso ''https://cdimage.debian.org/debian-cd/current/amd64/jigdo-dvd/debian-9.0.0-amd64-DVD-1.jigdo'';
  • lanciare il comando
$ jigdo-lite

Verranno poste alcune domande che ci permetteranno di personalizzare il processo di download dei file.
La prima domanda posta riguarda l'URL del file ".jigdo" da scaricare ed è sufficiente incollare l'URL che abbiamo copiato in precedenza.

Jigsaw Download "lite"
Copyright (C) 2001-2005  |  jigdo@
Richard Atterer          |  atterer.net
Loading settings from `/home/utente/.jigdo-lite'

-----------------------------------------------------------------
To resume a half-finished download, enter name of .jigdo file.
To start a new download, enter URL of .jigdo file.
You can also enter several URLs/filenames, separated with spaces,
or enumerate in {}, e.g. `http://server/cd-{1_NONUS,2,3}.jigdo'
jigdo: https://cdimage.debian.org/debian-cd/current/amd64/jigdo-dvd/debian-9.0.0-amd64-DVD-1.jigdo
If you already have a previous version of the CD you are
downloading, jigdo can re-use files on the old CD that are also
present in the new image, and you do not need to download them
again. Mount the old CD ROM and enter the path it is mounted under
(e.g. `/mnt/cdrom').
Alternatively, just press enter if you want to start downloading
the remaining files.
Files to scan:  

Questa opzione ci sarà molto utile in futuro, per ora, a meno che non si dispone di un CD di testing, non è necessario rispondere. Continuiamo con il processo premendo [invio].

-----------------------------------------------------------------
The jigdo file refers to files stored on Debian mirrors. Please
choose a Debian mirror as follows: Either enter a complete URL
pointing to a mirror (in the form
`ftp://ftp.debian.org/debian/'), or enter any regular expression
for searching through the list of mirrors: Try a two-letter
country code such as `de', or a country name like `United
States', or a server name like `sunsite'.
Debian mirror [http://debian.fastweb.it/debian/]:  

La terza domanda ci permette di scegliere il mirror da cui scaricare. Consiglio vivamente di scegliere un mirror italiano, così da alleggerire il carico di quelli centrali.
In questo caso è stato scelto http://debian.fastweb.it/debian; se non si conoscono gli indirizzi esatti dei mirror, è possibile inserire semplicemente le due lettere del paese (nel nostro caso it).

-----------------------------------------------------------------
Merging parts from `file:' URIs, if any...
Found 0 of the 1192 files required by the template
Will not create image or temporary file - try again with different input files

La configurazione pre-download è terminata; Jigdo provvederà, ora, a scaricare tutti i file necessari per la creazione dell'immagine. Ogni 10 pacchetti verrà mostrata una scritta come quella riportata sopra, che ci informerà sull'andamento del download. Sempre ogni 10 file scaricati, verrà aggiornata l'immagine (che verrà creata dopo i primi 10 pacchetti correttamente scaricati):

FINISHED --11:17:54--
Downloaded: 1,602,276 bytes in 10 files
Found 10 of the 1192 files required by the template
 57%  374622k/655444k  writing image

Il download continuerà fino a quanto non saranno scaricati tutti i file componenti l'immagine.

FINISHED --19:51:35--
Downloaded: 482,660 bytes in 2 files
Found 2 of the 2 files required by the template
Successfully created `debian-testing-i386-kde-CD-1.iso'

-----------------------------------------------------------------
Finished!

Bene, ora i file necessari sono stati scaricati ed è stata creata l'immagine debian-testing-i386-kde-CD-1.iso.

Ora viene eseguito un check aggiuntivo, per verificare l'integrità dell'immagine.

The fact that you got this far is a strong indication that `debian-testing-i386-kde-CD-1.iso'
was generated correctly. I will perform an additional, final check,
which you can interrupt safely with Ctrl-C if you do not want to wait.

OK: Checksums match, image is good!

L'immagine è stata scaricata e costruita senza errori, ora possiamo masterizzarla e utilizzarla normalmente.

Degna di nota è la possibilità di interruzione del processo, che può essere ripreso in seguito esattamente dal punto in cui è stato interrotto. Ogni volta che si ricomincerà a scaricare l'immagine, si verrà avvisati dell'esistenza della directory debian-testing-i386-kde-CD-1.iso.tmpdir (il nome è relativo al primo CD di testing con KDE):

The temporary directory `debian-testing-i386-kde-CD-1.iso.tmpdir' already exists. Its contents
ARE GOING TO BE DELETED (possibly after having been copied to the
image, if they are of interest for it). If you do not want this
to happen, press Ctrl-C now. Otherwise, press Return to proceed.
:

In questo caso possiamo tranquillamente ignorare il messaggio premendo [invio] e continuare con il download.

Aggiornamento di una ISO

L'aggiornamento di una ISO è un processo quasi identico a quello descritto nel paragrafo precedente.
È necessario indicare l'URL del file .jigdo aggiornato e seguire una delle seguenti vie per recuperare i file ancora validi presenti nella vecchia ISO (così da velocizzare al massimo il processo di download).

Supponiamo di aver scaricato un'immagine Debian con Jigdo e che sia stata rilasciato un aggiornamento settimanale (se stiamo utilizzando testing) o una point release (se stiamo utilizzando Debian stable). Con Jigdo possiamo evitare di scaricare tutte le immagini, scaricando solamente i file che sono stati aggiornati.

Da una .iso

Testing

Se abbiamo conservato l'ISO del CD/DVD è possibile montarlo in loop ed utilizzarle come se fosse un normale CD.

Warning.png ATTENZIONE
Prima di eseguire il comando jigdo-lite assicurarsi che nella posizione da cui si sta eseguendo il comando non sia già presente un vecchio file .template relativo all'immagine da aggiornare, poiché in caso contrario jigdo non procederà a scaricare il nuovo file .template, ma riutilizzerà quello vecchio senza aggiornare un bel niente.


Dato che la nuova immagine aggiornata ha lo stesso identico nome della vecchia, per prima cosa rinominiamola:

$ mv debian-testing-i386-kde-CD-1.iso debian-testing-i386-kde-CD-1.iso.old
Info.png Nota:
In alternativa è possibile eseguire la procedura in una nuova directory, oppure spostare l'immagine. È possibile effettuare lo spostamento anche se la ISO è già stata montata (ovviamente sempre all'interno della stessa partizione) in quanto mount prende come riferimento l'inode del file e non il nome.

Stable

L'aggiornamento di un'immagine di Debian stable è necessario tipicamente solo quando viene rilasciata la point release. In questo caso il nome dell'immagine e, quindi, del file ".template" saranno diversi e non è necessario, a differenza di quanto avveniva per testing, alcun intervento preliminare al montaggio del file .iso.

Mount

Per montare una immagine in loop dobbiamo essere root ed avere una directory dove far montare il contenuto (supponiamo /mnt):

# mount -o loop debian-testing-i386-kde-CD-1.iso.old /mnt

Oppure se si è installato il pacchetto fuseiso9660, senza privilegi è sufficiente creare una directory nella propria home e montarla lì:

$ mkdir "$HOME"/mnt
$ fuseiso9660 debian-testing-i386-kde-CD-1.iso.old "$HOME"/mnt

Prima di Debian 8 (Jessie) era anche necessario che l'utente facesse parte del gruppo fuse.

Se tutto è andato bene, in /mnt (oppure in $HOME/mnt se abbiamo utilizzato fuse) troveremo il contenuto del primo CD di Debian testing:

$ ls -l /mnt
totale 689
-r--r--r-- 1 root root     27 16 feb  2010 autorun.inf
dr-xr-xr-x 2 root root   2048 16 feb  2010 css
lr-xr-xr-x 1 root root      1 16 feb  2010 debian -> .
dr-xr-xr-x 3 root root   2048 16 feb  2010 dists
dr-xr-xr-x 4 root root   4096 16 feb  2010 doc
-r--r--r-- 1 root root  75863 11 feb  2010 g2ldr
-r--r--r-- 1 root root   8192 11 feb  2010 g2ldr.mbr
dr-xr-xr-x 2 root root   2048 16 feb  2010 install
dr-xr-xr-x 2 root root   2048 16 feb  2010 install.386
dr-xr-xr-x 2 root root   4096 16 feb  2010 isolinux
-r--r--r-- 1 root root  94785 16 feb  2010 md5sum.txt
dr-xr-xr-x 2 root root   4096 16 feb  2010 pics
dr-xr-xr-x 3 root root   2048 16 feb  2010 pool
-r--r--r-- 1 root root    204 16 feb  2010 README.excluded
-r--r--r-- 1 root root   9163 16 feb  2010 README.html
-r--r--r-- 1 root root 132350 12 feb  2010 README.mirrors.html
-r--r--r-- 1 root root  69760 12 feb  2010 README.mirrors.txt
-r--r--r-- 1 root root    398 16 feb  2010 README.source
-r--r--r-- 1 root root   5748 16 feb  2010 README.txt
-r--r--r-- 1 root root 280420 11 feb  2010 setup.exe
dr-xr-xr-x 2 root root   2048 16 feb  2010 tools
-r--r--r-- 1 root root    176 16 feb  2010 win32-loader.ini

Aggiornamento

Ora procediamo come sopra, con l'unico accorgimento di indicare /mnt (o la directory in cui abbiamo montato l'immagine) come risposta alla seguente domanda:

If you already have a previous version of the CD you are
downloading, jigdo can re-use files on the old CD that are also
present in the new image, and you do not need to download them
again. Mount the old CD ROM and enter the path it is mounted under
(e.g. `/mnt/cdrom').
Alternatively, just press enter if you want to start downloading
the remaining files.
Files to scan: /mnt

Il programma si occuperà di prendere i file riutilizzabili, evitando di riscaricarli. Il resto del processo si svolge come per un download normale.

Da un CD/DVD

Se invece si dispone solo dell'immagine masterizzata è sufficiente montare il CD/DVD ed indicare, alla richiesta di un percorso in cui cercare dei file riutilizzabili, il punto di mount del lettore CD/DVD.

Configurazione

Jigdo salva alcune impostazioni nel file ~/.jigdo-lite.

Eccone un esempio:

jigdo=''
debianMirror='http://debian.fastweb.it/debian/'
tmpDir='.'
jigdoOpts='--cache jigdo-file-cache.db'
wgetOpts='-nv --passive-ftp --dot-style=mega --continue --timeout=30 --limit-rate=110K'
scanMenu='/store3/Sarge/loop/    '

La personalizzazione più importante è certamente quella relativa a wget: è possibile specificare le opzioni da passare a questo programma tramite la voce wgetOpts. Nel mio caso ho aggiunto --limit-rate=110K così da limitare la velocità di download a 110Kbyte, evitando la saturazione della banda, mentre l'opzione "-nv" limita la verbosità di wget .

Conclusioni

Anche se a prima vista Jigdo sembra uno strumento complesso e macchinoso, non è così. Jigdo rappresenta uno strumento veloce e utile per il download di immagini .iso e per il loro aggiornamento, permettendo di risparmiare molto tempo dopo il primo download.

A tutti gli scettici consiglio di scaricarlo per provare... diventerà uno strumento fondamentale!

Collegamenti esterni

[1] Homepage del progetto Jigdo

Download delle immagini con Jigdo
[2] DVD/CD/Blu-ray/netinst per testing e stable
[3] Immagini con firmware
[4] Immagini per versioni antecedenti la stable




Guida scritta da: MaXeR Swirl-auth100.png Guida Debianized
Estesa da:
Verificata da:
Wtf
S3v 17:09, 8 ago 2017 (CEST)
Lorenzoz 19:19, 9 dic 2014 (CET)
HAL 9000 15:14, 14 lug 2019 (CEST)

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