JavaScript is required to for searching.
Navigationslinks �berspringen
Druckansicht beenden
Oracle Solaris ZFS-Administrationshandbuch
search filter icon
search icon

Dokument-Informationen

Vorwort

1.  Oracle Solaris ZFS-Dateisystem (Einführung)

2.  Erste Schritte mit Oracle Solaris ZFS

3.  Unterschiede zwischen Oracle Solaris ZFS und herkömmlichen Dateisystemen

4.  Verwalten von Oracle Solaris ZFS-Speicher-Pools

5.  Installieren und Booten eines Oracle Solaris ZFS-Root-Dateisystems

Installieren und Booten eines Oracle Solaris ZFS-Root-Dateisystems (Übersicht)

Leistungsmerkmale für die ZFS-Installation

Oracle Solaris-Installation und Live Upgrade: Voraussetzungen für die ZFS-Unterstützung

Voraussetzungen für die Oracle Solaris-Version

Allgemeine Voraussetzungen für einen ZFS-Speicher-Pool

Erforderliche Festplattenkapazität für ZFS-Speicher-Pools

Voraussetzungen für die Konfiguration des ZFS-Speicher-Pools

Installieren eines ZFS-Root-Dateisystems (Erstinstallation von Oracle Solaris)

Erstellen eines gespiegelten ZFS-Root-Pools (nach der Installation)

Installieren eines ZFS-Root-Dateisystems (Oracle Solaris Flash-Archiv-Installation)

Installieren eines ZFS-Root-Dateisystems (JumpStart-Installation)

JumpStart-Schlüsselwörter für ZFS

JumpStart-Profilbeispiele für ZFS

JumpStart-Probleme im Zusammenhang mit ZFS

Migrieren in ein ZFS-Root-Dateisystem oder Aktualisieren eines ZFS-Root-Dateisystems (Live Upgrade)

Probleme bei der ZFS-Migration mit Live Upgrade

Migrieren oder Aktualisieren eines ZFS-Root-Dateisystems mit Live Upgrade (ohne Zonen)

Verwenden von Live Upgrade zum Migrieren oder Aktualisieren eines Systems mit Zonen (Solaris 10 10/08)

So migrieren Sie ein UFS-Root-Dateisystem mit Zonen-Roots auf UFS auf ein ZFS-Root-Dateisystem (Solaris 10 10/08)

So konfigurieren Sie ein ZFS-Root-Dateisystem mit Zonen-Roots auf ZFS (Solaris 10 10/08)

So aktualisieren bzw. patchen Sie ein ZFS-Root-Dateisystem mit Zonen-Roots auf ZFS (Solaris 10 10/08)

Verwenden des Oracle Solaris Live Upgrade zum Migrieren oder Aktualisieren eines Systems mit Zonen (ab Solaris 10 5/09)

Unterstütztes ZFS mit Zonen-Root-Konfigurationsinformationen (ab Solaris 10 5/09)

So erstellen Sie eine ZFS-BU mit einem ZFS-Root-Dateisystem und einem Zonen-Root (ab Solaris 10 5/09)

So aktualisieren oder patchen Sie ein ZFS-Root-Dateisystem mit Zonen-Roots (ab Solaris 10 5/09)

So migrieren Sie ein UFS-Root-Dateisystem mit Zonen-Roots in ein ZFS-Root-Dateisystem (ab Solaris 10 5/09)

ZFS-Unterstützung für Swap- und Dump-Geräte

Anpassen der Größe von ZFS-Swap- und Dump-Geräten

Behebung von Problemen mit ZFS-Dump-Geräten

Booten aus einem ZFS-Root-Dateisystem

Booten von einer alternativen Festplatte in einem gespiegelten ZFS-Root-Pool

SPARC: Booten aus einem ZFS-Root-Dateisystem

x86: Booten aus einem ZFS-Root-Dateisystem

Lösen von Problemen mit ZFS-Einhängepunkten, die ein erfolgreiches Booten verhindern (Solaris 10 10/08)

So lösen Sie Probleme mit ZFS-Einhängepunkten

Booten zur Wiederherstellung in einer ZFS-Root-Umgebung

So booten Sie im ZFS-Failsafe-Modus

So booten Sie ZFS von einem alternativen Datenträger

Wiederherstellen von ZFS-Root-Pool oder Root-Pool-Schnappschüssen

So ersetzen Sie eine Festplatte im ZFS-Root-Pool

So erstellen Sie Root-Pool-Schnappschüsse

So erstellen Sie einen ZFS-Root-Pool neu und stellen Root-Pool-Schnappschüsse wieder her

So erstellen Sie nach dem Booten im Failsafe-Modus ein Dateisystem im Zustand eines früheren Schnappschusses wieder her

6.  Verwalten von Oracle Solaris ZFS-Dateisystemen

7.  Arbeiten mit Oracle Solaris ZFS-Snapshots und -Klonen

8.  Schützen von Oracle Solaris ZFS-Dateien mit Zugriffskontrolllisten und Attributen

9.  Delegierte Oracle Solaris ZFS-Administration

10.  Fortgeschrittene Oracle Solaris ZFS-Themen

11.  Problembehebung und Pool-Wiederherstellung in Oracle Solaris ZFS

A.  Oracle Solaris ZFS-Versionsbeschreibungen

Index

Migrieren in ein ZFS-Root-Dateisystem oder Aktualisieren eines ZFS-Root-Dateisystems (Live Upgrade)

Die Live Upgrade-Funktionen aus früheren Versionen sind weiterhin verfügbar und verhalten so wie in den vorherigen Versionen auch.

Folgende Leistungsmerkmale sind verfügbar:

Ausführliche Informationen zu den Oracle Solaris-Installations- und Live Upgrade-Funktionen finden Sie im Oracle Solaris 10 9/10 Installationshandbuch: Solaris Live Upgrade und Planung von Upgrades .

Informationen zu Voraussetzungen für ZFS und Live Upgrade finden Sie unter Oracle Solaris-Installation und Live Upgrade: Voraussetzungen für die ZFS-Unterstützung.

Probleme bei der ZFS-Migration mit Live Upgrade

Für die Migration eines UFS-Root-Dateisystems in ein ZFS-Root-Dateisystem mithilfe von Live Upgrade sind folgende Probleme zu berücksichtigen:

Migrieren oder Aktualisieren eines ZFS-Root-Dateisystems mit Live Upgrade (ohne Zonen)

In den nachfolgenden Beispielen wird dargestellt, wie ein UFS-Root-Dateisystem in ein ZFS-Root-Dateisystem migriert wird und wie ein ZFS-Root-Dateisystem aktualisiert wird.

Wenn Sie ein System mit Zonen migrieren oder aktualisieren, lesen Sie folgende Abschnitte:

Beispiel 5-4 Migrieren eines UFS-Root-Dateisystems in ein ZFS-Root-Dateisystem mithilfe von Live Upgrade

Das folgende Beispiel zeigt, wie ein ZFS-Root-Dateisystem aus einem UFS-Root-Dateisystem migriert wird. Die aktuelle BU ufsBE, die ein UFS-Root-Dateisystem enthält, wird mit der Option -c angegeben. Wenn Sie die Option - c nicht angeben, wird als BU-Name standardmäßig der Gerätename verwendet. Die neue BU zfsBE wird mit der Option -n angegeben. Vor der Ausführung des lucreate-Vorgangs muss bereits ein ZFS-Speicher-Pool vorhanden sein.

Damit ein ZFS-Speicher-Pool upgrade- und bootfähig ist, muss er auf Datenträger-Speicherbereichen und darf nicht auf einer gesamten Festplatte erstellt werden. Vergewissern Sie sich vor dem Erstellen des neuen Pools, dass die für den Pool vorgesehenen Festplatten ein SMI-Label (VTOC) anstatt eines EFI-Labels aufweisen. Bei einer Neubezeichnung der Festplatte mit einem SMI-Label ist darauf zu achten, dass durch die Bezeichnung keine Änderungen am Partitionierungsschema erfolgt sind. In den meisten Fällen sollte die gesamte Festplattenkapazität in den für den Root-Pool vorgesehenen Bereichen liegen.

# zpool create rpool mirror c1t2d0s0 c2t1d0s0
# lucreate -c ufsBE -n zfsBE -p rpool
Analyzing system configuration.
No name for current boot environment.
Current boot environment is named <ufsBE>.
Creating initial configuration for primary boot environment <ufsBE>.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
PBE configuration successful: PBE name <ufsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
Comparing source boot environment <ufsBE> 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/c1t2d0s0> is not a root device for any boot environment; cannot get BE ID.
Creating configuration for boot environment <zfsBE>.
Source boot environment is <ufsBE>.
Creating boot environment <zfsBE>.
Creating file systems on boot environment <zfsBE>.
Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>.
Populating file systems on boot environment <zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </rpool/ROOT>.
Creating compare database for file system </>.
Updating compare databases on boot environment <zfsBE>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-qD.mnt
updating /.alt.tmp.b-qD.mnt/platform/sun4u/boot_archive
Population of boot environment <zfsBE> successful.
Creation of boot environment <zfsBE> successful.

Prüfen Sie nach Abschluss der lucreate-Vorgangs den BU-Status mithilfe des Befehls lustatus. Beispiel:

# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
ufsBE                      yes      yes    yes       no     -         
zfsBE                      yes      no     no        yes    -         

Kontrollieren Sie dann die Liste der ZFS-Komponenten. Beispiel:

# zfs list
NAME                   USED  AVAIL  REFER  MOUNTPOINT
rpool                 7.17G  59.8G  95.5K  /rpool
rpool/ROOT            4.66G  59.8G    21K  /rpool/ROOT
rpool/ROOT/zfsBE      4.66G  59.8G  4.66G  /
rpool/dump               2G  61.8G    16K  -
rpool/swap             517M  60.3G    16K  -

Aktivieren Sie dann mit dem Befehl luactivate die neue ZFS-BU. Beispiel:

# luactivate zfsBE
A Live Upgrade Sync operation will be performed on startup of boot environment <zfsBE>.

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

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.

**********************************************************************
.
.
.
Modifying boot archive service
Activation of boot environment <zfsBE> successful.

Als Nächstes starten Sie das System in der ZFS-BU neu.

# init 6

Vergewissern Sie sich, dass die ZFS-BU aktiv ist:

# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
ufsBE                      yes      no     no        yes    -         
zfsBE                      yes      yes    yes       no     -      

Wenn Sie wieder auf die UFS-BU zurückschalten, müssen Sie während des Bootens der ZFS-BU erstellte ZFS-Speicher-Pools zurückimportieren, da sie nicht automatisch in der UFS-BU verfügbar sind.

Wird die UFS-BU nicht mehr benötigt, kann Sie mit dem Befehl ludelete gelöscht werden.

Beispiel 5-5 Verwenden von Live Upgrade zur Erstellung einer ZFS-BU aus einer UFS-BU (mit separatem /var-Dateisystem)

In Oracle Solaris 10 8/11 können Sie mithilfe der Option lucreate -D festlegen, dass ein separates /var-Dateisystem erstellt werden soll, wenn Sie ein UFS-Root-Dateisystem in ein ZFS-Root-Dateisystem migrieren. Im folgenden Beispiel wird die vorhandene UFS-BU in eine ZFS-BU mit einem separaten /var-Dateisystem migriert.

# lucreate -n zfsBE -p rpool -D /var
Determining types of file systems supported
Validating file system requests
Preparing logical storage devices
Preparing physical storage devices
Configuring physical storage devices
Configuring logical storage devices
Analyzing system configuration.
No name for current boot environment.
INFORMATION: The current boot environment is not named - assigning name <c0t0d0s0>.
Current boot environment is named <c0t0d0s0>.
Creating initial configuration for primary boot environment <c0t0d0s0>.
INFORMATION: No BEs are configured on this system.
The device </dev/dsk/c0t0d0s0> is not a root device for any boot environment; cannot get BE ID.
PBE configuration successful: PBE name <c0t0d0s0> PBE Boot Device </dev/dsk/c0t0d0s0>.
Updating boot environment description database on all BEs.
Updating system configuration files.
The device </dev/dsk/c0t1d0s0> is not a root device for any boot environment; cannot get BE ID.
Creating configuration for boot environment <zfsBE>.
Source boot environment is <c0t0d0s0>.
Creating file systems on boot environment <zfsBE>.
Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>.
Creating <zfs> file system for </var> in zone <global> on <rpool/ROOT/zfsBE/var>.
Populating file systems on boot environment <zfsBE>.
Analyzing zones.
Mounting ABE <zfsBE>.
Generating file list.
Copying data from PBE <c0t0d0s0> to ABE <zfsBE>
100% of filenames transferred
Finalizing ABE.
Fixing zonepaths in ABE.
Unmounting ABE <zfsBE>.
Fixing properties on ZFS datasets in ABE.
Reverting state of zones in PBE <c0t0d0s0>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-iaf.mnt
updating /.alt.tmp.b-iaf.mnt/platform/sun4u/boot_archive
Population of boot environment <zfsBE> successful.
Creation of boot environment <zfsBE> successful.
# luactivate zfsBE
A Live Upgrade Sync operation will be performed on startup of boot environment <zfsBE>.
.
.
.
Modifying boot archive service
Activation of boot environment <zfsBE> successful.
# init 6

