Solaris 9 12/03 インストールガイド

第 31 章 Solaris Live Upgrade の計画

この章では、Solaris Live Upgrade のインストールと使用を開始する前に考慮すべき指針と要件を説明します。アップグレード用のチェックリスト でアップグレード全般に関する情報も確認してください。この章の内容は次のとおりです。

Solaris Live Upgrade の要件

Solaris Live Upgrade のシステム要件

Solaris Live Upgrade は Solaris 9 ソフトウェアに含まれています。Solaris Live Upgrade を使用してアップグレードする場合は、現在のオペレーティング環境に Solaris Live Upgrade パッケージをインストールする必要があります。ブート環境は、マシンにインストールされている Solaris Live Upgrade パッケージと同じリリースの Solaris オペレーティング環境にアップグレードできます。たとえば、現在 Solaris 8 オペレーティング環境を実行していて Solaris 9 Live Upgrade パッケージをインストールした場合、ブート環境を Solaris 9 マーケティングまたは Update リリースにアップグレードできます。

表 31–1 では、Solaris Live Upgrade でサポートされるリリースの一覧を示しています。

表 31–1 サポートされる Solaris リリース

プラットフォーム 

アップグレード前のリリース 

アップグレード後のリリース 

SPARC システム 

Solaris 2.6、Solaris 7、または Solaris 8 オペレーティング環境 

Solaris 8 オペレーティング環境 

SPARC システム 

Solaris 2.6、Solaris 7、または Solaris 8 オペレーティング環境 

Solaris 9 オペレーティング環境 

x86 システム 

Solaris 7 オペレーティング環境 

Solaris 8 オペレーティング環境 

x86 システム 

Solaris 7、または Solaris 8 オペレーティング環境 

Solaris 9 オペレーティング環境 


注 –

Solaris 7 オペレーティング環境にはアップグレードできません。


Solaris Live Upgrade パッケージのインストールには、次のものを使用します。

Solaris Live Upgrade ソフトウェアのインストール方法については、Solaris Live Upgrade をインストールする方法 を参照してください。

Solaris Live Upgrade のディスク容量の要件

アップグレードの一般的なディスク容量の要件に従います。第 5 章「システム要件とガイドライン (計画)」を参照してください。

ブート環境の作成に必要なファイルシステムのサイズを見積もるには、新しいブート環境の作成を開始してください。サイズが計算されたところで、処理を中断できます。

新しいブート環境上のディスクをブートデバイスとして使用する必要があります。システムの中には、ブートデバイスとして機能するディスクを限定するものがあります。ブート制限が適用されるかどうかを確認するには、各システムのマニュアルを参照してください。

新しいブート環境を作成する前に、ディスクの準備が必要になることもあります。ディスクが正しくフォーマットされていることを次のように確認します。

RAID-1 ボリューム (ミラー) を作成する場合の Solaris Live Upgrade の要件

Solaris Live Upgrade は Solaris ボリュームマネージャテクノロジを使って、ミラー化されたファイルシステム (RAID-1 ボリューム) を持つブート環境を作成します。Solaris Live Upgrade のミラー化機能を使用するには、状態データベースを 1 つ以上、状態データベースの複製を 3 つ以上作成する必要があります。状態データベースでは、Solaris ボリュームマネージャ構成の状態に関する情報がディスクに保存されます。状態データベースは、複製された複数のデータベースコピーの集まりです。各コピーは「状態データベースの複製」と呼ばれます。状態データベースのコピーを作成することで、単一点障害によるデータ損失を防ぐことができます。状態データベースの作成手順については、『Solaris ボリュームマネージャの管理』の「状態データベース (概要)」を参照してください。

Solaris Live Upgrade には、Solaris ボリュームマネージャの機能の一部だけが実装されています。Solaris Live Upgrade では、ルート (/) ファイルシステムに単一スライスの連結を持つ RAID-1 ボリューム (ミラー) だけがサポートされます。ミラーは最大 3 つの連結で構成されます。ミラー化されたファイルシステムを作成するためのガイドラインについては、ミラー化されたファイルシステムのスライスを選択するための指針を参照してください。

Solaris Live Upgrade によるパッケージやパッチの管理

以下の各節では、Solaris Live Upgrade に必要なパッケージを示し、推奨パッチ情報を提供します。Solaris Live Upgrade を使ってパッケージおよびパッチを追加する方法については、パッケージとパッチによるシステムのアップグレードを参照してください。


注意 – 注意 –

パッケージやパッチのアップグレード、追加、削除を行うためには、そのパッケージまたはパッチが SVR4 Advanced Packaging Guideline に準拠していなければなりません。サンのパッケージはこのガイドラインに準拠していますが、サードパーティベンダーのパッケージがこれに準拠しているとは限りません。非準拠のパッケージを追加しようとすると、アップグレード時にパッケージ追加ソフトウェアの障害が発生するか、アクティブブート環境が改変されてしまう可能性があります。

Solaris Live Upgrade によるパッケージの追加や削除については、luupgrade(1M) のマニュアルページを参照してください。パッケージ化の要件については、付録 G 「その他の SVR4 パッケージ要件に関するリファレンス情報」を参照してください。


必要なパッケージ

次の表は、Solaris Live Upgrade を使用する上で必要なパッケージを示しています。この表で、現在のオペレーティング環境に必要なパッケージを確認してください。使用しているリリースに必要なパッケージがインストールされていない場合は、pkgadd コマンドを使用してパッケージを追加してください。

表 31–2 Solaris Live Upgrade に必要なパッケージ

Solaris 2.6 リリース 

Solaris 7 リリース 

Solaris 8 リリース 

SUNWadmap 

SUNWadmap 

SUNWadmap 

SUNWadmc 

SUNWadmc 

SUNWadmc 

SUNWjvrt 

SUNWjvrt 

SUNWj2rt 

SUNWlibC 

SUNWlibC 

SUNWlibC 

SUNWadmfw 

 

SUNWbzip 

SUNWmfrun 

 

 

SUNWloc 

  

システム上のパッケージを確認するには、次のコマンドを入力します。


% pkginfo [[package_name]]

パッケージとパッチによるシステムのアップグレード

Solaris Live Upgrade を使ってパッチやパッケージをシステムに追加することができます。Solaris Live Upgrade を使ってパッチをマシンに追加すると、システムのダウンタイムはリブートの時間だけですみます。luupgrade コマンドまたはフラッシュアーカイブを使って、パッチやパッケージをブート環境に追加できます。


注意 – 注意 –

Solaris Live Upgrade でパッケージやパッチのアップグレードや追加、削除を行うためには、パッケージやパッチが SVR4 パッケージ化ガイドラインに準拠していなければなりません。サンのパッケージはこのガイドラインに準拠していますが、サードパーティベンダーのパッケージがこれに準拠しているとは限りません。非準拠のパッケージを追加しようとすると、パッケージ追加ソフトウェアの障害が発生するか、アクティブブート環境が改変されてしまう可能性があります。

Solaris Live Upgrade によるパッケージの追加や削除については、luupgrade(1M) のマニュアルページを参照してください。パッケージ化の要件については、付録 G 「その他の SVR4 パッケージ要件に関するリファレンス情報」を参照してください。


システムパッチレベルのチェック

Solaris Live Upgrade ソフトウェアは、複数の Solaris オペレーティング環境バージョンでインストールと実行ができるように設計されています。Solaris Live Upgrade の処理が正しく行われるようにするためには、各 OS バージョン用に提供されている最新の推奨パッチとセキュリティパッチを適用する必要があります。実行中の Solaris のリリースに適したパッチクラスタのリビジョンについては、 http://sunsolve.sun.com を参照してください。

lucreate コマンドを用いたファイルシステムの作成のための指針

lucreate コマンドに -m オプションを指定することにより、新しいブート環境に作成するファイルシステムとその数を指定できます。作成するファイルシステムの数だけ、このオプションを繰り返し指定する必要があります。たとえば、-m オプションを 1 回だけ使用した場合、すべてのファイルシステムが指定の場所に格納されます。元のブート環境のすべてのファイルシステムが、-m で指定されたファイルシステムにマージされます。-m オプションを 2 回使用すると、ファイルシステムが 2 つ作成されます。-m オプションを使ってファイルシステムを作成する場合、次の項目に留意してください。

