Solaris 10 1/06: このリリースでは、この章は全面的に改訂されています。この章では、非大域ゾーンがインストールされているシステムで最新のパッケージとパッチを追加および削除する手順について説明します。
Solaris 10 6/06: 「パッケージを大域ゾーンだけに追加する方法」の手順に注が追加されました。
Solaris 10 8/07: 「大域ゾーンだけにパッチを適用する方法」の手順から注が削除されました。
Solaris 10 の新機能の全一覧および Solaris リリースについての説明は、『Oracle Solaris 10 9/10 の新機能』を参照してください。
この章では、ゾーンがインストールされているシステムでパッケージとパッチを追加および削除する方法について説明します。パッケージパラメータの設定やパッケージ情報の取得など、パッケージとパッチの管理に関連したほかの作業についても説明します。ゾーンがインストールされているシステムでのパッチおよびパッケージの概念に関する概要は、第 25 章ゾーンがインストールされている Solaris システムでのパッケージとパッチについて (概要)を参照してください。
タスク |
説明 |
説明 |
---|---|---|
パッケージを追加します。 |
ゾーンがインストールされているシステムでパッケージを追加します。 | |
パッケージ情報を検査します。 |
ゾーンがインストールされているシステムでパッケージ情報を検査します。 | |
パッケージを削除します。 |
ゾーンがインストールされているシステムでパッケージを削除します。 | |
パッチを適用します。 |
ゾーンがインストールされているシステムでパッチを適用します。 | |
パッチを削除します。 |
ゾーンがインストールされているシステムでパッチを削除します。 | |
(省略可能) パッケージパラメータの設定を検査します。 |
パッケージを追加または削除する際、パッケージパラメータの設定が実行する操作をサポートしていることを確認します。 |
pkgadd(1M) のマニュアルページで説明しているように、pkgadd システムユーティリティーを使用すると、次の作業を実行できます。
パッケージを大域ゾーンだけに追加します
パッケージを大域ゾーンとすべての非大域ゾーンの両方に追加します
大域ゾーンにインストール済みのパッケージを非大域ゾーンに追加します
パッケージを指定された非大域ゾーンだけに追加します
パッケージを追加する場合、SUNW_PKG_ALLZONES および SUNW_PKG_HOLLOW パッケージパラメータ設定は、true または false のいずれか適正な値でなければなりません。ほかの値が設定されている場合、意図した結果を得ることができません。パッケージパラメータ設定の効果に関する詳細は、「パッケージとゾーンについて」を参照してください。これらのパッケージパラメータ設定の検査方法については、「ゾーンがインストールされているシステムでのパッケージパラメータ設定の検査」を参照してください。
パッケージを大域ゾーンだけに追加する場合、SUNW_PKG_ALLZONES パッケージパラメータが false に設定されている必要があります。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
大域ゾーン内で、pkgadd -d コマンドに続けてパッケージの場所、-G オプション、およびパッケージ名を指定して実行します。
CD-ROM からパッケージをインストールする場合は、次のように入力します。
global# pkgadd -d /cdrom/cdrom0/directory -G package_name |
そのパッケージが既にコピーされているディレクトリからパッケージをインストールする場合は、次のように入力します。
global# pkgadd -d disk1/image -G package_name |
ここで、disk1 にはパッケージのコピー先の場所を指定します。
pkgadd ユーティリティーを -G オプションを指定せずに実行し、かつ SUNW_PKG_THISZONE=true であった場合、指定されたパッケージはデフォルトで現在のゾーン (大域ゾーン) に追加されます。
この手順では、pkgadd にオプション -G を指定しないでください。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
大域ゾーン内で、pkgadd -d コマンドに続けてパッケージの場所とパッケージ名を指定して実行します。
CD-ROM からパッケージをインストールする場合は、次のように入力します。
global# pkgadd -d /cdrom/cdrom0/directory package_name |
そのパッケージが既にコピーされているディレクトリからパッケージをインストールする場合は、次のように入力します。
global# pkgadd -d disk1/image package_name |
ここで、disk1 にはパッケージのコピー先の場所を指定します。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
大域ゾーンで、pkgrm を使ってパッケージを削除します。
-G オプションを指定せずにパッケージを追加します。
指定された非大域ゾーンだけにパッケージを追加する場合、SUNW_PKG_ALLZONES パッケージパラメータが false に設定されている必要があります。この手順では、pkgadd に -G オプションを指定しないでください。
この手順を実行するには、非大域ゾーン内のゾーン管理者になる必要があります。
ゾーン管理者として非大域ゾーンにログインします。
非大域ゾーン (この手順では my-zone) 内で、pkgadd -d コマンドに続けてパッケージの場所、およびパッケージ名を指定して実行します。
CD-ROM からパッケージをインストールする場合は、次のように入力します。
my-zone# pkgadd -d /cdrom/cdrom0/directory package_name |
そのパッケージが既にコピーされているディレクトリからパッケージをインストールする場合は、次のように入力します。
my-zone# pkgadd -d disk1/image package_name |
ここで、disk1 にはパッケージのコピー先の場所を指定します。
pkginfo コマンドを実行することで、大域ゾーンや非大域ゾーンのソフトウェアパッケージデータベースを照会できます。このコマンドの詳細は、pkginfo(1) のマニュアルページを参照してください。
global% pkginfo SUNWcsr SUNWcsu system SUNWcsr Core Solaris, (Root) system SUNWcsu Core Solaris, (Usr) |
指定された非大域ゾーンのソフトウェアパッケージデータベースを検査する場合は、非大域ゾーンにログインし、pkginfo に続けてパッケージ名を指定します。
my-zone% pkginfo package_name |
my-zone% pkginfo SUNWcsr SUNWcsu system SUNWcsr Core Solaris, (Root) system SUNWcsu Core Solaris, (Usr) |
pkgrm(1M) のマニュアルページで説明しているように、pkgrm システムユーティリティーを使用すると、次の作業を実行できます。
大域ゾーンおよびすべての非大域ゾーンからパッケージを削除します
指定された非大域ゾーンだけからパッケージを削除します
パッケージを削除する場合、SUNW_PKG_ALLZONES および SUNW_PKG_HOLLOW パッケージパラメータ設定は、true または false のいずれか適正な値でなければなりません。ほかの値が設定されている場合、意図した結果を得ることができません。パッケージパラメータ設定の効果に関する詳細は、「パッケージとゾーンについて」を参照してください。これらのパッケージパラメータ設定の検査方法については、「ゾーンがインストールされているシステムでのパッケージパラメータ設定の検査」を参照してください。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
大域ゾーン内で、pkgrm コマンドに続けてパッケージ名を指定します。
global# pkgrm package_name |
指定された非大域ゾーンだけからパッケージを削除する場合、SUNW_PKG_ALLZONES パッケージパラメータを false に設定する必要があります。
この手順を実行するには、非大域ゾーン内のゾーン管理者になる必要があります。
ゾーン管理者として非大域ゾーンにログインします。
非大域ゾーン (この手順では my-zone) 内で、pkgrm コマンドに続けてパッケージ名を指定して実行します。
my-zone# pkgrm package_name |
patchadd(1M) のマニュアルページで説明しているように、patchadd システムユーティリティーを使用すると、次の作業を実行できます。
大域ゾーンだけにパッチを適用します
大域ゾーンおよびすべての非大域ゾーンにパッチを適用します
指定された非大域ゾーンだけにパッチを適用します
Solaris 10 3/05 から Solaris 10 11/06: pkgadd コマンドに -G オプションを指定して追加されたパッケージにパッチを適用する場合は、patchadd コマンドに -G オプションを指定してパッチを適用する必要があります。この制限は Solaris 8/07 リリースで削除されています。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
patchadd コマンドに続けて -G オプションとパッチ ID を指定して実行します。
global# patchadd -G patch_id |
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
『「Solaris 10 10/09: パッチ適用時間を短縮するためのゾーンの並列パッチ」』および『「Solaris 10 10/09: 非大域ゾーンに並列でパッチを適用する方法」』も参照してください。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
patchadd コマンドに続けてパッチ ID を指定して実行します。
global# patchadd patch_id |
指定された非大域ゾーンだけにパッチを適用するには、パッチセット内のすべてのパッケージの SUNW_PKG_ALLZONES パッケージパラメータが false に設定されている必要があります。
この手順を実行するには、非大域ゾーン内のゾーン管理者になる必要があります。
ゾーン管理者として非大域ゾーンにログインします。
非大域ゾーン (この手順では my-zone) 内で、patchadd コマンドに続けてパッチ ID を指定して実行します。
my-zone# patchadd patch_id |
patchadd 構成ファイル /etc/patch/pdo.conf に、並列でパッチを適用する非大域ゾーンの数を設定します。大域ゾーンへのパッチの適用が終了した時点で、num_proc= に設定されている数の非大域ゾーンに対して一緒にパッチの適用が行われます。
Solaris 10 10/09 より前のリリースを実行している場合は、パッチ 119254-66 以降のリビジョン (SPARC) または 119255-66 以降のリビジョン (x86) をダウンロードします。
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
(省略可能、Solaris 10 10/09 より前のリリースのみ必要) パッチ 119254-66 (SPARC) または 119255-66 (x86) をダウンロードします。
/etc/patch/pdo.conf ファイルに、オンライン CPU が 4 つあるシステム上で、並列でパッチを一緒に適用する 6 つの非大域ゾーンを設定します。
num_proc=6 |
システム上に 6 つを超える非大域ゾーンがある場合は、まず最初の 6 つに並列でパッチが適用され、最初の 6 つの非大域ゾーンへのパッチの適用プロセスが終了したら、残りの非大域ゾーンにパッチが適用されます。
patchrm(1M) のマニュアルページで説明しているように、patchrm システムユーティリティーを使用すると、次の作業を実行できます。
大域ゾーンとすべての非大域ゾーンからパッチを削除します
指定された非大域ゾーンだけからパッチを削除します
この手順を実行するには、大域ゾーン内で大域管理者になる必要があります。
スーパーユーザーまたは Primary Administrator 役割になります。
役割の作成と作成した役割のユーザーへの割り当てについては、『Solaris のシステム管理 (基本編)』の「Solaris 管理ツールを RBAC と組み合わせて使用する (作業マップ)」を参照してください。
patchrm コマンドに続けてパッチ ID を指定して実行します。
global# patchrm patch_id |
指定された非大域ゾーンだけからパッチを削除するには、パッチセット内のすべてのパッケージの SUNW_PKG_ALLZONES パッケージパラメータが false に設定されている必要があります。
この手順を実行するには、非大域ゾーン内のゾーン管理者になる必要があります。
ゾーン管理者として非大域ゾーンにログインします。
非大域ゾーン (この手順では my-zone) 内で、patchrm コマンドに続けてパッチ ID を指定して実行します。
my-zone# patchrm patch_id |
ソフトウェアパッケージを追加または削除する前に、pkgparam コマンドを使用してパッケージパラメータ設定を検査できます。この手順は省略可能です。パッケージが意図したとおりに追加または削除されない場合の障害追跡にも、この検査は使用できます。パッケージのパラメータ値の表示については、pkgparam(1) のマニュアルページを参照してください。
大域ゾーンまたは非大域ゾーンにインストール済みのパッケージのパッケージパラメータ設定を検査する場合、pkgparam に続けてパッケージ名およびパラメータ名を指定します。
my-zone% pkgparam package_name SUNW_PKG_ALLZONES true my-zone% pkgparam package_name SUNW_PKG_HOLLOW false |