Überprüfen Sie die neu erstellten ZFS-Dateisysteme. Beispiel:

# zfs list
NAME                   USED  AVAIL  REFER  MOUNTPOINT
rpool                 6.29G  26.9G  32.5K  /rpool
rpool/ROOT            4.76G  26.9G    31K  legacy
rpool/ROOT/zfsBE      4.76G  26.9G  4.67G  /
rpool/ROOT/zfsBE/var  89.5M  26.9G  89.5M  /var
rpool/dump             512M  26.9G   512M  -
rpool/swap            1.03G  28.0G    16K  -

Beispiel 5-6 Erstellen einer ZFS-BU aus einer ZFS-BU mit Live Upgrade

Das Erstellen einer ZFS-BU aus einer ZFS-BU in demselben Pool ist ein sehr schneller Vorgang, da die ZFS-Schnappschuss- und -Klon-Funktionen dazu verwendet werden. Wenn die aktuelle BU in demselben ZFS-Pool enthalten ist, wird die Option -p nicht berücksichtigt.

Wenn mehrere ZFS-BUs vorhanden sind, gehen Sie wie folgt vor, um auszuwählen, aus welcher BU gebootet werden soll:

Weitere Informationen finden Sie in Beispiel 5-12.

# lucreate -n zfs2BE
Analyzing system configuration.
No name for current boot environment.
INFORMATION: The current boot environment is not named - assigning name <zfsBE>.
Current boot environment is named <zfsBE>.
Creating initial configuration for primary boot environment <zfsBE>.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
PBE configuration successful: PBE name <zfsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
Comparing source boot environment <zfsBE> 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.
Creating configuration for boot environment <zfs2BE>.
Source boot environment is <zfsBE>.
Creating boot environment <zfs2BE>.
Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
Population of boot environment <zfs2BE> successful.
Creation of boot environment <zfs2BE> successful.

Beispiel 5-7 Aktualisieren der ZFS-BU (luupgrade)

Sie können die ZFS-BU mithilfe zusätzlicher Packages oder Patches aktualisieren.

Dieser Vorgang läuft im Wesentlichen wie folgt ab:

# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
zfsBE                      yes      no     no        yes    -         
zfs2BE                     yes      yes    yes       no     -   
# luupgrade -p -n zfsBE -s /net/system/export/s10up/Solaris_10/Product SUNWchxge
Validating the contents of the media </net/install/export/s10up/Solaris_10/Product>.
Mounting the BE <zfsBE>.
Adding packages to the BE <zfsBE>.

Processing package instance <SUNWchxge> from </net/install/export/s10up/Solaris_10/Product>

Chelsio N110 10GE NIC Driver(sparc) 11.10.0,REV=2006.02.15.20.41
Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.

This appears to be an attempt to install the same architecture and
version of a package which is already installed.  This installation
will attempt to overwrite this package.

Using </a> as the package base directory.
## Processing package information.
## Processing system information.
   4 package pathnames are already properly installed.
## Verifying package dependencies.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.

This package contains scripts which will be executed with super-user
permission during the process of installing this package.

Do you want to continue with the installation of <SUNWchxge> [y,n,?] y
Installing Chelsio N110 10GE NIC Driver as <SUNWchxge>

## Installing part 1 of 1.
## Executing postinstall script.

Installation of <SUNWchxge> was successful.
Unmounting the BE <zfsBE>.
The package add to the BE <zfsBE> completed.

Alternativ können Sie auch eine neue BU erstellen, um auf eine spätere Oracle Solaris-Version zu aktualisieren. Beispiel:

# luupgrade -u -n newBE -s /net/install/export/s10up/latest

Die Option -s gibt an, wo sich der Solaris-Installationsdatenträger befindet.

Beispiel 5-8 Erstellen einer ZFS-BU mit einem ZFS-Flash-Archiv (luupgrade)

In Oracle Solaris 10 8/11 können Sie mit dem Befehl luupgrade eine ZFS-BU aus einem vorhandenen ZFS-Flash-Archiv erstellen. Grundsätzlich sieht die Vorgehensweise folgendermaßen aus:

  1. Erstellen Sie ein Flash-Archiv eines Mastersystems mit einer ZFS-BU.

    Beispiel:

    master-system# flarcreate -n s10zfsBE /tank/data/s10zfsflar
    Full Flash
    Checking integrity...
    Integrity OK.
    Running precreation scripts...
    Precreation scripts done.
    Determining the size of the archive...
    The archive will be approximately 4.67GB.
    Creating the archive...
    Archive creation complete.
    Running postcreation scripts...
    Postcreation scripts done.
    
    Running pre-exit scripts...
    Pre-exit scripts done.
  2. Stellen Sie das auf dem Mastersystem erstellte ZFS-Flash-Archiv für das Klonsystem zur Verfügung.

    Mögliche Speicherorte für Flash-Archive sind lokale Dateisysteme, HTTP, FTP, NFS usw.

  3. Erstellen Sie eine leere alternative ZFS-BU auf dem Klonsystem.

    Geben Sie mithilfe der Option -s - an, dass es sich um eine leere BU handelt, die mit dem Inhalt des ZFS-Flash-Archivs aufgefüllt werden soll.

    Beispiel:

    clone-system# lucreate -n zfsflashBE -s - -p rpool
    Determining types of file systems supported
    Validating file system requests
    Preparing logical storage devices
    Preparing physical storage devices
    Configuring physical storage devices
    Configuring logical storage devices
    Analyzing system configuration.
    No name for current boot environment.
    INFORMATION: The current boot environment is not named - assigning name <s10zfsBE>.
    Current boot environment is named <s10zfsBE>.
    Creating initial configuration for primary boot environment <s10zfsBE>.
    INFORMATION: No BEs are configured on this system.
    The device </dev/dsk/c0t0d0s0> is not a root device for any boot environment; cannot get BE ID.
    PBE configuration successful: PBE name <s10zfsBE> PBE Boot Device </dev/dsk/c0t0d0s0>.
    Updating boot environment description database on all BEs.
    Updating system configuration files.
    The device </dev/dsk/c0t1d0s0> is not a root device for any boot environment; cannot get BE ID.
    Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsflashBE>.
    Creation of boot environment <zfsflashBE> successful.
  4. Installieren Sie das ZFS-Flash-Archiv in der alternativen BU.

    Beispiel:

    clone-system# luupgrade -f -s /net/server/export/s10/latest -n zfsflashBE -a /tank/data/zfs10up2flar
    miniroot filesystem is <lofs>
    Mounting miniroot at </net/server/s10up/latest/Solaris_10/Tools/Boot>
    Validating the contents of the media </net/server/export/s10up/latest>.
    The media is a standard Solaris media.
    Validating the contents of the miniroot </net/server/export/s10up/latest/Solaris_10/Tools/Boot>.
    Locating the flash install program.
    Checking for existence of previously scheduled Live Upgrade requests.
    Constructing flash profile to use.
    Creating flash profile for BE <zfsflashBE>.
    Performing the operating system flash install of the BE <zfsflashBE>.
    CAUTION: Interrupting this process may leave the boot environment unstable or unbootable.
    Extracting Flash Archive: 100% completed (of 5020.86 megabytes)            
    The operating system flash install completed.
    updating /.alt.tmp.b-rgb.mnt/platform/sun4u/boot_archive
    
    The Live Flash Install of the boot environment <zfsflashBE> is complete.
  5. Aktivieren Sie die alternative BU.

    clone-system# luactivate zfsflashBE
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfsflashBE>.
    .
    .
    .
    Modifying boot archive service
    Activation of boot environment <zfsflashBE> successful.
  6. Starten Sie das System neu.

    clone-system# init 6

