Guida all'installazione di Solaris 10 10/08: Solaris Live Upgrade e pianificazione degli aggiornamenti

Capitolo 13 Creazione di un ambiente di boot per i pool radice ZFS

Questo capitolo contiene le procedure dettagliate per la creazione di un ambiente di boot ZFS quando si utilizza Solaris Live Upgrade.


Nota –

La migrazione da un file system UFS a un pool radice ZFS o la creazione di ambienti di boot ZFS con Solaris Live Upgrade è stata introdotta nella versione Solaris 10 10/08. Per l'utilizzo di Solaris Live Upgrade su un sistema che contiene file system UFS, vedere la Parte I, Aggiornamento con Solaris Live Upgrade del presente manuale.


Questo capitolo descrive le procedure richieste per le seguenti attività:

Per informazioni sull'utilizzo di ZFS in caso siano presenti zone non globali, vedere il Capitolo 14Solaris Live Upgrade per ZFS in presenza di zone non globali.

Migrazione di un file system UFS a un file system ZFS

Questa procedura descrive la migrazione da un file system UFS a un file system ZFS. La creazione di un ambiente di boot consente di copiare i file system di importanza critica da un ambiente di boot UFS attivo a un pool radice ZFS. Il comando lucreate copia i file system di importanza critica su un nuovo ambiente di boot all'interno di un pool radice ZFS esistente. I file system definiti dall'utente (condivisibili) non vengono copiati e non vengono condivisi con l'ambiente di boot UFS di origine. Inoltre, il file system /swap non viene condiviso tra il file system UFS e il pool radice ZFS. Per una descrizione generale dei file system di importanza critica e dei file system condivisibili, vedere Tipi di file system.

ProcedureEseguire la migrazione di un file system UFS a un file system ZFS


Nota –

Per eseguire la migrazione di un file system radice (/) UFS a un pool radice ZFS, è necessario fornire il nome del pool radice. I file system di importanza critica vengono copiati nel pool radice.


  1. Completare i seguenti passaggi la prima volta che si esegue un aggiornamento con Solaris Live Upgrade.


    Nota –

    L'utilizzo di Solaris Live Upgrade per creare nuovi ambienti di boot ZFS richiede la versione Solaris 10 10/08 o superiore. Le versioni precedenti non includono il software richiesto per ZFS e Solaris Live Upgrade.


    1. Se necessario, rimuovere i pacchetti esistenti di Solaris Live Upgrade. Se si sta eseguendo l'aggiornamento a una nuova versione, è necessario installare i pacchetti relativi a quella versione.

      I tre pacchetti di Solaris Live Upgrade, SUNWluu, SUNWlur e SUNWlucfg, includono il software richiesto per l'aggiornamento con Solaris Live Upgrade. I pacchetti includono il software esistente, le nuove funzioni e le correzioni dei bug. Se i pacchetti esistenti non vengono rimossi e la nuova versione non viene installata sul sistema prima di usare Solaris Live Upgrade, l'aggiornamento alla versione di destinazione non riesce.


      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    2. Installare i nuovi pacchetti di Solaris Live Upgrade dalla versione verso la quale si esegue l'aggiornamento. Per informazioni, vedere Installazione di Solaris Live Upgrade.

    3. Prima di installare o eseguire Solaris Live Upgrade, è necessario installare le seguenti patch. Queste patch garantiscono che tutte le correzioni dei bug e le nuove funzioni siano installate.

      Verificare di disporre dell'elenco più aggiornato delle patch accedendo al sito SunSolve Consultare il documento informativo 206844 (in precedenza 72099) sul sito Web di SunSolve.

      • Diventare superutente o assumere un ruolo equivalente.

      • Se le patch vengono memorizzate sul disco rigido locale creare una directory, ad esempio /var/tmp/patches_lu, e scaricare le patch in quella directory.

      • Dal sito Web SunSolve, scaricare l'elenco delle patch.

      • Spostarsi nella directory delle patch.


        # cd /var/tmp/lupatches
        
      • Installare le patch con il comando patchadd.


        # patchadd ID_patch
        

        ID_patch indica il numero o i numeri delle patch. Se le patch sono più di una, separare i nomi con uno spazio.


        Nota –

        Le patch devono essere applicate nell'ordine specificato nel documento informativo (InfoDoc) 206844.


      • Riavviare il sistema, se necessario. Alcune patch richiedono il riavvio del sistema.

        solo x86: Il riavvio del sistema è necessario per eseguire correttamente Solaris Live Upgrade.


        # init 6
        
  2. Creare un pool radice ZFS.

    Il pool radice ZFS deve trovarsi su una singola slice per essere avviabile e aggiornabile.


    # zpool create rpool  c0t1d0s5
    
    rpool

    Specifica il nome del nuovo pool radice ZFS da creare.

    c0t1d0s5

    Crea il nuovo pool radice sulla slice del disco, c0t1d0s5.

    Per informazioni sulla creazione di un nuovo pool radice, vedere il manuale Solaris ZFS Administration Guide.

  3. Eseguire la migrazione del file system radice (/) UFS sul nuovo pool radice ZFS.


    # lucreate [-c BE_ufs] -n nuovo-BE-zfs -p rpool
    
    -c BE_ufs

    Assegna il nome BE_ufs all'ambiente di boot UFS corrente. Questa opzione è richiesta solo ed esclusivamente per la creazione del primo ambiente di boot. Se alla prima esecuzione di lucreate non si utilizza l'opzione -c, il software crea automaticamente un nome.

    -n nuovo-BE-zfs

    Assegna il nome nuovo-BE-zfs all'ambiente di boot da creare. Il nome deve essere unico sul sistema.

    -p rpool

    Posiziona il nuovo file system radice (/) ZFS nel pool radice ZFS definito in pool_radice.

    La creazione del nuovo ambiente di boot ZFS può richiedere un certo tempo. I dati del file system UFS vengono copiati nel pool radice ZFS. Una volta creato l'ambiente di boot inattivo, è possibile usare i comandi luupgrade o luactivate per aggiornare o attivare il nuovo ambiente di boot ZFS.

  4. (Opzionale) Verificare che l'ambiente di boot sia completo.

    In questo esempio, il comando lustatus indica se la creazione dell'ambiente di boot è terminata e se l'ambiente è avviabile.


    # lustatus
    boot environment   Is         Active   Active     Can	    Copy 
    Name               Complete   Now      OnReboot   Delete	 Status 
    -----------------------------------------------------------------
    ufsBE               yes       yes      yes        no         -
    nuovo-BE-zfs        yes       no       no        yes         -
  5. (Opzionale) Verificare le informazioni di base sui set di dati.

    Il comando list indica i nomi di tutti i set di dati presenti sul sistema. In questo esempio, rpool è il nome del pool ZFS e nuovo-BE-zfs è il nome dell'ambiente di boot ZFS appena creato.


    # zfs list
    NAME                        USED  AVAIL  REFER  MOUNTPOINT 
    rpool                      9.29G  57.6G    20K  /rpool
    rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
    rpool/ROOT/nuovo-BE-zfs    5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
    rpool/dump                 1.95G      -  1.95G  - 
    rpool/swap                 1.95G      -  1.95G  - 

    I punti di attivazione elencati per il nuovo ambiente di boot sono temporanei fino all'esecuzione del comando luactivate. I volumi /dump e /swap non sono condivisi con l'ambiente di boot UFS originale ma vengono condivisi con il pool radice ZFS e con gli ambienti di boot inclusi nel pool radice.

    A questo punto è possibile aggiornare e attivare il nuovo ambiente di boot. Vedere l'Esempio 13–1.


Esempio 13–1 Migrazione da un file system radice (/) UFS a un pool radice ZFS

In questo esempio, il nuovo pool radice ZFS, rpool, viene creato su una slice separata, C0t0d0s4. Il comando lucreate esegue la migrazione dell'ambiente di boot UFS corrente in esecuzione,c0t0d0, sul nuovo ambiente di boot ZFS, nuovo-BE-zfs, e posiziona il nuovo ambiente di boot in rpool.


# zpool create rpool C0t0d0s4

# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
# lucreate -c c0t0d0 -n nuovo-BE-zfs -p rpool
Analyzing system configuration.
Current boot environment is named <c0t0d0>.
Creating initial configuration for primary boot environment <c0t0d0>.
The device </dev/dsk/c0t0d0> is not a root device for any boot 
environment; cannot get BE ID.
PBE configuration successful: PBE name <c0t0d0> PBE Boot Device 
</dev/dsk/c0t0d0>.
Comparing source boot environment <c0t0d0> file systems with the file 
system(s) you specified for the new boot environment. Determining which 
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Updating system configuration files.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot 
environment; cannot get BE ID.
Creating configuration for boot environment <nuovo-BE-zfs>.
Source boot environment is <c0t0d0>.
Creating boot environment <nuovo-BE-zfs>.
Creating file systems on boot environment <nuovo-BE-zfs>.
Creating <zfs> file system for </> in zone <global> on 
<rpool/ROOT/nuovo-BE-zfs>.
Populating file systems on boot environment <nuovo-BE-zfs>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <BE_zfs>.
Creating compare database for file system </>.
Making boot environment <BE_zfs> bootable.
Creating boot_archive for /.alt.tmp.b-cBc.mnt
updating /.alt.tmp.b-cBc.mnt/platform/sun4u/boot_archive
Population of boot environment <nuovo-BE-zfs> successful.
Creation of boot environment <nuovo-BE-zfs> successful.

