5. Aggiornamento dell'immagine

Presumibilmente, si è letta l'ultima sezione, seguito le istruzioni, masterizzata la nuova ISO su CD ci si sente confusi. Presto o tardi, alcuni pacchetti saranno aggiornati ed ora si vorrà donare il vecchio CD ad un qualunque "novellino" alla festa dell'installazione del proprio LUG e masterizzare un insieme di CD aggiornati. Siccome si sta per diventare un jigdo-guru, non entreremo in particolari penosi come nell'ultima sezione

Il primo passo è scaricare di nuovo i file .jigdo e .template, per le immagini che si desidera aggiornare. Ci si potrebbe chiedere perché è necessario scaricarli nuovamente. Il motivo è che l'immagine aggiornata da scaricare è cambiata. Dei file possono essere stati aggiunti o rimossi, ma, anche se non lo fossero, tutti i pacchetti o file aggiornati avranno un checksum diverso dal checksum elencato nei file .jigdo e .template usati quando si è scaricata la prima volta l'immagine

A questo punto, o si è in possesso di un vecchio CD o di una vecchia ISO sull'hard disk. Andiamo per gradi su come ottenere un file ISO aggiornato. Se è un CD, inserirlo nel lettore cd e montarlo:

      $ mount /cdrom
    

In altro modo, avendo un file ISO da aggiornare, montarlo in un loop device (da utente root per poterlo fare). Usando Woody, per esempio:

      # mount -o loop woody-i386-1.iso /mnt
    

Ora avviamo jigdo-lite con il file .jigdo per argomento.

      $ jigdo-lite woody-i386-1.jigdo

      -----------------------------------------------------------------
      Jigsaw Download "lite"
      Copyright 2001-2002 by Richard Atterer <jigdo@atterer.net>
      Loading settings from `/home/p/.jigdo-lite'

      -----------------------------------------------------------------
      Images offered by `woody-i386-1.jigdo':
        1: Debian GNU/Linux 3.0 r0 Woody
             - Official i386 Binary-1 CD (debian-30r0-i386-binary-1.iso)

      Further information about `debian-30r0-i386-binary-1.iso':
      Generated on Thu, 18 Jul 2002 14:34:12 +0100

      -----------------------------------------------------------------
      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 on the new image, and you do not need to download them
      again.  You found the secret message; you're a very careful
      reader.  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 the download of any remaining files.

      You can also enter a single digit from the list below to
      select the respective entry for scanning:
        1: /mnt
      Files to scan:
    

jigdo-lite chiedendo di indicargli il percorso del proprio CD montato (se si sta aggiornando un CD) o il proprio file ISO montato in loop (se si sta usando un file ISO). Nell'esempio si sta usando un file ISO montato in /mnt, perciò si introdurrà /mnt. Se si sta aggiornando un CD inserire la directory dove è montato, molto probabilmente /cdrom. In entrambi i casi jigdo-lite scansionerà le directory del proprio dispositivo montato, determinerà quali file devono essere aggiornati e riuserà quei file che non hanno bisogno di essere aggiornati. Vedere anche la Sezione 7.2.

Si potrebbe vedere qualcosa come:

      Files to scan: /mnt/other

      Not downloading .template file - `woody-i386-1.template' already present
      jigdo-file: Output file `debian-30r0-i386-binary-1.iso' already exists - delete
      it or use --force
      jigdo-file failed with code 3 - aborting.
    

Che cosa è successo? Si vuole mostrare questo perché è un problema che prima o poi si presenterà. Si sta aggiornando un file ISO, ma il mio vecchio file di immagine è nella stessa directory in cui si sta lavorando. Jigdo-lite vuole generare un file chiamato woody-i386-1.iso ma c'è già un file con quel nome nella directory corrente (vecchia immagine). Jigdo-lite non vuole distruggere quel file, mi fa sapere che posso cancellare quel file o usare --force per sovrascrivere il file. È possibile anche rinominarlo o spostarlo, ma credo che jigdo-lite presupponga che questo sia già noto. :-)

Non si abbia paura di spostare o rinominare il file di immagine solo perché è stato montato. Il filesystem usa gli inodes sotto il "cappuccio" dei nomi e, anche se si sposta o rinomina il file, l'inode rimane lo stesso. Non si danneggerà il filesystem montato in /mnt. Per quanto riguarda la cancellazione del file ISO, anche ciò non danneggerà il filesystem montato. L'inode del file sarà disallocato solo quando il conteggio di riferimento dell'inode sarà zero. Il montaggio dell'immagine ISO aumenta il conteggio di riferimento, in modo che il file viene realmente cancellato solo dopo aver usato il comando rm sul file e smontato il dispositivo. Se si sta aggiornando il CD, di tutto ciò, non ci si deve preoccupare. :-)

Quindi per risolvere il problema, per esempio, si rinomirà il file ISO in woody-i386-1.iso.old e si eseguirà di nuovo il jigdo-lite. Provando ancora:

      $ jigdo-lite woody-i386-1.jigdo

      -----------------------------------------------------------------
      Jigsaw Download "lite"
      Copyright 2001-2002 by Richard Atterer <jigdo@atterer.net>
      Loading settings from `/home/p/.jigdo-lite'

      -----------------------------------------------------------------
      Images offered by `woody-i386-1.jigdo':
        1: Debian GNU/Linux 3.0 r0 Woody - Official i386 Binary-1 CD
             (debian-30r0-i386-binary-1.iso)

      Further information about `debian-30r0-i386-binary-1.iso':
      Generated on Thu, 18 Jul 2002 14:34:12 +0100

      -----------------------------------------------------------------
      If you already have a previous version of the image you are
      downloading, jigdo can re-use files on the old image that are also
      present on 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 the download of any remaining files.
      You can also enter a single digit from the list below to
      select the respective entry for scanning:
        1: /mnt
      Files to scan: /mnt
      Not downloading .template file - `woody-i386-1.template' already present
      ...
      Found 1200 of the 1224 files required by the template
      ...

jigdo-lite ricorda che si voleva esaminare /mnt e informa che è possibile digitare 1 ed esaminare quella cartella o digitare di nuovo la cartella. Volendo essere ostinati, si digita di nuovo il nome della cartella.

L'ellipsis rappresenta una parte di testo che cambia rapidamente La prima ellipsis è un elenco dinamico dei file che jigdo-lite sta esaminando. La seconda ellipsis denota il progresso nello scrivere woody-i386-1.iso.tmp. Una volta che jigdo-lite finisce, di esaminare i file e di scrivere il file ISO provvisorio, stampa:

      Copied input files to temporary file 'woody-i386-1.iso.tmp'
         - repeat command and supply more files to continue

      -----------------------------------------------------------------
      If you already have a previous version of the image you are
      downloading, jigdo can re-use files on the old image that are also
      present on 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 the download of any remaining files.
      You can also enter a single digit from the list below to
      select the respective entry for scanning:
        1: /mnt
      Files to scan:
    

Poichè normalmente non si ha un altra fonte di file da esaminare diversa dal proprio file ISO montato in loop (o dal CD), premere ENTER. Jigdo-lite chiederà quale server si vuole usare proprio come quando si è scaricata l'mmagine ISO per la prima volta. Si è già risposto prima a queste domande, ma se veramente non si ricorda, è possibile rileggere la Sezione 4.4.

A questo punto, si vedrà jigdo-lite lavorare magicamente. Non è semplice?