Verwenden von Live Upgrade zum Migrieren oder Aktualisieren eines Systems mit Zonen (Solaris 10 10/08)

Sie können ein System mit Zonen mithilfe von Live Upgrade zwar migrieren, die unterstützten Konfigurationen sind in Solaris 10 10/08 jedoch begrenzt. Nach der Installation von Solaris 10 5/09 oder einer höheren Version oder der Aktualisierung auf Solaris 10 5/09 oder eine höhere Version werden mehr Zonenkonfigurationen unterstützt. Weitere Informationen finden Sie unter Verwenden des Oracle Solaris Live Upgrade zum Migrieren oder Aktualisieren eines Systems mit Zonen (ab Solaris 10 5/09).

In diesem Abschnitt wird beschrieben, wie Sie ein System mit Zonen so installieren und konfigurieren müssen, dass es mit Live Upgrade aktualisiert und gepatcht werden kann. Informationen zum Migrieren eines ZFS-Root-Dateisystems ohne Zonen finden Sie unter Migrieren oder Aktualisieren eines ZFS-Root-Dateisystems mit Live Upgrade (ohne Zonen).

Wenn Sie ein System mit Zonen migrieren möchten bzw. die Konfiguration eines Systems mit Zonen in Betracht ziehen, berücksichtigen·Sie in Solaris 10 10/08 die folgenden Vorgehensweisen:

Halten Sie sich an diese empfohlenen Vorgehensweisen zum Einrichten von Zonen mit einem ZFS-Root-Dateisystem, damit Sie für dieses System Live Upgrade verwenden können.

So migrieren Sie ein UFS-Root-Dateisystem mit Zonen-Roots auf UFS auf ein ZFS-Root-Dateisystem (Solaris 10 10/08)

Dieses Verfahren erklärt, wie ein UFS-Root-Dateisystem mit installierten Zonen in ein ZFS-Root-Dateisystem migriert wird, damit die ZFS-Zonen-Root-Konfiguration aktualisiert oder gepatcht werden kann.

In den nachfolgenden Schritten ist der Name des Beispiel-Pools rpool, und die Namen der aktiven Boot-Umgebung (BUs) beginnen mit s10BE*.

  1. Rüsten·Sie das System auf Solaris 10 10/08 auf, falls darauf ein früheres Solaris 10-Release installiert ist.

    Weitere Informationen zum Aktualisieren eines Systems, auf dem Solaris 10 installiert ist, finden Sie in Oracle Solaris 10 9/10 Installationshandbuch: Solaris Live Upgrade und Planung von Upgrades .

  2. Erstellen Sie den Root-Pool.
    # zpool create rpool mirror c0t1d0 c1t1d0

    Information zu Voraussetzungen für den Root-Pool finden Sie unter Oracle Solaris-Installation und Live Upgrade: Voraussetzungen für die ZFS-Unterstützung.

  3. Überprüfen Sie, ob die Zonen aus der UFS-Umgebung gebootet wurden.
  4. Erstellen Sie die neue ZFS-Boot-Umgebung.
    # lucreate -n s10BE2 -p rpool

    Dieser Befehl erstellt im Root-Pool Datasets für die neue BU und kopiert die aktuelle BU einschließlich der Zonen in diese Datasets.

  5. Aktivieren Sie die neue ZFS-Boot-Umgebung.
    # luactivate s10BE2

    Jetzt besitzt das System ein ZFS-Root-Dateisystem, die Zonen-Roots auf UFS befinden sich jedoch noch im UFS-Root-Dateisystem. Als nächster Schritt müssen die UFS-Zonen vollständig in eine unterstützte ZFS-Konfiguration migriert werden.

  6. Starten Sie das System neu.
    # init 6
  7. Migrieren Sie die Zonen in eine ZFS-BU.
    1. Booten Sie die Zonen.
    2. Erstellen Sie eine weitere ZFS-BU innerhalb des Pools.
      # lucreate s10BE3
    3. Aktivieren Sie die neue Boot-Umgebung.
      # luactivate s10BE3
    4. Starten Sie das System neu.
      # init 6

      Dieser Schritt stellt sicher, dass die ZFS-BU und die Zonen gebootet werden können.

  8. Beseitigen Sie alle potenziellen Probleme mit Einhängepunkten.

    Aufgrund eines Fehlers im Live Upgrade kann das Booten der nichtaktiven BU fehlschlagen, wenn ein ZFS-Dataset oder ein ZFS-Dataset einer Zone in der BU einen ungültigen Einhängepunkt besitzt.

    1. Überprüfen Sie die Ausgabe des Befehls zfs list.

      Suchen Sie ungültige temporäre Einhängepunkte. Beispiel:

      # zfs list -r -o name,mountpoint rpool/ROOT/s10up
      
      NAME                               MOUNTPOINT
      rpool/ROOT/s10up                   /.alt.tmp.b-VP.mnt/
      rpool/ROOT/s10up/zones             /.alt.tmp.b-VP.mnt//zones
      rpool/ROOT/s10up/zones/zonerootA   /.alt.tmp.b-VP.mnt/zones/zonerootA

      Der Einhängepunkt für die ZFS-Root-BU (rpool/ROOT/s10up) muss / sein.

    2. Setzen Sie die Einhängepunkte für die ZFS-BU und ihre Datasets zurück.

      Beispiel:

      # zfs inherit -r mountpoint rpool/ROOT/s10up
      # zfs set mountpoint=/ rpool/ROOT/s10up
    3. Starten Sie das System neu.

      Wählen Sie die BU aus, deren Einhängepunkte Sie gerade korrigiert haben, wenn in der Eingabeaufforderung des OpenBoot-PROM bzw. im GRUB-Menü die Option zum Booten einer spezifischen BU angezeigt wird.