# lustatus
boot environment   Is         Active   Active     Can	    Copy 
Name               Complete   Now	  OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
c0t0d0             yes       yes      yes        no         - 
nuovo-BE-zfs        yes       no       no        yes       -

# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
rpool/ROOT/BE_zfs          5.38G  57.6G   551M  
rpool/ROOT/nuovo-BE-zfs    5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

A questo punto è possibile aggiornare o attivare il nuovo ambiente di boot.

In questo esempio, il nuovo ambiente di boot viene aggiornato con il comando luupgrade a partire da un'immagine che è memorizzata nella posizione indicata dall'opzione -s.


# luupgrade -n BE_zfs -u -s /net/install/export/s10/combined.s10
 51135 blocks 
miniroot filesystem is <lofs>
Mounting miniroot at 
</net/install/export/solaris_10/combined.solaris_10_wos
/Solaris_10/Tools/Boot> 
Validating the contents of the media 
</net/install/export/s10/combined.s10>. 
The media is a standard Solaris media. 
The media contains an operating system upgrade image. 
The media contains Solaris version <10_1008>. 
Constructing upgrade profile to use. 
Locating the operating system upgrade program. 
Checking for existence of previously scheduled Live 
Upgrade requests. 
Creating upgrade profile for BE <BE_zfs>. 
Determining packages to install or upgrade for BE <BE_zfs>. 
Performing the operating system upgrade of the BE <BE_zfs>. 
CAUTION: Interrupting this process may leave the boot environment 
unstable or unbootable. 
Upgrading Solaris: 100% completed 
Installation of the packages from this media is complete. 
Adding operating system patches to the BE <BE_zfs>. 
The operating system patch installation is complete. 
INFORMATION: The file /var/sadm/system/logs/upgrade_log on boot 
environment <BE_zfs> contains a log of the upgrade operation. 
INFORMATION: The file var/sadm/system/data/upgrade_cleanup on boot 
environment <BE_zfs> contains a log of cleanup operations required. 
INFORMATION: Review the files listed above. Remember that all 
of the files are located on boot environment <BE_zfs>. 
Before you activate boot environment <BE_zfs>, determine if any 
additional system maintenance is required or if additional media 
of the software distribution must be installed. 
The Solaris upgrade of the boot environment <BE_zfs> is complete.

Il nuovo ambiente di boot può essere attivato in qualsiasi momento dopo la creazione.


# luactivate nuovo-BE-zfs
**********************************************************************

The target boot environment has been activated. It will be used when you 
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You 
MUST USE either the init or the shutdown command when you reboot. If you 
do not use either init or shutdown, the system will not boot using the 
target BE.

**********************************************************************
In case of a failure while booting to the target BE, the following process 
needs to be followed to fallback to the currently working boot environment:

1. Enter the PROM monitor (ok prompt).

2. Change the boot device back to the original boot environment by typing:

     setenv boot-device /pci@1f,0/pci@1/scsi@4,1/disk@2,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

Modifying boot archive service
Activation of boot environment <nuovo-BE-zfs> successful.

Riavviare il sistema nell'ambiente di boot ZFS.


# init 6
# svc.startd: The system is coming down.  Please wait.
svc.startd: 79 system services are now being stopped.
.
.
.

Se si ritorna all'ambiente di boot UFS, sarà necessario importare nuovamente eventuali pool di memorizzazione ZFS creati nell'ambiente di boot ZFS in quanto questi non sono automaticamente disponibili nell'ambiente di boot UFS. Quando si torna all'ambiente di boot UFS vengono visualizzati messaggi simili ai seguenti.


# luactivate c0t0d0
WARNING: The following files have changed on both the current boot 
environment <nuovo-BE-zfs> zone <global> and the boot environment 
to be activated <c0t0d0>:
 /etc/zfs/zpool.cache
INFORMATION: The files listed above are in conflict between the current 
boot environment <BE_zfs> zone <global> and the boot environment to be 
activated <c0t0d0>. These files will not be automatically synchronized 
from the current boot environment <nuovo-BE-zfs> when boot environment <c0t0d0>

Creazione di un ambiente di boot nello stesso pool radice ZFS