ファイルシステムのスライスを選択するための指針

ブート環境のファイルシステムを作成する場合の規則は、Solaris オペレーティング環境のファイルシステムを作成する場合と同じです。Solaris Live Upgrade では、クリティカルファイルシステムに無効な構成を作成できてしまいます。たとえば、lucreate コマンドを用いて、ルート (/) と /kernel を別々のファイルシステムに作成することも可能です。しかし、これは、無効な分割方式です。

ディスクスライスを作成するときは、スライスがオーバーラップしないように注意してください。スライスのオーバーラップがあると、新しいブート環境を作成したつもりでも、アクティブにした後ブートすることができません。こうしたオーバーラップは、ファイルシステムの破損の原因となります。

Solaris Live Upgrade を正しく機能させるには、アクティブブート環境の vfstab ファイルの内容が有効で、少なくとも ルート (/) のエントリが含まれている必要があります。

ルート (/) ファイルシステムのスライスを選択するための指針

非アクティブブート環境を作成する場合は、ルート (/) ファイルシステムがコピーされるスライスを確認する必要があります。ルート (/) ファイルシステムのスライスを選択する場合は、次の項目に留意してください。スライスは、次の条件を満たしていなければなりません。

ミラー化されたファイルシステムのスライスを選択するための指針

新しく作成するブート環境には、物理ディスクスライス、Solaris ボリュームマネージャのボリューム、および Veritas Volume Manager のボリュームを自由に組み合わせて使用できます。新しいブート環境にコピーされるクリティカルファイルシステムには、次のような種類があります。

新しいブート環境を作成する際、lucreate - m コマンドは、次の 3 種類のデバイスを認識します。


注 –

Veritas VxVM のアップグレードで問題が生じる場合は、Veritas VxVm の実行中に Solaris Live Upgrade を使用してアップグレードするとシステムパニックが発生するを参照してください。


ミラー化されたファイルシステムを作成するための一般的な指針

ボリュームの指定

ミラーまたはサブミラーを指定することも、lucreate コマンドで空いているボリュームを自動的に選択することもできます。

ボリューム名の省略形

物理ディスクスライスや Solaris ボリュームマネージャのボリュームの名前は、省略形にすることができます。省略名は、デバイスを一意に識別できる最短の名前です。次に例を示します。

命名の要件とガイドラインについては、『Solaris ボリュームマネージャの管理』の「Solaris ボリュームマネージャコンポーネントの概要」を参照してください。

ボリュームのステータスの確認

ミラーやサブミラーが保守を必要としている場合や使用中である場合、コンポーネントを切り離すことはできません。新しいブート環境を作成して detach キーワードを使用する前に、metastat コマンドを実行してください。metastat コマンドは、ミラーが再同期の処理中かどうか、または使用中かどうかを確認します。詳細は、metastat(1M) のマニュアルページを参照してください。

ボリュームの切り離しとミラーの再同期

detach キーワードを使ってサブミラーを切り離す場合、lucreate コマンドは、デバイスが再同期の処理中かどうかを確認します。デバイスが再同期中である場合、サブミラーを切り離すことはできず、エラーメッセージが返されます。

再同期処理とは、次のような問題の後で、あるサブミラーから別のサブミラーにデータをコピーする処理のことです。

再同期処理の詳細は、『Solaris ボリュームマネージャの管理』の「RAID 1 ボリューム (ミラー) の再同期」を参照してください。

Solaris ボリュームマネージャのコマンドの使用法

非アクティブなブート環境のボリュームを操作するには、Solaris ボリュームマネージャのコマンドではなく lucreate コマンドを使用します。Solaris ボリュームマネージャソフトウェアにはブート環境に関する考慮はありませんが、 lucreate コマンドでは、ブート環境を誤って破棄しないように確認が行われます。たとえば、lucreate では、Solaris ボリュームマネージャのボリュームの上書きや削除が防止されます。