So konfigurieren Sie ein ZFS-Root-Dateisystem mit Zonen-Roots auf ZFS (Solaris 10 10/08)

In diesem Verfahren wird erklärt, wie ein ZFS-Root-Dateisystem und eine ZFS-Zonen-Root-Konfiguration einrichtet werden, die aktualisiert oder gepatcht werden können. In dieser Konfiguration werden die ZFS-Zonen-Roots als ZFS-Datasets erstellt.

In den nachfolgenden Schritten ist der Name des Beispiel-Pools rpool, und der Name der aktiven Boot-Umgebung ist s10BE. Der Name für das Zonen-Dataset kann ein beliebiger gültiger Dataset-Name sein. Der Name des Zonen-Dataset im folgenden Beispiel ist zones.

  1. Installieren Sie mithilfe des interaktiven Textmodus-Installationsverfahrens oder des JumpStart-Installationsverfahrens ein System mit ZFS-Root.

    Lesen Sie je nach angewendetem Installationsverfahren Installieren eines ZFS-Root-Dateisystems (Erstinstallation von Oracle Solaris) oder Installieren eines ZFS-Root-Dateisystems (JumpStart-Installation).

  2. Booten Sie das System vom neu erstellten Root-Pool.
  3. Erstellen Sie ein Dataset zum Gruppieren der Zonen-Roots.

    Beispiel:

    # zfs create -o canmount=noauto rpool/ROOT/s10BE/zones

    Das Setzen des Wertes noauto für die Eigenschaft canmount garantiert, dass das Dataset nur von der speziellen Aktion von Live Upgrade und dem Startup-Code des Systems eingehängt werden kann.

  4. Hängen Sie das neu erstellte Zonen-Dataset ein.
    # zfs mount rpool/ROOT/s10BE/zones

    Das Dataset wird unter /zones eingehängt.

  5. Erstellen Sie für jede Zonen-Root ein·Dataset und hängen Sie dieses ein.
    # zfs create -o canmount=noauto rpool/ROOT/s10BE/zones/zonerootA
    # zfs mount rpool/ROOT/s10BE/zones/zonerootA
  6. Setzen Sie für das Zonen-Root-Verzeichnis die entsprechenden Zugriffsrechte.
    # chmod 700 /zones/zonerootA
  7. Konfigurieren Sie die Zone und setzen Sie den Zonen-Pfad wie folgt:
    # zonecfg -z zoneA
        zoneA: No such zone configured
        Use 'create' to begin configuring a new zone.
        zonecfg:zoneA> create
        zonecfg:zoneA> set zonepath=/zones/zonerootA

    Mithilfe der folgenden Syntax können Sie festlegen, dass die Zonen beim Booten des Systems automatisch gebootet werden sollen:

    zonecfg:zoneA> set autoboot=true
  8. Installieren Sie die Zone.
    # zoneadm -z zoneA install
  9. Booten Sie die Zone.
    # zoneadm -z zoneA boot

So aktualisieren bzw. patchen Sie ein ZFS-Root-Dateisystem mit Zonen-Roots auf ZFS (Solaris 10 10/08)

Verwenden Sie dieses Verfahren, wenn Sie ein ZFS-Root-Dateisystem mit Zonen-Roots auf ZFS aktualisieren bzw. patchen müssen. Solche Aktualisierungen umfassen entweder eine Systemaktualisierung oder die Anwendung von Patches.

In den nachfolgenden Schritten ist newBE der Beispielname der BU, die aktualisiert bzw. gepatcht werden soll.

  1. Erstellen Sie die BU, die aktualisiert oder gepatcht werden soll.
    # lucreate -n newBE

    Die vorhandene BU sowie sämtliche Zonen werden geklont. Für jedes Dataset der ursprünglichen BU wird ein Dataset erstellt. Die neuen Datasets werden im gleichen Pool erstellt, in dem sich auch der aktuelle Root-Pool befindet.

  2. Wählen Sie eines der folgenden Verfahren aus, um das System zu aktualisieren oder Patches auf die neue BU anzuwenden:
    • Rüsten·Sie das System auf.

      # luupgrade -u -n newBE -s /net/install/export/s10up/latest

      Die Option -s gibt an, wo sich der Oracle Solaris-Installationsdatenträger befindet.

    • Wenden Sie Patches auf die neue BU an.

       # luupgrade -t -n newBE -t -s /patchdir 139147-02 157347-14
  3. Aktivieren Sie die neue BU.
    # luactivate newBE
  4. Booten Sie von der neu aktivierten BU.
    # init 6
  5. Beseitigen Sie alle potenziellen Probleme mit Einhängepunkten.

    Aufgrund eines Fehlers im Live Upgrade kann das Booten der nichtaktiven BU fehlschlagen, wenn ein ZFS-Dataset oder ein ZFS-Dataset einer Zone in der BU einen ungültigen Einhängepunkt besitzt.

    1. Überprüfen Sie die Ausgabe des Befehls zfs list.

      Suchen Sie ungültige temporäre Einhängepunkte. Beispiel:

      # zfs list -r -o name,mountpoint rpool/ROOT/newBE
      
      NAME                               MOUNTPOINT
      rpool/ROOT/newBE                   /.alt.tmp.b-VP.mnt/
      rpool/ROOT/newBE/zones             /.alt.tmp.b-VP.mnt/zones
      rpool/ROOT/newBE/zones/zonerootA   /.alt.tmp.b-VP.mnt/zones/zonerootA

      Der Einhängepunkt für die ZFS-Root-BU (rpool/ROOT/newBE) muss / sein.

    2. Setzen Sie die Einhängepunkte für die ZFS-BU und ihre Datasets zurück.

      Beispiel:

      # zfs inherit -r mountpoint rpool/ROOT/newBE
      # zfs set mountpoint=/ rpool/ROOT/newBE
    3. Starten Sie das System neu.

      Wählen Sie die Boot-Umgebung aus, deren Einhängepunkte Sie gerade korrigiert haben, wenn im GRUB-Menü bzw. in der Eingabeaufforderung des OpenBoot-PROM die Option zum Booten einer spezifischen Boot-Umgebung angezeigt wird.