Se è presente un pool radice ZFS esistente e si intende creare un nuovo ambiente di boot ZFS in quel pool, procedere come segue. Una volta creato l'ambiente di boot inattivo, il nuovo ambiente di boot può essere aggiornato o attivato al momento più opportuno. L'opzione -p non è richiesta quando si crea un ambiente di boot nello stesso pool.

ProcedureCreare un ambiente di boot ZFS nello stesso pool radice ZFS

  1. Completare i seguenti passaggi la prima volta che si esegue un aggiornamento con Solaris Live Upgrade.


    Nota –

    L'utilizzo di Solaris Live Upgrade per creare nuovi ambienti di boot ZFS richiede la versione Solaris 10 10/08 o superiore. Le versioni precedenti non includono il software richiesto per ZFS e Solaris Live Upgrade.


    1. Se necessario, rimuovere i pacchetti esistenti di Solaris Live Upgrade. Se si sta eseguendo l'aggiornamento a una nuova versione, è necessario installare i pacchetti relativi a quella versione.

      I tre pacchetti di Solaris Live Upgrade, SUNWluu, SUNWlur e SUNWlucfg, includono il software richiesto per l'aggiornamento con Solaris Live Upgrade. I pacchetti includono il software esistente, le nuove funzioni e le correzioni dei bug. Se i pacchetti esistenti non vengono rimossi e la nuova versione non viene installata sul sistema prima di usare Solaris Live Upgrade, l'aggiornamento alla versione di destinazione non riesce.


      Nota –

      Il pacchetto SUMWlucfg è stato introdotto a partire dalla versione Solaris 10 8/07. Se si utilizzano i pacchetti di Solaris Live Upgrade di una versione precedente, non è necessario rimuovere questo pacchetto.



      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    2. Installare i nuovi pacchetti di Solaris Live Upgrade. Per informazioni, vedere Installazione di Solaris Live Upgrade.

    3. Prima di installare o eseguire Solaris Live Upgrade, è necessario installare le seguenti patch. Queste patch garantiscono che tutte le correzioni dei bug e le nuove funzioni siano installate.

      Verificare di disporre dell'elenco più aggiornato delle patch accedendo al sito SunSolve Consultare il documento informativo 206844 (in precedenza 72099) sul sito Web di SunSolve.

      • Diventare superutente o assumere un ruolo equivalente.

      • Se le patch vengono memorizzate sul disco rigido locale creare una directory, ad esempio /var/tmp/patches_lu, e scaricare le patch in quella directory.

      • Dal sito Web SunSolve, scaricare l'elenco delle patch.

      • Spostarsi nella directory delle patch.


        # cd /var/tmp/lupatches
        
      • Installare le patch con il comando patchadd.


        # patchadd ID_patch
        

        ID_patch indica il numero o i numeri delle patch. Se le patch sono più di una, separare i nomi con uno spazio.


        Nota –

        Le patch devono essere applicate nell'ordine specificato nel documento informativo (InfoDoc) 206844.


      • Riavviare il sistema, se necessario. Alcune patch richiedono il riavvio del sistema.

        solo x86: Il riavvio del sistema è necessario per eseguire correttamente Solaris Live Upgrade.


        # init 6
        
  2. Creare il nuovo ambiente di boot.


    # lucreate [-c BE_zfs] -n nuovo-BE-zfs
    
    -c BE_zfs

    Assegna il nome BE_ all'ambiente di boot corrente ZFS corrente. Questa opzione è richiesta solo ed esclusivamente per la creazione del primo ambiente di boot. Se alla prima esecuzione di lucreate non si utilizza l'opzione -c, il software crea automaticamente un nome.

    -n nuovo-BE-zfs

    Assegna il nome al nuovo ambiente di boot da creare. Il nome deve essere unico sul sistema.

    La creazione del nuovo ambiente di boot è quasi istantanea. Viene creato uno snapshot di ciascun set di dati nel pool radice ZFS corrente e viene quindi creato un clone da ogni snapshot. Gli snapshot sono molto efficienti dal punto di vista dell'occupazione di spazio su disco. Una volta creato l'ambiente di boot inattivo, è possibile usare i comandi luupgrade o luactivate per aggiornare o attivare il nuovo ambiente di boot ZFS.

  3. (Opzionale) Verificare che l'ambiente di boot sia completo.

    Il comando lustatus indica se la creazione dell'ambiente di boot è terminata e se l'ambiente è avviabile.


    # lustatus
    boot environment   Is        Active  Active     Can	    Copy 
    Name               Complete  Now	 OnReboot   Delete	 Status 
    ------------------------------------------------------------------------ 
    BE_zfs              yes       yes     yes         no             -
    nuovo-BE-zfs        yes       no      no          yes            -
  4. (Opzionale) Verificare le informazioni di base sui set di dati.

    In questo esempio, il pool radice ZFS viene denominato rpool e il simbolo @ indica uno snapshot. I punti di attivazione del nuovo ambiente di boot sono temporanei fino all'esecuzione del comando luactivate. I volumi /dump e /swap sono condivisi con il pool radice ZFS e con gli ambienti di boot all'interno del pool radice.


    # zfs list
    NAME                                      USED  AVAIL  REFER  MOUNTPOINT 
    rpool                                    9.29G  57.6G    20K  /rpool 
    rpool/ROOT                               5.38G  57.6G    18K  /rpool/ROOT 
    rpool/ROOT/BE_zfs                        5.38G  57.6G   551M  
    rpool/ROOT/BE_zfs@nuovo-BE-zfs           66.5K      -   551M  -
    rpool/ROOT/nuovo-BE-zfs                  85.5K  57.6G   551M  /tmp/.alt.103197
    rpool/dump                               1.95G      -  1.95G  - 
    rpool/swap                               1.95G      -  1.95G  - 

    A questo punto è possibile aggiornare e attivare il nuovo ambiente di boot. Vedere l'Esempio 13–2.