ただし、Solaris ボリュームマネージャを使って複雑な連結、ストライプ、ミラーなどを作成した場合、その操作には Solaris ボリュームマネージャを使用する必要があります。Solaris Live Upgrade では、これらのコンポーネントを認識して使用できます。Solaris ボリュームマネージャのコマンドでボリュームコンポーネントを作成、変更、または破棄する前に、lustatus コマンドまたは lufslist コマンドを実行してください。これらのコマンドを使用すると、Solaris Live Upgrade ブート環境で使用されているファイルシステムがどの Solaris ボリュームマネージャボリュームに置かれているかを確認できます。

スワップファイルシステムのスライスを選択するための指針

新しいブート環境のスワップの構成

lucreate コマンドの -m オプションを使って、3 通りの方法でスワップスライスを構成できます。

3 通りのスワップ構成の例を次に示します。現在のブート環境では、ルート (/) ファイルシステムが c0t0d0s0 上に構成されています。スワップファイルシステムは c0t0d0s1 上に構成されています。

スワップの使用中に起きるブート環境の作成失敗

現在のブート環境以外のブート環境によってスワップスライスが使用されている場合、ブート環境の作成は失敗します。ブート環境が -s オプションを使って作成された場合は、代替ソースブート環境がスワップスライスを使用している可能性がありますが、ほかのブート環境が使用している可能性はありません。

共有可能なファイルシステムのスライスを選択するための指針

Solaris Live Upgrade は、スライスの内容を指定した新しいブート環境のスライスにコピーします。容量とコピーにかかる時間を節約したい場合は、そのスライス上に複数のブート環境で共有できるだけの大きなファイルシステムを用意することもできます。ルート(/)、/var のようなオペレーティング環境に欠かせないクリティカルファイルシステムは必ずコピーしてください。/home などの非クリティカルファイルシステムは、複数のブート環境で共有できます。共有可能なファイルシステムは、ユーザーによって定義され、アクティブブート環境と新しいブート環境の両方の個々のスワップスライス上に存在していなければなりません。必要に応じて、複数の方法でディスクを再構成できます。

共有可能なファイルシステムおよびクリティカルファイルシステムの概要については、ファイルシステムのタイプを参照してください。

新しいブート環境の内容のカスタマイズ

新しいブート環境を作成するときに、ディレクトリやファイルの一部を新しいブート環境へのコピーから除外できます。ディレクトリを除外した場合は、そのディレクトリ内にある特定のファイルやサブディレクトリが含まれるようにすることが可能です。これらのサブディレクトリは、新しいブート環境にコピーされます。たとえば、/etc/mail にあるすべてのファイルとディレクトリを除外するが、/etc/mail/staff にあるすべてのファイルとディレクトリは含まれるように指定できます。次のコマンドでは、staff サブディレクトリが新しいブート環境にコピーされます。


# lucreate -n second_disk -x /etc/mail -y /etc/mail/staff

注意 – 注意 –

ファイル除外オプションは、注意して使用してください。システムに必要なファイルやディレクトリは削除しないでください。


次の表に、lucreate コマンドでディレクトリやファイルを除外または追加するためのオプションを示します。

指定方法 

除外用のオプション 

追加用のオプション 

ディレクトリまたはファイルの名前を指定します。 

-x exclude_dir

-y include_dir

対象のファイルやディレクトリのリストを含むファイルを使用します。 

-f list_filename

-z list_filename

-Y list_filename

-z list_filename

ブート環境の作成時にディレクトリやファイルをカスタマイズする例については、ブート環境の作成と内容のカスタマイズ (コマンド行インタフェース)を参照してください。

ブート環境間でのファイルの同期

新しいブート環境に切り替えてアクティブにする準備ができたら、新しいブート環境をアクティブにしてリブートするだけです。新たに作成したブート環境を初めて起動するとき、ブート環境間でファイルの同期がとられます。ここでいう「同期」とは、前にアクティブであったブート環境にあるシステムファイルやディレクトリを、ブートされているブート環境にコピーすることです。変更されているファイルやディレクトリがコピーされます。

/etc/lu/synclist へのファイルの追加