Verwenden des Oracle Solaris Live Upgrade zum Migrieren oder Aktualisieren eines Systems mit Zonen (ab Solaris 10 5/09)

Ab Solaris 10 10/08 können Sie Oracle Solaris Live Upgrade zum Migrieren oder Aktualisieren eines Systems mit Zonen verwenden. Zusätzliche Sparse-Zonenkonfigurationen (Root- und Gesamtzonen) werden durch Live Upgrade ab Solaris 10 5/09 unterstützt.

In diesem Abschnitt wird beschrieben, wie Sie ein System mit Zonen konfigurieren, damit es mit Live Upgrade ab Solaris 10 5/09 aktualisiert und gepatcht werden kann. Informationen zum Migrieren eines ZFS-Root-Dateisystems ohne Zonen finden Sie unter Migrieren oder Aktualisieren eines ZFS-Root-Dateisystems mit Live Upgrade (ohne Zonen).

Berücksichtigen Sie folgende Punkte, wenn Sie Oracle Solaris Live Upgrade für ZFS und Zonen ab Solaris 10 5/09 verwenden:

Anhand der folgende Vorgehensweisen können Sie mit Solaris ab Version 10 5/09 ein System mit Zonen migrieren oder konfigurieren:

Unterstütztes ZFS mit Zonen-Root-Konfigurationsinformationen (ab Solaris 10 5/09)

Überprüfen Sie die unterstützten Zonenkonfigurationen, bevor Sie Oracle Solaris Live Upgrade zur Migration oder zum Upgrade eines Systems mit Zonen verwenden.

So erstellen Sie eine ZFS-BU mit einem ZFS-Root-Dateisystem und einem Zonen-Root (ab Solaris 10 5/09)

Verwenden Sie dieses Verfahren, nachdem Sie eine Erstinstallation von Solaris 10 5/09 oder einer höheren Version durchgeführt haben, um ein ZFS-Root-Dateisystem zu erstellen. Verwenden Sie dieses Verfahren ebenfalls, nachdem Sie den Befehl luupgrade verwendet haben, um ein ZFS-Root-Dateisystem auf Solaris 10 5/09 oder eine höhere Version zu aktualisieren. Eine mit dieser Vorgehensweise erstellte ZFS-BU kann aktualisiert oder gepatcht werden.

Das in den folgenden Schritten verwendete Oracle Solaris 10 9/10-Beispielsystem besitzt ein ZFS-Root-Dateisystem und ein Zonen-Root-Dataset in /rpool/zones. Eine ZFS-BU mit dem Namen zfs2BE wird erstellt, die aktualisiert oder gepatcht werden kann.

  1. Überprüfen Sie die vorhandenen ZFS-Dateisysteme.
    # zfs list
    NAME                   USED  AVAIL  REFER  MOUNTPOINT
    rpool                 7.26G  59.7G    98K  /rpool
    rpool/ROOT            4.64G  59.7G    21K  legacy
    rpool/ROOT/zfsBE      4.64G  59.7G  4.64G  /
    rpool/dump            1.00G  59.7G  1.00G  -
    rpool/export            44K  59.7G    23K  /export
    rpool/export/home       21K  59.7G    21K  /export/home
    rpool/swap               1G  60.7G    16K  -
    rpool/zones            633M  59.7G   633M  /rpool/zones
  2. Stellen Sie sicher, dass die Zonen installiert und gebootet sind.
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       2 zfszone          running    /rpool/zones                   native   shared
  3. Erstellen Sie die ZFS-BU.
    # lucreate -n zfs2BE
    Analyzing system configuration.
    No name for current boot environment.
    INFORMATION: The current boot environment is not named - assigning name <zfsBE>.
    Current boot environment is named <zfsBE>.
    Creating initial configuration for primary boot environment <zfsBE>.
    The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
    PBE configuration successful: PBE name <zfsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
    Comparing source boot environment <zfsBE> 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.
    Creating configuration for boot environment <zfs2BE>.
    Source boot environment is <zfsBE>.
    Creating boot environment <zfs2BE>.
    Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
    Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
    Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
    Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
    Population of boot environment <zfs2BE> successful.
    Creation of boot environment <zfs2BE> successful.
  4. Aktivieren Sie die ZFS-BU.
    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    zfsBE                      yes      yes    yes       no     -         
    zfs2BE                     yes      no     no        yes    -         
    # luactivate zfs2BE
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfs2BE>.
    .
    .
    .
  5. Booten Sie die ZFS-BU.
    # init 6
  6. Überprüfen Sie, ob die ZFS-Dateisysteme und Zonen in der neuen BU erstellt wurden.
    # zfs list
    NAME                               USED  AVAIL  REFER  MOUNTPOINT
    rpool                             7.38G  59.6G    98K  /rpool
    rpool/ROOT                        4.72G  59.6G    21K  legacy
    rpool/ROOT/zfs2BE                 4.72G  59.6G  4.64G  /
    rpool/ROOT/zfs2BE@zfs2BE          74.0M      -  4.64G  -
    rpool/ROOT/zfsBE                  5.45M  59.6G  4.64G  /.alt.zfsBE
    rpool/dump                        1.00G  59.6G  1.00G  -
    rpool/export                        44K  59.6G    23K  /export
    rpool/export/home                   21K  59.6G    21K  /export/home
    rpool/swap                           1G  60.6G    16K  -
    rpool/zones                       17.2M  59.6G   633M  /rpool/zones
    rpool/zones-zfsBE                  653M  59.6G   633M  /rpool/zones-zfsBE
    rpool/zones-zfsBE@zfs2BE          19.9M      -   633M  -
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       - zfszone          installed  /rpool/zones                   native   shared