Esempio 13–2 Creazione di un ambiente di boot nello stesso pool radice ZFS

I comandi seguenti creano un nuovo ambiente di boot ZFS, nuovo-BE-zfs. L'opzione -p non è richiesta in quando l'ambiente di boot viene creato nello stesso pool radice.


# lucreate [-c BE_zfs] -n nuovo-BE-zfs
Analyzing system configuration.
Comparing source boot environment <BE_zfs> file systems with the file
system(s) you specified for the new boot environment. Determining which
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Creating configuration for boot environment nuovo-BE-zfs.
Source boot environment is BE_zfs.
Creating boot environment nuovo-BE-zfs.
Cloning file systems from boot environment BE_zfs to create 
boot environment nuovo-BE-zfs.
Creating snapshot for <rpool> on <rpool> Creating clone for <rpool>. 
Setting canmount=noauto for <rpool> in zone <global> on <rpool>. 
Population of boot environment BE_zfs successful on <rpool>.
# lustatus
boot environment   Is        Active  Active     Can	    Copy 
Name               Complete  Now	   OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
BE_zfs              yes       yes     yes         no          - 
nuovo-BE-zfs        yes       no      no          yes         -
# zfs list
NAME                                      USED  AVAIL  REFER  MOUNTPOINT 
rpool                                    9.29G  57.6G    20K  /rpool 
rpool/ROOT                               5.38G  57.6G    18K  /rpool/ROOT 
rpool/ROOT/BE_zfs                        5.38G  57.6G   551M  
rpool/ROOT/BE_zfs@nuovo-BE-zfs           66.5K      -   551M  - 
rpool/ROOT/nuovo-BE-zfs                  85.5K  57.6G   551M  /tmp/.alt.103197 
rpool/dump                               1.95G      -  1.95G  - 
rpool/swap                               1.95G      -  1.95G  - 

A questo punto è possibile aggiornare e attivare il nuovo ambiente di boot. Per un esempio di aggiornamento a un ambiente di boot ZFS, vedere l'Esempio 13–1. Per altri esempi di utilizzo di luupgrade, vedere il Capitolo 5Aggiornamento con Solaris Live Upgrade (procedure).


# luactivate nuovo-BE-zfs
**********************************************************************

The target boot environment has been activated. It will be used when you 
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You 
MUST USE either the init or the shutdown command when you reboot. If you 
do not use either init or shutdown, the system will not boot using the 
target BE.

**********************************************************************
In case of a failure while booting to the target BE, the following process 
needs to be followed to fallback to the currently working boot environment:

1. Enter the PROM monitor (ok prompt).

2. Change the boot device back to the original boot environment by typing:

     setenv boot-device /pci@1f,0/pci@1/scsi@4,1/disk@2,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

Modifying boot archive service
Activation of boot environment <nuovo-BE-zfs> successful.

Riavviare il sistema nell'ambiente di boot ZFS.


# init 6
# svc.startd: The system is coming down.  Please wait.
svc.startd: 79 system services are now being stopped.
.
.
.

Creazione di un ambiente di boot in un nuovo pool radice

Se è presente un pool radice ZFS esistente e si intende creare un nuovo ambiente di boot ZFS in un nuovo pool radice, procedere come indicato nella procedura seguente. Una volta creato l'ambiente di boot inattivo, il nuovo ambiente di boot può essere aggiornato o attivato al momento più opportuno. L'opzione -p è richiesta per indicare dove deve essere posizionato il nuovo ambiente di boot. Il pool radice ZFS deve esistere e trovarsi su una slice separata per essere avviabile e aggiornabile.

