[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico] [volume]
nanoLinux prevede la possibilità di «aggiornare» il sistema a partire dal CD o dal DVD di una nuova edizione. L'aggiornamento avviene con l'utilizzo di Rsync (capitolo 246) e in pratica si ottiene un riallineamento con il CD o il DVD, che può contenere anche una versione precedente o essere di un livello differente (quindi si può trasformare un nanoLinux II in un nanoLinux III o anche viceversa).
La procedura di riallineamento deve sottostare a qualche compromesso, nel tentativo di preservare la configurazione e i registri (log) del sistema installato. Pertanto, il risultato che si ottiene dal riallineamento non è mai perfettamente conforme al disco utilizzato per l'aggiornamento.
La procedura di riallineamento (gestita tramite lo script nanorc), prevede di salvare una copia di sicurezza della directory /etc/
, con un nome del tipo /etc.orign/
, dove n rappresenta la data (anno, mese, giorno, ore, minuti e secondi) del momento in cui inizia la copia. Se le sostituzioni fatte attraverso la procedura di riallineamento non sono gradite in tutto, si possono recuperare a mano i file necessari. Naturalmente, quando tutto risulta funzionare correttamente, la directory /etc.orign/
può essere eliminata.
Durante il riallineamento, i messaggi generati dai programmi utilizzati vengono ridiretti verso il file /var/log/system-upgrade-log
, nel caso fosse necessario vedere cosa è accaduto realmente.
Durante l'aggiornamento della directory /etc/
, i file /etc/passwd
e /etc/group
vengono rimpiazzati, recuperando gli utenti e i gruppi con numero UID e GID da 1 000 a 29 999. In particolare, nel file /etc/group
vengono ripristinate le aggregazioni degli utenti ai gruppi che rappresentano funzioni speciali del sistema.
I file contenuti all'interno delle directory /etc/cron.*/
, vengono semplicemente sovrascritti, senza eliminare quelli mancanti nel disco utilizzato per l'allineamento. Ciò serve a evitare di cancellare degli script aggiunti per delle gestioni particolari, ma d'altra parte, ciò significa che eventuali script superflui devono essere rimossi manualmente (ciò succede in modo speciale quando da un livello si aggiorna a un livello inferiore, eliminando molti programmi).
I file utilizzati per l'avvio (kernel e file di GRUB) non vengono modificati; vengono solo aggiunti i kernel che hanno versioni diverse da quelli già presenti. Per fare in modo di utilizzare i file aggiunti, bisogna aggiornare i collegamenti simbolici (/vmlinuz
, /vmlinuz.old
ed eventualmente altri collegamenti contenuti nella directory /boot/
); infine occorre verificare il contenuto del file /boot/grub/menu.lst
.
La directory /opt/
viene aggiornata solo nei contenuti che esistono effettivamente nel disco di origine, usato per l'aggiornamento. In questo modo, se ci sono sottodirectory di applicazioni che nel disco di aggiornamento non sono presenti, queste vengono preservate.
L'aggiornamento, ovvero il riallineamento a una certa edizione, avviene a partire dal sistema da aggiornare o riallineare in funzione. Il disco usato per aggiornare è probabilmente un CD o un DVD, che contiene uno script nanorc aggiornato; pertanto, conviene cominciare rimpiazzando proprio questo script. Si presume di voler aggiornare a partire dal mini DVD di nanoLinux IV, inserito in un lettore a cui si accede tramite il file di dispositivo /dev/hdc
; si comincia con l'innesto del DVD:
#
mount /mnt/hdc
[Invio]
Quindi si copia il file aggiornato nella sua collocazione naturale all'interno del file system attuale:
#
cp /mnt/hdc/HD-ROOT/etc/script/nanorc /etc/script
[Invio]
A questo punto si può iniziare con il comando di aggiornamento, tenendo conto che non fa alcuna differenza che il DVD sia già innestato o meno:
#
umount /mnt/hdc
[Invio]
#
nanorc system upgrade
[Invio]
|
Prima di iniziare, viene ricordato che l'aggiornamento può portare alla perdita di tutti o anche solo di alcuni dati, che possono essere importanti, pertanto, per la propria sicurezza, è bene procedere soltanto se è stata eseguita una copia di ciò che è di proprio interesse.
<
Yes
>
|
Viene richiesto di specificare il file di dispositivo a cui corrisponde il disco (in questo caso il DVD) che contiene la versione aggiornata di nanoLinux.
/mnt/hdc
<OK
>
Il disco viene innestato in una directory temporanea; se l'operazione ha successo, si prosegue:
|
Viene fatto osservare che il sistema attuale corrisponde a un nanoLinux III, versione 2005.07.01, mentre si richiede di aggiornare, portandolo a un nanoLinux IV, versione 2005.10.01. L'operazione corrisponde alle proprie aspettative, quindi si prosegue:
<
Yes
>
A questo punto inizia il riallineamento del sistema, che può durare anche diverse ore. Eventualmente si può osservare il contenuto del file /var/log/system-upgrade-log
, mentre il lavoro procede. Al termine si ottiene il messaggio seguente:
|
In questo caso si viene a sapere, in particolare, che è stata conservata una copia della directory /etc/
originale, nella directory /etc.orig20051006125809/
.
Se l'operazione di allineamento dovesse interrompersi per qualunque motivo, prima di ripeterla, conviene mettere da parte la directory /etc/
esistente, copiando nuovamente l'originale:
#
mv /etc /etc.bad
[Invio]
#
cp -dpRv /etc.orig20051006125809 /etc
[Invio]
#
nanorc system upgrade
[Invio]
...
L'aggiornamento attraverso nanorc system upgrade non aggiorna i kernel, o almeno non lo fa completamente; pertanto occorre fare qualche piccolo intervento manuale. Eventualmente, il procedimento che viene spiegato qui vale per aggiornare il kernel indipendentemente da altri problemi.
Si suppone di disporre di un kernel versione 2.6.21.11. Per prima cosa viene innestato il CD o il DVD (di nanoLinux) che lo contiene:
#
mount /mnt/hdc
[Invio]
Si copiano i file principali nella directory /boot/
:
#
cp /mnt/hdc/HD-ROOT/boot/System.map-2.6.21.11 /boot
[Invio]
#
cp /mnt/hdc/HD-ROOT/boot/config-2.6.21.11 /boot
[Invio]
#
cp /mnt/hdc/HD-ROOT/boot/vmlinuz-2.6.21.11 /boot
[Invio]
Si sistemano i collegamenti simbolici a cui forse fa riferimento il file /boot/grub/menu.lst
:
#
rm /boot/vmlinuz
[Invio]
#
rm /vmlinuz
[Invio]
#
ln -s /boot/vmlinuz-2.6.21.11 /boot/vmlinuz
[Invio]
#
ln -s /boot/vmlinuz-2.6.21.11 /vmlinuz
[Invio]
Si copiano i moduli:
#
cp -dpRv /mnt/hdc/HD-ROOT/lib/modules/2.6.21.11 /lib/modules
[Invio]
Quello che resta da fare, eventualmente, è di verificare e forse ritoccare il file /boot/grub/menu.lst
.
Appunti di informatica libera 2006.07.01 --- Copyright © 2000-2006 Daniele Giacomini -- <daniele (ad) swlibero·org>
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome nanolinux_aggiornamento.htm
[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico]