Solaris 10 10/08 インストールガイド (Solaris Live Upgrade とアップグレードの計画)

非大域ゾーンがインストールされている場合のブート環境の作成とアップグレード (作業)

次の節では、非大域ゾーンがインストールされている場合のブート環境の作成に関する情報とアップグレード手順について説明します。

非大域ゾーンが独立したファイルシステム上にある場合にブート環境を作成する

現在稼動しているブート環境から新しいブート環境を作成する方法は、1 つの例外を除いて、以前のリリースの場合と同じです。非大域ゾーン内の共有ファイルシステムに対して宛先ディスクスライスを指定できます。この例外は、次の条件のもとで発生します。

この独立したファイルシステムが新しいブート環境で共有されないようにするため、lucreate コマンドでは、非大域ゾーンの独立したファイルシステムに対して宛先スライスを指定できます。-m オプションの引数には、新しい省略可能フィールド zonename が追加されました。この新しいフィールドは、非大域ゾーンの個別のファイルシステムを新しいブート環境の個々のスライス上に配置します。非大域ゾーンに独立したファイルシステムを設定する方法の詳細は、zonecfg(1M) のマニュアルページを参照してください。


注 –

デフォルトでは、クリティカルファイルシステム (ルート(/)、/usr/opt ファイルシステム) 以外のすべてのファイルシステムが、現在のブート環境と新しいブート環境との間で共有されます。このため、アクティブブート環境内の共有ファイルを更新すると、非アクティブブート環境のデータも更新されます。たとえば、/export ファイルシステムは共有ファイルシステムです。-m オプションと zonename オプションを使用すると、非大域ゾーンのファイルシステムが別のスライスにコピーされ、データは共有されません。このオプションを使用すると、zonecfg add fs コマンドを使って作成した非大域ゾーンのファイルシステムがブート環境間で共有されなくなります。


Procedure非大域ゾーンがシステムにインストールされている場合に Solaris Live Upgrade でアップグレードする (作業)