Solaris Live Upgrade では、変更されているクリティカルなファイルがチェックされます。クリティカルなファイルの内容が 2 つのブート環境で異なっている場合、そのファイルはアクティブなブート環境から新しいブート環境にコピーされます。ファイルの同期は、新しいブート環境の作成後に /etc/passwd /etc/group などのクリティカルなファイルが変更された場合のために用意されています。

/etc/lu/synclist ファイルには、同期するディレクトリやファイルのリストが記述されています。アクティブなブート環境から新しいブート環境にほかのファイルをコピーしたい場合もあるでしょう。必要に応じて、ディレクトリやファイルを /etc/lu/synclist に追加できます。

/etc/lu/synclist のリストにないファイルを追加すると、システムをブートできなくなる場合があります。同期処理では、ファイルのコピーとディレクトリの作成だけが行われます。ファイルやディレクトリの削除は行われません。

次の /etc/lu/synclist ファイルの例は、このシステムで同期される標準のディレクトリとファイルを示しています。


/var/mail                    OVERWRITE
/var/spool/mqueue            OVERWRITE
/var/spool/cron/crontabs     OVERWRITE
/var/dhcp                    OVERWRITE
/etc/passwd                  OVERWRITE
/etc/shadow                  OVERWRITE
/etc/opasswd                 OVERWRITE
/etc/oshadow                 OVERWRITE
/etc/group                   OVERWRITE
/etc/pwhist                  OVERWRITE
/etc/default/passwd          OVERWRITE
/etc/dfs                     OVERWRITE
/var/log/syslog              APPEND
/var/adm/messages            APPEND

次のディレクトリやファイルなどは、synclist ファイルに追加してもよいでしょう。


/var/yp                    OVERWRITE
/etc/mail                  OVERWRITE
/etc/resolv.conf          OVERWRITE
/etc/domainname            OVERWRITE

synclist ファイルのエントリは、ファイルまたはディレクトリです。2 番目のフィールドは、ブート環境をアクティブ化するときに行われる更新の方法を示します。ファイルの更新には 3 通りの方法があります。

ブート環境間での強制的な同期

新しく作成したブート環境で初めてブートする時に、Solaris Live Upgrade は新しいブート環境と以前のアクティブブート環境の同期をとります。この最初のブートと同期の後は、要求しない限り Solaris Live Upgrade で同期は行われません。

複数のバージョンの Solaris オペレーティング環境を使用していると、強制的に同期を行いたい場合があります。emailpasswd/groupなどのファイルに加えた変更を、アクティブにするブート環境に反映させたい場合があります。強制的に同期を実行すると、Solaris Live Upgrade は、同期をとるファイルの間に矛盾がないかチェックします。新しいブート環境がブートされ、矛盾が検出されると、警告が出されます。この場合、ファイルの同期は行われません。このような場合でも、アクティブ化は正常に終了します。新しいブート環境とアクティブなブート環境の両方で同じファイルに変更を加えると、矛盾が発生することがあります。たとえば、元のブート環境で /etc/passwd ファイルに変更を加えます。そして、新しいブート環境で /etc/passwd ファイルに別の変更を加えた場合などです。このような場合、同期処理では、どちらのファイルをコピーするべきか判断できません。


注意 – 注意 –

以前のアクティブブート環境で発生した変更にユーザーが気付いていない場合や、それらの変更を制御できない場合もあるため、このオプションを使用する際には十分注意してください。たとえば、現在のブート環境で Solaris 9 ソフトウェアを実行しているとします。この場合、Solaris 7 リリースをブートし、強制的な同期を実行すると、7 リリースのファイルは変更されることがあります。ファイルはオペレーティング環境のリリースに依存しているため、Solaris 7 リリースのブートは失敗することがあります。Solaris 9 のファイルと Solaris 7 のファイルは互換性があるとは限らないからです。


リモートシステムからの Solaris Live Upgrade の使用

キャラクタインタフェースを tip 回線などを介してリモートで表示する場合は、必要に応じて TERM 環境変数を VT220 に設定してください。また、共通デスクトップ環境 (CDE) を使用する場合は、TERM 変数の値を xterm ではなく dtterm に設定してください。