この章では、インストールサーバーの設定時にミニルートイメージにパッチを適用する詳細な手順と例を示します。
この章で扱う内容は、次のとおりです。
setup_install_server によって作成されたネットワークインストールイメージ上のミニルート内にあるファイルに、パッチを適用する場合があります。
ミニルートは、Solaris インストールメディアに含まれるブート可能な最小限のルート (/) ファイルシステムです。ミニルートは、システムをブートして、システムをインストールまたはアップグレードするために必要なすべての Solaris ソフトウェアで構成されます。ミニルートソフトウェアは、Solaris OS の完全インストールを実行するために、インストールメディアによって使用されます。ミニルートは、インストールプロセスの実行中にのみ使用されます。
ブートイメージにブートの問題がある、またはドライバやハードウェアサポートを追加する場合は、インストールの前にミニルートにパッチを適用することがあります。ミニルートイメージにパッチを適用しても、Solaris OS のインストールが行われるシステムや、patchadd コマンドを実行するシステムにパッチがインストールされることはありません。ミニルートイメージに適用されたパッチは、実際に Solaris OS インストールを実行するプロセスに、ドライバやハードウェアのサポートを追加するためだけに使用されます。
この章で説明しているのは、ミニルートにパッチを適用するための手順であり、完全なネットワークインストールイメージにパッチを適用するための手順ではありません。ネットワークインストールイメージにパッチを適用する場合は、インストールが完了したあとに作業を実行します。
ネットワークインストールのミニルートイメージにパッチを適用するには、次の手順に従います。
次の手順では、ネットワーク上に Solaris 最新リリースが実行されているシステムがあり、そのシステムにネットワークを経由してアクセスできると仮定しています。
Solaris 最新リリースが実行されているシステム上で、スーパーユーザーとしてログインするか、同等の役割になります。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
手順 5 で作成したインストールイメージの Tools ディレクトリに移動します。
# cd install-server-path/install-dir-path/Solaris_10/Tools |
たとえば /net/installserver-1 のように、ネットワーク上のインストールサーバーシステムへのパスを指定します。
新しいインストールイメージを作成し、そのイメージを Solaris 最新リリースが実行されているシステム上に置きます。
# ./setup_install_server remote_install_dir_path |
新しいインストールイメージを作成する Solaris 最新リリース上のパスを指定します。
このコマンドにより、Solaris 最新リリース上に新しいインストールイメージが作成されます。このイメージにパッチを適用するには、このイメージを Solaris 最新リリースが実行されているシステム上に一時的に置きます。
Solaris 最新リリース上で、ネットワークインストールのブートアーカイブを展開します。
# /boot/solaris/bin/root_archive unpackmedia remote_install_dir_path \ destination_dir |
Solaris 最新リリース上のネットワークインストールイメージへのパスを指定します。
展開されたブートアーカイブを含むディレクトリのパスを指定します。
Solaris 最新リリース上で、展開したブートアーカイブにパッチを適用します。
# patchadd -C destination_dir path-to-patch/patch-id |
たとえば /var/sadm/spool のように、追加するパッチのパスを指定します。
適用するパッチ ID を指定します。
patchadd -M コマンドを使用すると、複数のパッチを指定できます。詳細については、patchadd(1M) のマニュアルページを参照してください。
patchadd -C を使用する前には必ず、パッチの README を読むか、ご購入先におたずねください。
Solaris 最新リリース上で、ブートアーカイブを作成します。
# /boot/solaris/bin/root_archive packmedia remote_install_dir_path \ destination_dir |
パッチを適用したアーカイブをインストールサーバー上のインストールイメージにコピーします。
# cd remote_install_dir_path # find boot Solaris_10/Tools/Boot | cpio -pdum \ install-server-path/install_dir_path |
インストールサーバーの設定とミニルートへのパッチの適用が完了したあと、ブートサーバーの設定、またはネットワークからインストールするシステムの追加を行う場合があります。
DHCP を使用しているか、あるいはインストール対象のシステムと同じサブネット上にインストールサーバーが存在する場合は、ブートサーバーを作成する必要はありません。「DVD イメージを使用してネットワークからインストールするシステムの追加」に進みます。
DHCP を使用しておらず、インストールサーバーとクライアントが異なるサブネット上にある場合は、ブートサーバーを作成します。「DVD イメージを使用したサブネット上でのブートサーバーの作成」に進みます。
この例では、ミニルートイメージにパッチを適用して、修正済みのミニルートを作成する手順について説明します。
この例では、最新リリースが実行されているシステム上でミニルートの展開と圧縮を実行します。
次の手順は、Solaris 10 9/10 ミニルートイメージにカーネル更新 (KU) パッチをインストールする方法を示しています。Solaris 10 OS が実行されているシステム上で次の手順に従います。ただし、次の点に注意してください。
jmp-start1 — Solaris 9 OS が実行されているネットワークインストールサーバー
v20z-1 — Solaris 10 OS が実行されている、GRUB が実装されたシステム
v20z-1:/export/mr — 展開されたミニルートの場所
v20z-1:/export/u1 — 作成されたインストールイメージ。これを変更できる
ネットワークインストールイメージは、/net/jmpstart1/export/images/solaris_10_u1/Solaris_10/Tools にあります。
Solaris 最新リリースが実行されているシステム上で、スーパーユーザーとしてログインするか、同等の役割になります。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
ミニルートを展開するディレクトリに移動し、そこにネットワークインストールイメージを置きます。
# cd /net/server-1/export |
インストールディレクトリとミニルートディレクトリを作成します。
# mkdir /export/u1 /export/mr |
Solaris 10 9/10 のインストールイメージが存在する Tools ディレクトリに移動します。
# cd /net/jmp-start1/export/images/solaris_10/Solaris_10/Tools |
新しいインストールイメージを作成し、そのイメージを Solaris 最新リリースが実行されているシステム上に置きます。
# ./setup_install_server /export/u1 Verifying target directory... Calculating the required disk space for the Solaris_10 product Calculating space required for the installation boot image Copying the CD image to disk... Copying Install Boot Image hierarchy... Copying /boot netboot hierarchy... Install Server setup complete |
これでインストールサーバーの設定が完了しました。
次のコマンドを実行して、ミニルートを展開します。
# /boot/solaris/bin/root_archive unpackmedia /export/u1 /export/mr |
ディレクトリを変更します。
# cd /export/mr/sbin |
rc2 ファイルと sulogin ファイルのコピーを作成します。
# cp rc2 rc2.orig # cp sulogin sulogin.orig |
すべての必須パッチをミニルートに適用します。
patchadd -C /export/mr /export patchid |
patchid には、適用するパッチ ID を指定します。
この例では、ミニルートに 5 つのパッチが適用されます。
# patchadd -C /export/mr /export/118344-14 # patchadd -C /export/mr /export/122035-05 # patchadd -C /export/mr /export/119043-10 # patchadd -C /export/mr /export/123840-04 # patchadd -C /export/mr /export/118855-36 |
SVCCFG_REPOSITORY 変数をエクスポートします。
# export SVCCFG_REPOSITORY=/export/mr/etc/svc/repository.db |
SVCCFG_REPOSITORY 変数は、展開したミニルートの repository.db ファイルの場所を指すようにしてください。この例では、/export/mr/etc/svc ディレクトリです。repository.db ファイルは、展開したミニルートの下の /etc/svc ディレクトリにあります。この変数のエクスポートに失敗すると、ライブリポジトリが変更され、ライブシステムがブートできなくなります。
ミニルートの repository.db ファイルを変更します。
# svccfg -s system/manifest-import setprop start/exec = :true # svccfg -s system/filesystem/usr setprop start/exec = :true # svccfg -s system/identity:node setprop start/exec = :true # svccfg -s system/device/local setprop start/exec = :true # svccfg -s network/loopback:default setprop start/exec = :true # svccfg -s network/physical:default setprop start/exec = :true # svccfg -s milestone/multi-user setprop start/exec = :true |
詳細は、svccfg(1M) のマニュアルページを参照してください。
ディレクトリを変更します。そのあと、rc2.orig ファイルと sulogin.orig ファイルのオリジナルコピーを復元します。
# cd /export/mr/sbin # mv rc2.orig rc2 # mv sulogin.orig sulogin |
変更点を含む、修正済みのミニルートを圧縮します。変更したミニルートを /export/u1 ディレクトリに置きます。
# /boot/solaris/bin/root_archive packmedia /export/u1 /export/mr |
この手順により、実質的に /export/u1/boot/miniroot ディレクトリがその他の必須ファイルと共に置き換えられます。
インストールサーバーの設定とミニルートへのパッチの適用が完了したあと、ブートサーバーの設定、またはネットワークからインストールするシステムの追加を行う場合があります。
DHCP を使用しているか、あるいはインストール対象のシステムと同じサブネット上にインストールサーバーが存在する場合は、ブートサーバーを作成する必要はありません。ここで作業は終了です。「DVD イメージを使用してネットワークからインストールするシステムの追加」に進みます。
DHCP を使用しておらず、インストールサーバーとクライアントが異なるサブネット上にある場合は、ブートサーバーを作成します。「DVD イメージを使用したサブネット上でのブートサーバーの作成」に進みます。