ProcedureCreare un ambiente di boot su un nuovo pool radice ZFS

  1. Completare i seguenti passaggi la prima volta che si esegue un aggiornamento con Solaris Live Upgrade.


    Nota –

    L'utilizzo di Solaris Live Upgrade per creare nuovi ambienti di boot ZFS richiede la versione Solaris 10 10/08 o superiore. Le versioni precedenti non includono il software richiesto per ZFS e Solaris Live Upgrade.


    1. Se necessario, rimuovere i pacchetti esistenti di Solaris Live Upgrade. Se si sta eseguendo l'aggiornamento a una nuova versione, è necessario installare i pacchetti relativi a quella versione

      I tre pacchetti di Solaris Live Upgrade, SUNWluu, SUNWlur e SUNWlucfg, includono il software richiesto per l'aggiornamento con Solaris Live Upgrade. I pacchetti includono il software esistente, le nuove funzioni e le correzioni dei bug. Se i pacchetti esistenti non vengono rimossi e la nuova versione non viene installata sul sistema prima di usare Solaris Live Upgrade, l'aggiornamento alla versione di destinazione non riesce.


      Nota –

      Il pacchetto SUMWlucfg è stato introdotto a partire dalla versione Solaris 10 8/07. Se si utilizzano i pacchetti di Solaris Live Upgrade di una versione precedente, non è necessario rimuovere questo pacchetto.



      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    2. Installare i nuovi pacchetti di Solaris Live Upgrade. Per informazioni, vedere Installazione di Solaris Live Upgrade.

    3. Prima di installare o eseguire Solaris Live Upgrade, è necessario installare le seguenti patch. Queste patch garantiscono che tutte le correzioni dei bug e le nuove funzioni siano installate.

      Verificare di disporre dell'elenco più aggiornato delle patch accedendo al sito SunSolve Consultare il documento informativo 206844 (in precedenza 72099) sul sito Web di SunSolve.

      • Diventare superutente o assumere un ruolo equivalente.

      • Se le patch vengono memorizzate sul disco rigido locale creare una directory, ad esempio /var/tmp/patches_lu, e scaricare le patch in quella directory.

      • Dal sito Web SunSolve, scaricare l'elenco delle patch.

      • Spostarsi nella directory delle patch.


        # cd /var/tmp/lupatches
        
      • Installare le patch con il comando patchadd.


        # patchadd ID_patch
        

        ID_patch indica il numero o i numeri delle patch. Se le patch sono più di una, separare i nomi con uno spazio.


        Nota –

        Le patch devono essere applicate nell'ordine specificato nel documento informativo (InfoDoc) 206844.


      • Riavviare il sistema, se necessario. Alcune patch richiedono il riavvio del sistema.

        solo x86: Il riavvio del sistema è necessario per eseguire correttamente Solaris Live Upgrade.


        # init 6
        
  2. Creare un pool radice ZFS.

    Il pool radice ZFS deve trovarsi su una singola slice per essere avviabile e aggiornabile.


    # zpool create rpool2 c0t1d0s5
    
    rpool2

    Nomi del nuovo pool radice ZFS.

    c0t1d0s5

    Specifica che rpool2 deve essere posizionato sulla slice avviabile, c0t1d0s5.

    Per informazioni sulla creazione di un nuovo pool radice, vedere il manuale Solaris ZFS Administration Guide.

  3. Creare il nuovo ambiente di boot.


    # lucreate [-c BE_zfs] -n nuovo-BE-zfs -p rpool2
    
    -c BE_zfs

    Assegna il nome BE_zfs all'ambiente di boot corrente ZFS corrente.

    -n nuovo-BE-zfs

    Assegna il nome al nuovo ambiente di boot da creare. Il nome deve essere unico sul sistema.

    -p rpool2

    Posiziona l'ambiente di boot ZFS appena creato nel pool radice ZFS definito in rpool.

    La creazione del nuovo ambiente di boot ZFS può richiedere un certo tempo. I dati del file system vengono copiati nel nuovo pool radice ZFS. Una volta creato l'ambiente di boot inattivo, è possibile usare i comandi luupgrade o luactivate per aggiornare o attivare il nuovo ambiente di boot ZFS.

  4. (Opzionale) Verificare che l'ambiente di boot sia completo.

    Il comando lustatus indica se la creazione dell'ambiente di boot è terminata e se l'ambiente è avviabile.


    # lustatus
    boot environment   Is        Active  Active     Can	    Copy 
    Name               Complete  Now	 OnReboot   Delete	 Status 
    ------------------------------------------------------------------------ 
    BE_zfs                      yes      yes     yes        no        - 
    nuovo-BE-zfs                yes      no      no         yes        -
  5. (Opzionale) Verificare le informazioni di base sui set di dati.

    L'esempio seguente visualizza i nomi di tutti i set di dati presenti sul sistema. I punti di attivazione elencati per il nuovo ambiente di boot sono temporanei fino all'esecuzione del comando luactivate. Il nuovo ambiente di boot condivide i volumi rpool2/dump e rpool2/swap con l'ambiente di boot ZFS rpool2.


    # zfs list
    NAME                             USED    AVAIL   REFER   MOUNTPOINT 
    rpool2                           9.29G    57.6G     20K   /rpool2 
    rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
    rpool2/ROOT/nuovo-BE-zfs         5.38G    57.6G    551M  /tmp/.new.luupdall.109859
    rpool2/dump                      3.99G        -   3.99G   - 
    rpool2/swap                      3.99G        -   3.99G   - 
    rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
    rpool/ROOT                       5.46G    57.6G     18K   legacy
    rpool/ROOT/BE_zfs                5.46G    57.6G    551M  
    rpool/dump                       3.99G        -   3.99G   - 
    rpool/swap                       3.99G        -   3.99G   - 

    A questo punto è possibile aggiornare e attivare il nuovo ambiente di boot. Vedere l'Esempio 13–3.