ここでは、非大域ゾーンがインストールされているシステムを Solaris Live Upgrade でアップグレードする詳しい手順について説明します。

  1. 必要なパッチをインストールします。

    http://sunsolve.sun.com で最新のパッチリストを確認してください。SunSolve の Web サイトで、infodoc 206844 (以前の 72099) を検索してください。

    1. SunSolveSM の Web サイトから、パッチリストを取得します。

    2. スーパーユーザーになるか、同等の役割を引き受けます。

    3. patchadd コマンドを使用してパッチをインストールします。


      # patchadd path_to_patches
      

      path_to_patches は、パッチが置かれているパスです。

    4. 必要に応じてシステムをリブートします。いくつかのパッチは、有効にするためにリブートする必要があります。

      x86 のみ: システムをリブートする必要があります。そうしないと、Solaris Live Upgrade は失敗します。


      # init 6
      
  2. 既存の Solaris Live Upgrade パッケージを削除します。

    3 つの Solaris Live Upgrade パッケージ SUNWluuSUNWlur、および SUNWlucfg は、Solaris Live Upgrade を使ってアップグレードするのに必要なソフトウェアを構成します。これらのパッケージには、既存のソフトウェア、新しい機能、およびバグ修正が含まれています。Solaris Live Upgrade を使用する前に、既存パッケージを削除しないで新しいパッケージをシステムにインストールすると、ターゲットリリースへのアップグレードは失敗します。


    # pkgrm SUNWlucfg SUNWluu SUNWlur
    
  3. Solaris Live Upgrade パッケージをインストールします。

    1. Solaris DVD または CD を挿入します。

      このメディアには、アップグレードの対象となるリリース用のパッケージが含まれています。

    2. インストールメディアまたはネットワークインストールイメージから、次の順序でパッケージをインストールします。


      # pkagadd -d path_to_packages SUNWlucfg SUNWlur SUNWluu
      

      次の例では、インストールメディアからパッケージがインストールされます。


      # pkgadd -d /cdrom/cdrom0/Solaris_10/Product SUNWlucfg SUNWlur SUNWluu
      
  4. パッケージが正常にインストールされていることを確認します。


    # pkgchk -v SUNWlucfg SUNWlur SUNWluu
    
  5. 新しいブート環境を作成します。


    # lucreate [-A 'BE_description'] [-c BE_name] \
     -m mountpoint:device[,metadevice]:fs_options[:zonename] [-m ...] -n BE_name
    
    -n BE_name

    作成するブート環境の名前。BE_name は、システム上で一意となるように指定する必要があります。

    -A 'BE_description'

    (省略可能) ブート環境名 (BE_name) の説明を記述できます。記述の長さ、使用できる文字に制限はありません。

    -c BE_name

    アクティブブート環境に名前 BE_name を割り当てます。このオプションは省略可能で、最初のブート環境を作成する場合だけ使用されます。lucreate を初めて実行する場合に -c オプションを省略すると、デフォルトの名前が作成されます。

    -m mountpoint:device[,metadevice]:fs_options [:zonename] [-m ...]

    新しいブート環境のファイルシステム構成を vfstab で指定します。-m に引数として指定されるファイルシステムは、同じディスク上のファイルシステムでも、複数のディスク上のファイルシステムでも構いません。このオプションは、作成するファイルシステムの数だけ使用します。

    • mountpoint には、任意の有効なマウントポイント、またはスワップパーティションを示す – (ハイフン) を指定できます。

    • device フィールドには、次のいずれかを指定できます。

      • ディスクデバイスの名前。/dev/dsk/cwtxdysz の形式で表されます

      • Solaris ボリュームマネージャーのボリューム名。/dev/md/dsk/dnum の形式で表されます

      • Veritas Volume Manager のボリューム名。/dev/md/vxfs/dsk/dnum の形式で表されます

      • キーワード merged。指定されたマウントポイントのファイルシステムがその親とマージされることを示します

    • fs_options フィールドには、次のいずれかを指定できます。

      • ufs: UFS ファイルシステムを示します。

      • vxfs: Veritas ファイルシステムを示します。

      • swap: スワップボリュームを示します。スワップマウントポイントはハイフン (–) で表します。

      • 論理デバイス (ミラー) であるファイルシステムについては、いくつかのキーワードを使って、そのファイルシステムに対して実行するアクションを指定できます。論理デバイスの作成、論理デバイスの構成変更、論理デバイスの削除などを行うキーワードがあります。これらのキーワードの詳細は、「RAID-1 ボリューム (ミラー) を持つブート環境を作成する」を参照してください。

    • zonename は、非大域ゾーンの独立したファイルシステムが個別のスライス上に配置されるように指定します。このオプションは、そのゾーンの独立したファイルシステムが /zone1/root/export などの共有ファイルシステム内にある場合に使用します。このオプションは、そのゾーンの独立したファイルシステムを新しいスライスにコピーして、このファイルシステムが共有されないようにします。独立したファイルシステムは、zonecfg add fs コマンドを使って作成したものです。

    次の例では、newbe という新しいブート環境が作成されます。ルート (/) ファイルシステムは、c0t1d0s4 上に配置されます。現在のブート環境にある非大域ゾーンはすべて、新しいブート環境にコピーされます。zone1 という非大域ゾーンに対して個別のマウントポイントが c0t1d0s1 上に指定されます。


    注 –

    デフォルトでは、クリティカルファイルシステム (ルート(/)、/usr/opt ファイルシステム) 以外のすべてのファイルシステムが、現在のブート環境と新しいブート環境との間で共有されます。/export ファイルシステムは共有ファイルシステムです。-m オプションを使用すると、非大域ゾーンのファイルシステムが別のスライス上に配置され、データは共有されません。このオプションは、zonecfg add fs コマンドを使って作成したゾーンのファイルシステムがブート環境間で共有されないようにします。詳細は、zonecfg(1M) のマニュアルページを参照してください。



    # lucreate -n newbe -m /:/dev/dsk/c0t1d0s4:ufs -m /export:/dev/dsk/c0t1d0s1:ufs:zone1
    
  6. ブート環境をアップグレードします。

    アップグレードに使用するオペレーティングシステムイメージはネットワークから取得します。


    # luupgrade -u -n BE_name -s os_image_path
    
    -u

    ブート環境のオペレーティングシステムイメージをアップグレードします。

    -n BE_name

    アップグレード対象のブート環境の名前を指定します。

    -s os_image_path

    オペレーティングシステムイメージが置かれているディレクトリのパス名を指定します。

    この例では、新しいブート環境 newbe がネットワークインストールイメージからアップグレードされます。


    # luupgrade -n newbe -u -s /net/server/export/Solaris_10/combined.solaris_wos
    
  7. (省略可能) ブート環境がブート可能であることを確認します。

    lustatus コマンドは、ブート環境の作成が完了してブート可能であるかどうかを報告します。


    # lustatus
    boot environment   Is        Active  Active     Can	    Copy
    Name               Complete  Now	 OnReboot   Delete	 Status
    ------------------------------------------------------------------------
    c0t1d0s0            yes      yes      yes       no      -
    newbe               yes       no       no       yes     -
  8. 新しいブート環境をアクティブにします。


    # luactivate BE_name
    

    BE_name は、アクティブにするブート環境の名前を示します。


    注 –

    x86 ベースのシステムの場合、ブート環境をはじめてブートするときには luactivate コマンドを使用する必要があります。2 回目以降は、GRUB メニューからブート環境を選択すれば、アクティブにできます。手順については、「x86: GRUB メニューを使ったブート環境のアクティブ化」を参照してください。


    ブート環境を正常にアクティブにするためには、そのブート環境がいくつかの条件を満たしている必要があります。詳細は、「ブート環境のアクティブ化」を参照してください。

  9. 再起動します。


    # init 6
    

    注意 – 注意 –

    リブートには initshutdown コマンドを使用してください。reboothaltuadmin コマンドを使用すると、ブート環境の切り替えは行われません。最後にアクティブになっていたブート環境が再びブートされます。


    ブート環境が切り替わり、新しいブート環境が現在のブート環境になります。

  10. (省略可能) 別のブート環境に戻します。

    新しいブート環境が実行可能でない場合、または別のブート環境に切り替える必要がある場合は、第 6 章障害回復: 元のブート環境へのフォールバック (作業)を参照してください。