So aktualisieren oder patchen Sie ein ZFS-Root-Dateisystem mit Zonen-Roots (ab Solaris 10 5/09)

Verwenden Sie dieses Verfahren, wenn Sie ein ZFS-Root-Dateisystem mit Zonen-Roots in Solaris 10 5/09 oder einer höheren Version aktualisieren oder patchen müssen. Solche Aktualisierungen umfassen entweder eine Systemaktualisierung oder die Anwendung von Patches.

In den nachfolgenden Schritten ist zfs2BE der Beispielname der BU, die aktualisiert bzw. gepatcht werden soll.

  1. Überprüfen Sie die vorhandenen ZFS-Dateisysteme.
    # zfs list
    NAME                               USED  AVAIL  REFER  MOUNTPOINT
    rpool                             7.38G  59.6G   100K  /rpool
    rpool/ROOT                        4.72G  59.6G    21K  legacy
    rpool/ROOT/zfs2BE                 4.72G  59.6G  4.64G  /
    rpool/ROOT/zfs2BE@zfs2BE          75.0M      -  4.64G  -
    rpool/ROOT/zfsBE                  5.46M  59.6G  4.64G  /
    rpool/dump                        1.00G  59.6G  1.00G  -
    rpool/export                        44K  59.6G    23K  /export
    rpool/export/home                   21K  59.6G    21K  /export/home
    rpool/swap                           1G  60.6G    16K  -
    rpool/zones                       22.9M  59.6G   637M  /rpool/zones
    rpool/zones-zfsBE                  653M  59.6G   633M  /rpool/zones-zfsBE
    rpool/zones-zfsBE@zfs2BE          20.0M      -   633M  -
  2. Stellen Sie sicher, dass die Zonen installiert und gebootet sind.
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       5 zfszone          running    /rpool/zones                   native   shared
  3. Erstellen Sie die ZFS-BU, die aktualisiert oder gepatcht werden soll.
    # lucreate -n zfs2BE
    Analyzing system configuration.
    Comparing source boot environment <zfsBE> 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.
    Creating configuration for boot environment <zfs2BE>.
    Source boot environment is <zfsBE>.
    Creating boot environment <zfs2BE>.
    Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
    Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
    Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
    Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
    Creating snapshot for <rpool/zones> on <rpool/zones@zfs10092BE>.
    Creating clone for <rpool/zones@zfs2BE> on <rpool/zones-zfs2BE>.
    Population of boot environment <zfs2BE> successful.
    Creation of boot environment <zfs2BE> successful.
  4. Wählen Sie eines der folgenden Verfahren aus, um das System zu aktualisieren oder Patches auf die neue BU anzuwenden:
    • Rüsten·Sie das System auf.

      # luupgrade -u -n zfs2BE -s /net/install/export/s10up/latest

      Die Option -s gibt an, wo sich der Oracle Solaris-Installationsdatenträger befindet.

      Dieser Vorgang kann sehr viel Zeit beanspruchen.

      Ein vollständiges Beispiel für den luupgrade-Vorgang finden Sie in Beispiel 5-9.

    • Wenden Sie Patches auf die neue BU an.

      # luupgrade -t -n zfs2BE -t -s /patchdir patch-id-02 patch-id-04
  5. Aktivieren Sie die neue Boot-Umgebung.
    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    zfsBE                      yes      yes    yes       no     -         
    zfs2BE                     yes      no     no        yes    -    
    # luactivate zfs2BE
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfs2BE>.
    .
    .
    .
  6. Booten Sie das System von der neu aktivierten Boot-Umgebung.
    # init 6

Beispiel 5-9 Aktualisieren eines ZFS-Root-Dateisystems mit Zonen-Root auf ein ZFS-Root-Dateisystem in Oracle Solaris 10 9/10

In diesem Beispiel wird eine auf einem Solaris 10 /10/09-System erstellte ZFS-BU (zfsBE) mit einem ZFS-Root-Dateisystem und einer Zonen-Root in einem Pool außerhalb des Root auf Oracle Solaris 10 9/10 aktualisiert. Dieser Vorgang kann viel Zeit beanspruchen. Dann wird die aktualisierte BU (zfs2BE) aktiviert. Stellen Sie vor dem Aktualisierungsversuch sicher, dass die Zonen installiert und gebootet wurden.

In diesem Beispiel werden der Pool zonepool, das Dataset /zonepool/zones und die Zone zfszone wie folgt erstellt:

# zpool create zonepool mirror c2t1d0 c2t5d0
# zfs create zonepool/zones
# chmod 700 zonepool/zones
# zonecfg -z zfszone
zfszone: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:zfszone> create
zonecfg:zfszone> set zonepath=/zonepool/zones
zonecfg:zfszone> verify
zonecfg:zfszone> exit
# zoneadm -z zfszone install
cannot create ZFS dataset zonepool/zones: dataset already exists
Preparing to install zone <zfszone>.
Creating list of files to copy from the global zone.
Copying <8960> files to the zone.
.
.
.
# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   2 zfszone          running    /zonepool/zones                native   shared

# lucreate -n zfsBE
.
.
.
# luupgrade -u -n zfsBE -s /net/install/export/s10up/latest
40410 blocks
miniroot filesystem is <lofs>
Mounting miniroot at </net/system/export/s10up/latest/Solaris_10/Tools/Boot>
Validating the contents of the media </net/system/export/s10up/latest>.
The media is a standard Solaris media.
The media contains an operating system upgrade image.
The media contains <Solaris> version <10>.
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 <zfsBE>.
Determining packages to install or upgrade for BE <zfsBE>.
Performing the operating system upgrade of the BE <zfsBE>.
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.
Updating package information on boot environment <zfsBE>.
Package information successfully updated on boot environment <zfsBE>.
Adding operating system patches to the BE <zfsBE>.
The operating system patch installation is complete.
INFORMATION: The file </var/sadm/system/logs/upgrade_log> on boot 
environment <zfsBE> contains a log of the upgrade operation.
INFORMATION: The file </var/sadm/system/data/upgrade_cleanup> on boot 
environment <zfsBE> contains a log of cleanup operations required.
INFORMATION: Review the files listed above. Remember that all of the files 
are located on boot environment <zfsBE>. Before you activate boot 
environment <zfsBE>, 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 <zfsBE> is complete.
Installing failsafe
Failsafe install is complete.
# luactivate zfs2BE
# init 6
# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
zfsBE                      yes      no     no        yes    -         
zfs2BE                     yes      yes    yes       no     -         
# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   - zfszone          installed  /zonepool/zones                native   shared