Esempio 13–3 Creazione di un ambiente di boot su un nuovo pool radice

In questo esempio, il nuovo pool radice ZFS, rpool, viene creato su una slice separata, c0t2d0s5. Il comando lucreate crea un nuovo ambiente di boot ZFS, nuovo-BE-zfs. L'opzione -p è richiesta in quanto l'ambiente di boot viene creato in un diverso pool radice.


# zpool create rpool C0t1d0s5
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT					             5.46G    57.6G     18K   legacy
rpool/ROOT/BE_zfs                5.46G    57.6G    551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

# lucreate -c rpool -n nuovo-BE-zfs -p rpool2
Analyzing system configuration.
Current boot environment is named <rpool>.
Creating initial configuration for primary boot environment <rpool>.
The device </dev/dsk/c0t0d0> is not a root device for any 
boot environment; cannot get BE ID.
PBE configuration successful: PBE name <rpool> PBE Boot 
Device </dev/dsk/rpool>.
Comparing source boot environment <rpool> file systems with 
the file system(s) you specified for the new boot environment. 
Determining which file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Updating system configuration files.
The device </dev/dsk/c1t0d0s0> is not a root device for any 
boot environment; cannot get BE ID.
Creating configuration for boot environment <nuovo-BE-zfs>.
Source boot environment is <rpool>.
Creating boot environment <nuovo-BE-zfs>.
Creating file systems on boot environment <nuovo-BE-zfs>.
Creating <zfs> file system for </> in zone <global> on 
<rpool2/ROOT/nuovo-BE-zfs>.
Populating file systems on boot environment <nuovo-BE-zfs>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <BE_zfs>.
Creating compare database for file system </>.
Making boot environment <nuovo-BE-zfs> bootable.
Creating boot_archive for /.alt.tmp.b-cBc.mnt
updating /.alt.tmp.b-cBc.mnt/platform/sun4u/boot_archive
Population of boot environment <nuovo-BE-zfs> successful.
Creation of boot environment <nuovo-BE-zfs> successful.

# lustatus
boot environment   Is        Active  Active     Can	    Copy 
Name               Complete  Now	OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
BE_zfs               yes      yes     yes        no        - 
nuovo-BE-zfs         yes      no      no         yes        -
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
rpool2/ROOT/nuovo-BE-zfs         5.38G    57.6G    551M   /tmp/.new.luupdall.109859
rpool2/dump                      3.99G        -   3.99G   - 
rpool2/swap                      3.99G        -   3.99G   - 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/BE_zfs                5.46G    57.6G    551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

Creazione di un ambiente di boot da un sistema diverso.

Se è già presente un pool radice ZFS o un ambiente di boot UFS che non è correntemente utilizzato come ambiente di boot attivo, è possibile usare l'esempio seguente per creare un nuovo ambiente di boot ZFS da questo ambiente di boot. Una volta creato il nuovo ambiente di boot ZFS, questo nuovo ambiente di boot può essere aggiornato o attivato al momento più opportuno.