So migrieren Sie ein UFS-Root-Dateisystem mit Zonen-Roots in ein ZFS-Root-Dateisystem (ab Solaris 10 5/09)

Verwenden Sie dieses Verfahren, um ein System mit einem UFS-Root-Dateisystem und einer Zonen-Root auf Solaris 10 5/09 oder eine höhere Version zu migrieren. Erstellen Sie dann mit Live Upgrade eine ZFS-BU.

In den folgenden Schritten lautet der Name der UFS-Beispiel-BU c1t1d0s0, der UFS-Zonen-Root heißt zonepool/zfszone und die ZFS-Root-BU heißt zfsBE.

  1. Aktualisieren Sie das System auf Solaris 10 5/09 oder eine höhere Version, falls darauf eine frühere Solaris 10-Version installiert ist.

    Weitere Informationen zum Aktualisieren eines Systems, auf dem Solaris 10 installiert ist, finden Sie in Oracle Solaris 10 9/10 Installationshandbuch: Solaris Live Upgrade und Planung von Upgrades .

  2. Erstellen Sie den Root-Pool.

    Information zu Voraussetzungen für den Root-Pool finden Sie unter Oracle Solaris-Installation und Live Upgrade: Voraussetzungen für die ZFS-Unterstützung.

  3. Überprüfen Sie, ob die Zonen aus der UFS-Umgebung gebootet wurden.
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       2 zfszone          running    /zonepool/zones                native   shared
  4. Erstellen Sie die neue ZFS-BU.
    # lucreate -c c1t1d0s0 -n zfsBE -p rpool

    Dieser Befehl erstellt im Root-Pool Datasets für die neue BU und kopiert die aktuelle BU einschließlich der Zonen in diese Datasets.

  5. Aktivieren Sie die neue ZFS-BU.
    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    c1t1d0s0                   yes      no     no        yes    -         
    zfsBE                      yes      yes    yes       no     -         #
    luactivate zfsBE       
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfsBE>.
    .
    .
    .
  6. Starten Sie das System neu.
    # init 6
  7. Überprüfen Sie, ob die ZFS-Dateisysteme und Zonen in der neuen BU erstellt wurden.
    # zfs list
    NAME                                USED  AVAIL  REFER  MOUNTPOINT
    rpool                              6.17G  60.8G    98K  /rpool
    rpool/ROOT                         4.67G  60.8G    21K  /rpool/ROOT
    rpool/ROOT/zfsBE                   4.67G  60.8G  4.67G  /
    rpool/dump                         1.00G  60.8G  1.00G  -
    rpool/swap                          517M  61.3G    16K  -
    zonepool                            634M  7.62G    24K  /zonepool
    zonepool/zones                      270K  7.62G   633M  /zonepool/zones
    zonepool/zones-c1t1d0s0             634M  7.62G   633M  /zonepool/zones-c1t1d0s0
    zonepool/zones-c1t1d0s0@zfsBE       262K      -   633M  -
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       - zfszone          installed  /zonepool/zones                native   shared

Beispiel 5-10 Migrieren eines UFS-Root-Dateisystems mit Zonen-Root in ein ZFS-Root-Dateisystem

In diesem Beispiel wird ein Oracle Solaris 10 9/10-System mit einem UFS-Root-Dateisystem, einem Zonen-Root (/uzone/ufszone), einem ZFS-Pool außerhalb des Roots (pool ) und einem Zonen-Root (/pool/zfszone) in ein ZFS-Root-Dateisystem migriert. Stellen Sie vor dem Migrationsversuch sicher, dass der ZFS-Root-Pool erstellt sowie die Zonen installiert und gebootet wurden.

# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   2 ufszone          running    /uzone/ufszone                 native   shared
   3 zfszone          running    /pool/zones/zfszone            native   shared
# lucreate -c ufsBE -n zfsBE -p rpool
Analyzing system configuration.
No name for current boot environment.
Current boot environment is named <zfsBE>.
Creating initial configuration for primary boot environment <zfsBE>.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
PBE configuration successful: PBE name <ufsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
Comparing source boot environment <ufsBE> 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/c1t1d0s0> is not a root device for any boot environment; cannot get BE ID.
Creating configuration for boot environment <zfsBE>.
Source boot environment is <ufsBE>.
Creating boot environment <zfsBE>.
Creating file systems on boot environment <zfsBE>.
Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>.
Populating file systems on boot environment <zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Copying root of zone <ufszone> to </.alt.tmp.b-EYd.mnt/uzone/ufszone>.
Creating snapshot for <pool/zones/zfszone> on <pool/zones/zfszone@zfsBE>.
Creating clone for <pool/zones/zfszone@zfsBE> on <pool/zones/zfszone-zfsBE>.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </rpool/ROOT>.
Creating compare database for file system </>.
Updating compare databases on boot environment <zfsBE>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-DLd.mnt
updating /.alt.tmp.b-DLd.mnt/platform/sun4u/boot_archive
Population of boot environment <zfsBE> successful.
Creation of boot environment <zfsBE> successful.
# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
ufsBE                      yes      yes    yes       no     -         
zfsBE                      yes      no     no        yes    -         
# luactivate zfsBE    
.
.
.
# init 6
.
.
.
# zfs list
NAME                                    USED  AVAIL  REFER  MOUNTPOINT
pool                                    628M  66.3G    19K  /pool
pool/zones                              628M  66.3G    20K  /pool/zones
pool/zones/zfszone                     75.5K  66.3G   627M  /pool/zones/zfszone
pool/zones/zfszone-ufsBE                628M  66.3G   627M  /pool/zones/zfszone-ufsBE
pool/zones/zfszone-ufsBE@zfsBE           98K      -   627M  -
rpool                                  7.76G  59.2G    95K  /rpool
rpool/ROOT                             5.25G  59.2G    18K  /rpool/ROOT
rpool/ROOT/zfsBE                       5.25G  59.2G  5.25G  /
rpool/dump                             2.00G  59.2G  2.00G  -
rpool/swap                              517M  59.7G    16K  -
# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   - ufszone          installed  /uzone/ufszone                 native   shared
   - zfszone          installed  /pool/zones/zfszone            native   shared