Se si sta creando un ambiente di boot da un sistema che non è quello in uso, è necessario usare il comando lucreate con l'opzione -s. L'opzione -s viene utilizzata come con i file system UFS. L'opzione -s indica il percorso del file system radice (/) alternativo. Questo file system radice (/) alternativo sarà l'origine per la creazione del nuovo pool radice ZFS. Il file system radice alternativo può essere un file system radice (/) UFS o un pool radice ZFS. Il processo di copia può richiedere un certo tempo, in base al sistema utilizzato.

L'esempio seguente mostra l'utilizzo dell'opzione -s quando si crea un ambiente di boot su un altro pool radice ZFS.


Esempio 13–4 Creare un ambiente di boot da un sistema diverso.

Il comando seguente crea un nuovo pool radice ZFS da un pool radice ZFS esistente. L'opzione -n assegna un nome all'ambiente di boot da creare, nuovo-BE-zfs. L'opzione -s specifica l'ambiente di boot, rpool3, da usare come origine della copia al posto dell'ambiente di boot in esecuzione. L'opzione -p indica di posizionare il nuovo ambiente di boot in rpool2.


# lucreate -n nuovo-BE-zfs -s rpool3 -p rpool2
# lustatus
boot environment   Is        Active  Active     Can	    Copy 
Name               Complete  Now	 OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
BE_zfs              yes      yes     yes        no         - 
BE_zfs2             yes      no      no         yes        -
BE_zfs3             yes      no      no         yes        -
nuovo-BE-zfs        yes      no      no         yes        -

# zfs list
NAME                            USED    AVAIL   REFER   MOUNTPOINT 
rpool2                         9.29G    57.6G     20K   /rpool2 
rpool2/ROOT/                   5.38G    57.6G     18K   /rpool2/ROOT 
rpool2/ROOT/nuovo-BE-zfs       5.38G    57.6G    551M   /tmp/.new.luupdall.109859
rpool2/dump                    3.99G        -   3.99G   - 
rpool2/swap                    3.99G        -   3.99G   - 
rpool3                         9.29G    57.6G     20K   /rpool2 
rpool3/ROOT/                   5.38G    57.6G     18K   /rpool2/ROOT 
rpool3/ROOT/BE_zfs3            5.38G    57.6G   551M    /tmp/.new.luupdall.109859
rpool3/dump                    3.99G        -   3.99G   - 
rpool3/swap                    3.99G        -   3.99G   - 
prool                          9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                     5.46G    57.6G     18K   legacy
rpool/ROOT/BE_zfs              5.46G    57.6G   551M  
rpool/dump                     3.99G        -   3.99G   - 
rpool/swap                     3.99G        -   3.99G   -

A questo punto è possibile aggiornare e attivare il nuovo ambiente di boot.


Ripristino di un ambiente di boot ZFS

Se viene rilevato un errore dopo l'aggiornamento o se l'applicazione non è compatibile con uno dei componenti aggiornati, è possibile ripristinare l'ambiente di boot originale con il comando luactivate.

Quando si è eseguita la migrazione a un pool radice ZFS da un ambiente di boot UFS e quindi si decide di tornare all'ambiente di boot UFS, è necessario importare nuovamente eventuali pool di memorizzazione ZFS creati nell'ambiente di boot ZFS. Questi pool di memorizzazione ZFS non sono automaticamente disponibili nell'ambiente di boot UFS. Quando si torna all'ambiente di boot UFS vengono visualizzati messaggi simili ai seguenti.


# luactivate c0t0d0
WARNING: The following files have changed on both the current boot 
environment <new-ZFSbe> zone <global> and the boot environment 
to be activated <c0t0d0>: /etc/zfs/zpool.cache
INFORMATION: The files listed above are in conflict between the current 
boot environment <ZFSbe> zone <global> and the boot environment to be 
activated <c0t0d0>. These files will not be automatically synchronized 
from the current boot environment <new-ZFSbe> when boot 
environment <c0t0d0>

Per consultare alcuni esempi di ripristino dell'ambiente di boot originale, vedere il Capitolo 6Ripristino dei guasti: ripristino dell'ambiente di boot originale (procedure).

Risorse aggiuntive

Per altre informazioni sugli argomenti di questo capitolo, vedere le risorse elencate nella Tabella 13–1.

Tabella 13–1 Risorse aggiuntive

Risorsa 

Posizione 

Informazioni su ZFS, tra cui un'introduzione generale, indicazioni per la pianificazione e procedure dettagliate 

Solaris ZFS Administration Guide

Per l'utilizzo di Solaris Live Upgrade su un sistema con file system UFS 

Parte I, Aggiornamento con Solaris Live Upgrade in questo manuale