この章では、Oracle Solaris OS でディスクレスクライアントを管理する方法について説明します。
Oracle Solaris ZFS ルートファイルシステムがインストールされているシステムでは、smosservice および smdiskless コマンドを使用できません。これは、ZFS ルートファイルシステムのインストールがサポートされているすべての Solaris リリースでの既知の問題です。
Solaris Flash インストール機能を使用すると、UFS ルートファイルシステムまたは ZFS ルートファイルシステムを実行するシステムをすばやくプロビジョニングできます。詳細は、『Oracle Solaris ZFS 管理ガイド』の「ZFS ルートファイルシステムのインストール (Oracle Solaris フラッシュアーカイブインストール)」を参照してください。
この章の内容は次のとおりです。
ディスクレスクライアントの管理の概要については、第 6 章クライアントとサーバーサポートの管理 (概要)を参照してください。
次の表に、ディスクレスクライアントの管理に必要な手順を示します。
作業 |
説明 |
参照先 |
---|---|---|
1. (省略可能) Solaris 管理コンソールのロギングを有効にしてディスクレスクライアントのエラーメッセージを表示します。 |
コンソールのメインウィンドウからログビューアを選択し、ディスクレスクライアントのエラーメッセージを表示します。 | |
2. ディスクレスクライアントを追加する準備をします。 |
サポートされているリリースを確認し、各ディスクレスクライアントのプラットフォーム、メディアパス、およびクラスタ (またはソフトウェアグループ) を確認します。 | |
3. 必要な OS サービスを OS サーバーに追加します。 |
smosservice コマンドを使用して、サポートするディスクレスクライアントの OS サービスを追加します。サポートする各ディスクレスクライアントプラットフォームのプラットフォームおよびメディアパスを識別する必要があります。 | |
4. OS サービスをサーバーに追加したときに失われた ARCH=all パッケージをすべて検出してインストールします。 注 – これらのパッケージを各ディスクレスクライアントに個別に追加しなくてもいいように、ディスクレスクライアントサポートを追加する前にこの作業を行なってください。 |
smosservice add コマンドを実行しても、ARCH=all が指定されているルート (/) および /usr パッケージはどれもインストールされません。これらのパッケージは、OS サービスを OS サーバーに追加したあとに、手動でインストールする必要があります。 | |
5. ディスクレスクライアントを追加します。 |
smdiskless コマンドですべての必須情報を指定し、ディスクレスクライアントサポートを追加します。 | |
6. ディスクレスクライアントをブートします。 |
ディスクレスクライアントをブートして、ディスクレスクライアントが正常に追加されたことを確認します。 | |
7. (省略可能) ディスクレスクライアントサポートを削除します。 |
必要がなくなった場合には、ディスクレスクライアントのサポートを削除します。 | |
8. (省略可能) ディスクレスクライアントの OS サービスを削除します。 |
必要がなくなった場合には、ディスクレスクライアントの OS サービスを削除します。 | |
9. (省略可能) OS サービスにパッチを適用します。 |
ディスクレスクライアント OS サービスのパッチを追加、削除、リスト表示、または同期化します。 |
この節では、ディスクレスクライアントの管理に必要な準備作業について説明します。
ディスクレスクライアントを管理する場合には、次の点に注意してください。
Oracle Solaris インストールプログラムでは、ディスクレスクライアントサポートのセットアップを促すメッセージが表示されません。ディスクレスクライアントをサポートするには、手動で /export パーティションを作成する必要があります。/export パーティションの作成は、インストール中またはインストール後に行なってください。
/export パーティションには、サポートするクライアントの数に応じて、5G バイト以上の容量が必要です。詳細は、「OS サーバーに必要なディスク容量」を参照してください。
smosservice コマンドまたは smdiskless コマンドで指定したネームサービスは、/etc/nsswitch.conf ファイルで指定された一次ネームサービスと一致していなければなりません。smdiskless コマンドまたは smosservice コマンドにネームサービスを指定しない場合、デフォルトのネームサービスは files になります。
ネームサーバーを指定するには、smosservice コマンドおよび smdiskless コマンドの -D オプションを使用します。詳細は、smosservice(1M) および smdiskless(1M) のマニュアルページを参照してください。
Solaris 10 8/07 リリース以降、Oracle Solaris 10 で配布されていた set_nfs4_domain スクリプトは、NFSv4 ドメインの設定に使用されなくなりました。NVSv4 ドメインを設定するには、nfs4_domain キーワードをディスクレスクライアントの sysidcfg ファイル (たとえば server:/export/root/client/etc/sysidcfg) に追加してください。
クライアントシステムの sysidcfg ファイルに nfs4_domain キーワードがある場合は、ディスクレスクライアントの最初のブート時にドメインが適切に設定されます。また、OS サーバーは起動して稼働している必要があり、ディスクレスクライアントの NFSv4 ドメイン設定は OS サーバーの /var/run/nfs4_domain ファイル内の設定と一致している必要があります。
詳細は、『Oracle Solaris 10 9/10 インストールガイド (ネットワークインストール)』の「sysidcfg ファイルによる事前設定」を参照してください。
OS サーバーとディスクレスクライアントは、同じサブネット上になければなりません。
EFI ラベル付きディスク上にある UFS ファイルシステムには OS やディスクレスクライアントのサービスを追加「できない」ため、マルチテラバイト UFS ファイルシステムではクライアントサービスを提供できません。
EFI ラベル付きディスク上に存在している UFS ファイルシステムに OS およびディスクレスクライアントサービスを追加しようとすると、ディスク容量が不足していることを示す次のようなエラーメッセージが表示されます。
The partition /export does not have enough free space. 1897816 KB (1853.34 MB) additional free space required. Insufficient space available on /dev/dsk/c0t5d0s0 /export |
各ディスクレスクライアントについてプラットフォーム、メディアパス、およびクラスタを決定したら、OS サービスを追加する準備ができたことになります。
追加する各 OS サービスについて、次のディレクトリが作成され移植されます。
/export/Solaris_version/Solaris_version-instruction-set.all (/export/exec/Solaris_ version/Solaris_version-instruction-set.all へのシンボリックリンク)
/export/Solaris_version
/export/Solaris_version/var
/export/Solaris_version/opt
/export/share
/export/root/templates/Solaris_version
/export/root/clone
/export/root/clone/Solaris_version
/export/root/clone/Solaris_version/ machine-class
追加する各ディスクレスクライアントについて、次のデフォルトのディレクトリが OS サーバー上に作成されます。
/export/root/diskless-client
/export/swap/diskless-client
/tftpboot/diskless-client-ipaddress-in-hex/export/dump/diskless-client (-x dump オプションを指定した場合)
smosservice および smdiskless コマンドの x オプションを使うと、ルート (/)、/swap-、および /dump ディレクトリのデフォルト位置を変更することができます。ただし、/export ファイルシステムの下にはこれらのディレクトリを作成しないでください。
ディスクレスクライアントの追加の準備をするには、次の手順を実行します。この手順は、x86 システムでの一般的な説明になっています。
smosservice add コマンドを使用して OS サービスを追加する場合は、サポートする各ディスクレスクライアントプラットフォームのプラットフォーム、メディアパス、およびクラスタ (またはソフトウェアグループ) を指定する必要があります。
サポートしているリリースが、OS サービスに指定されたシステム上で実行されていることを確認します。さらに、OS サーバーリリースとディスクレスクライアントリリースの組み合わせがサポートされていることも確認します。詳細は、「OS サーバーおよびディスクレスクライアントのサポート情報」を参照してください。
次の形式で使用されるディスクレスクライアントプラットフォームを識別します。
instruction-set.machine-class.Solaris-version
次に例を示します。
i386.i86pc.Solaris_10
次に、利用できるプラットフォームのオプションを示します。
命令セット |
マシンクラス |
Solaris バージョン |
---|---|---|
sparc |
sun4v sun4u、sun4m、sun4d、および sun4c |
Solaris 10 1/06 OS 以降 Oracle Solaris 10、Solaris 9、および Solaris 8 |
i386 |
i86pc |
Oracle Solaris 10、Solaris 9、および Solaris 8 |
sun-4c アーキテクチャーは、Solaris 8、Solaris 9、Oracle Solaris 10 の各リリースではサポートされていません。sun-4d アーキテクチャーは、Solaris 9、Oracle Solaris 10 の各リリースではサポートされていません。sun-4m アーキテクチャーは、Oracle Solaris 10 OS ではサポートされていません。
メディアパスを特定します。
メディアパスは、ディスクレスクライアントにインストールする OS を含むディスクイメージのフルパスです。
一部の Oracle Solaris リリースでは、OS は複数の CD で提供されます。 ただし、smosservice コマンドでは、複数の CD から OS を読み込むことはできません。続く手順で説明するように、Oracle Solaris ソフトウェア CD (とオプションの Language CD)、または Oracle Solaris DVD 上のスクリプトを実行する必要があります。
この Oracle Solaris リリースでは、ソフトウェアは DVD のみで提供されます。.
サーバー上にインストールイメージを作成します。
インストールサーバーの設定方法については、『Oracle Solaris 10 9/10 インストールガイド (ネットワークインストール)』を参照してください。
CD または DVD イメージから必要な OS サービスを読み込みます。
実行しているリリースの Oracle Solaris が複数の CD で提供されている場合は、次のいずれかのスクリプトを使用します。
CD 1 – /cdrom/cdrom0/Solaris_10/Tools/setup_install_server
その他の Oracle Solaris SOFTWARE CD – /cdrom/cdrom0/Solaris_10/Tools/add_to_install_server
Language CD – /cdrom/cdrom0/Solaris_10/Tools/add_to_install_server
たとえば、ローカルに接続された CD-ROM デバイス上の Oracle Solaris SOFTWARE - 1 CD から setup_install_server スクリプトを使用する場合は、次のような構文になります。
# mkdir /export/install/sol_10_x86 # cd /cd_mount_point/Solaris_10/Tools # ./setup_install_server /export/install/sol_10_x86 |
BootFile および BootSrvA DHCP オプションを DHCP サーバー構成に追加して、PXE ブートを有効にします。
次に例を示します。
Boot server IP (BootSrvA) : svr-addr (BootFile) : 01client-macro |
svr-addr は OS サーバーの IP アドレスです。client-macro は、クライアントの Ethernet タイプ (01) とクライアントの MAC (Media Access Control) アドレスに基づいて作成された名前です。この番号は、インストールサーバーの /tftpboot ディレクトリで使用されるファイルの名前としても使われます。
client-macro は大文字で表記します。コロンは含めないでください。
これらのオプションは、コマンド行から、または DHCP Manager を使用して追加できます。詳細は、例 7–4 を参照してください。
詳細は、「x86: GRUB ベースのブートをネットワークから実行する方法」、『Oracle Solaris 10 9/10 インストールガイド (ネットワークインストール)』の「DHCP サービスによるシステム構成情報の事前設定 (作業)」、および 『Solaris のシステム管理 (IP サービス)』のパート III「DHCP」を参照してください。
ディスクに Oracle Solaris イメージをインストールしたあと、ディスクのメディアパスを書き留めておきます。次に例を示します。
/net/export/install/sol_10_x86 |
このディスクのメディアパスは、smosservice コマンドを使用するときに指定する必要があります。
OS サービスを追加するときに SUNWCXall クラスタを特定します。
同じシステム上で同じ OS が動作しているディスクレスクライアントには、同じクラスタを使用する必要があります。
クラスタには常に SUNWCXall を指定してください。
smosservice add コマンドを使用して OS サービスを追加する場合は、サポートする各ディスクレスクライアントプラットフォームのプラットフォーム、メディアパス、およびクラスタ (またはソフトウェアグループ) を指定する必要があります。
サポートしているリリースが、OS サービスに指定されたシステム上で実行されていることを確認します。さらに、OS サーバーリリースとディスクレスクライアントリリースの組み合わせがサポートされていることも確認します。詳細は、「OS サーバーおよびディスクレスクライアントのサポート情報」を参照してください。
次の形式で使用されるディスクレスクライアントプラットフォームを識別します。
instruction-set.machine-class.Solaris- version
次に例を示します。
sparc.sun4u.Solaris_10
次に、利用できるプラットフォームのオプションを示します。
instruction-set |
machine-class |
Solaris_version |
---|---|---|
sparc |
sun4v sun4c、sun4d、sun4m、sun4u |
Solaris 10 1/06 OS 以降 Solaris_10、Solaris_9、および Solaris_8 |
i386 |
i86pc |
Solaris_10、Solaris_9、および Solaris_8 |
sun-4c アーキテクチャーは、Solaris 8、Solaris 9、Oracle Solaris 10 の各リリースではサポートされていません。sun-4d アーキテクチャーは、Solaris 9、Oracle Solaris 10 の各リリースではサポートされていません。sun-4m アーキテクチャーは、Oracle Solaris OS ではサポートされていません。
メディアパスを特定します。
メディアパスは、ディスクレスクライアントにインストールする OS を含むディスクイメージのフルパスです。
一部の Oracle Solaris リリースでは、OS は複数の CD で提供されます。 ただし、smosservice コマンドでは、複数の CD から OS を読み込むことはできません。続く手順で説明するように、Solaris ソフトウェア CD (とオプションの Language CD)、または DVD 上のスクリプトを実行する必要があります。
この Oracle Solaris リリースでは、ソフトウェアは DVD のみで提供されます。.
サーバー上にインストールイメージを作成します。
インストールサーバーの設定方法については、『Oracle Solaris 10 9/10 インストールガイド (ネットワークインストール)』を参照してください。
CD または DVD イメージから必要な OS サービスを読み込みます。
実行している Oracle Solaris リリースで、OS が複数の CD で提供されている場合は、次のいずれかのスクリプトを使用します。
CD 1 – /cdrom/cdrom0/Solaris_10/Tools/setup_install_server
その他の Solaris Software CD – /cdrom/cdrom0/Solaris_10/Tools/add_to_install_server
Language CD – /cdrom/cdrom0/Solaris_10/Tools/add_to_install_server
たとえば、ローカルに接続された CD-ROM デバイス上の Oracle Solaris SOFTWARE - 1 CD から setup_install_server スクリプトを使用する場合は、次のような構文になります。
# mkdir /export/install/sparc_10 # cd /cd_mount_point/Solaris_10/Tools # ./setup_install_server /export/install/sparc_10 |
ディスクに Oracle Solaris CD または DVD イメージをインストールしたあと、ディスクのメディアパスを指定します。次に例を示します。
/export/install/sparc_10 |
OS サービスを追加するときに SUNWCXall クラスタを特定します。
同じシステム上で同じ OS が動作しているディスクレスクライアントには、同じクラスタを使用する必要があります。
たとえば、次の Solaris 9 ディスクレスクライアントについて考えてみましょう。
sparc.sun4m.Solaris_9
sparc.sun4u.Solaris_9
sun4u および sun4m システムでは SUNWCXall クラスタを要求するため、これらのディスクレスクライアントをセットアップするには、各ディスクレスクライアントに SUNWCXall クラスタを指定する必要があります。また、同じシステム上で同じオペレーティングリリース (この例では Solaris_9) が動作しているディスクレスクライアントには、同じクラスタを使用する必要があります。
sun4u システム、または 8 ビットの高速カラーメモリーフレームバッファー (cgsix) が搭載されたシステムを使用している場合には、クラスタに必ず SUNWCXall を指定してください。
ディスクレスクライアントの OS サービスをサーバーに追加するには、次の手順を実行します。
smosservice add コマンドを使用して OS サービスを追加するときに、ARCH=all タイプのルート(/) パッケージと /usr パッケージはインストールされません。これらのパッケージは読み飛ばされます。警告やエラーメッセージは表示されません。OS サービスを OS サーバーに追加したあとに、失われたパッケージを手動でインストールする必要があります。手順については、「失われた ARCH=all パッケージを検出してインストールする方法」を参照してください。
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
Solaris 管理コンソールサーバーが実行中であり、システムでディスクレスクライアントツールが使用できることを確認します。
# /usr/sadm/bin/smosservice list -H host-name:898 -- |
# /usr/sadm/bin/smosservice add -H host-name :898 -- -o host-name -x mediapath=path -x platform= instruction-set.machine-class .Solaris_version -x cluster=cluster-name -x locale=locale-name |
指定された OS サービスを追加します。
接続するホスト名とポートを指定します。ポートを指定しない場合は、デフォルトポート 898 に接続されます。
smossservice コマンドを使って OS サービスを追加する場合は、-H オプションは必要ありません。
これ以降のサブコマンド引数が始まることを示します。
Solaris イメージのフルパスを指定します。
追加する命令アーキテクチャー、マシンクラス、および Solaris バージョンを指定します。
インストールする Solaris クラスタを指定します。
インストールするロケールを指定します。
サーバーの処理速度および選択した OS サービスの構成により、インストールプロセスには 45 分ほどかかることがあります。
詳細は、smosservice(1M) のマニュアルページを参照してください。
(省略可能) ほかの OS サービスを追加します。
OS サービスを追加し終わったら、OS サービスがインストールされているかどうか確認します。
# /usr/sadm/bin/smosservice list -H host-name:898 -- |
この例では、サーバー jupiter で SPARC 版 Solaris 10 の OS サービスを追加する方法を示します。サーバー jupiter では Oracle Solaris OS が動作しています。SPARC 版 Oracle Solaris 10 OS の CD イメージは、インストールサーバー myway の /export/s10/combined.s10s_u2wos/61 にあります。
# /usr/sadm/bin/smosservice add -H jupiter:898 -- -o jupiter -x mediapath=/net/myway/export/s10/combined.s10s_u2wos/61 -x platform=sparc.sun4u.Solaris_10 -x cluster=SUNWCXall -x locale=en_US # /usr/sadm/bin/smosservice list - H jupiter:898 Authenticating as user: root Type /? for help, pressing enter accepts the default denoted by [ ] Please enter a string value for: password :: xxxxxx Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from jupiter:898 Login to jupiter as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from jupiter:898 was successful. |
この例では、サーバー orbit で x86 版 Solaris 10 の OS サービスを追加する方法を示します。サーバー orbit では Oracle Solaris OS が動作しています。x86 版 Oracle Solaris 10 OS の CD イメージは、インストールサーバー seriously の /export/s10/combined.s10x_u2wos/03 にあります。
# /usr/sadm/bin/smosservice add -H orbit:898 -- -o orbit -x mediapath=/net/seriously/export/s10u2/combined.s10x_u2wos/03 -x platform=i386.i86pc.Solaris_10 -x cluster=SUNWCXall -x locale=en_US # /usr/sadm/bin/smosservice list - H orbit:898 Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password :: Starting Solaris Management Console server version 2.1.0. endpoint created: :898 Solaris Management Console server is ready. Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from orbit:898 Login to orbit as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from orbit:898 was successful. Client Root Area Swap Area Dump Area -------------------------------------------------------------------------------- . . . # |
smosservice add コマンドを実行して OS サービスを OS サーバーに追加したときに失われた ARCH=all パッケージをすべて検出し、それらをインストールします。詳細は、「失われた ARCH=all パッケージを検出してインストールする方法」を参照してください。
Solaris 10 1/06 リリース以降では、OS サービスを追加したあとに、次の手順を実行してディスクレスクライアントを追加します。
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
ディスクレスクライアントを追加します。
# /usr/sadm/bin/smdiskless add -- -i ip-address -e ethernet-address -n client-name -x os= instruction-set.machine-class.Solaris_ version -x root=/export/root/client-name -x swap=/export/swap/client-name -x swapsize=size -x tz= time-zone -x locale= locale-name |
指定したディスクレスクライアントを追加します。
これ以降のサブコマンド引数が始まることを示します。
ディスクレスクライアントの IP アドレスを指定します。
ディスクレスクライアントのイーサネットアドレスを識別します。
ディスクレスクライアントの名前を指定します。
ディスクレスクライアントの命令アーキテクチャー、マシンクラス、OS、および Solaris バージョンを指定します。
ディスクレスクライアントのルート (/) ディレクトリを指定します。
ディスクレスクライアントのスワップファイルを指定します。
スワップファイルのサイズをメガバイト (M バイト) で指定します。デフォルトは 24M バイトです。
ディスクレスクライアントの時間帯を指定します。
ディスクレスクライアントをインストールするロケールを指定します。
詳細は、smdiskless(1M) のマニュアルページを参照してください。
まだ作成されていない場合は、DHCP サーバー構成に BootSrva および BootFile DHCP オプションを追加して、PXE ブートを有効にします。
次に例を示します。
Boot server IP (BootSrvA) : svr-addr Boot file (BootFile) : 01client-macro |
svr-addr は サーバーの IP アドレスです。client-macro は、クライアントの Ethernet タイプ (01) とクライアントの MAC アドレスに基づいて作成された名前です。この番号は、インストールサーバーの /tftpboot ディレクトリで使用されるファイルの名前としても使われます。
client-macro は大文字で表記します。コロンは含めないでください。
次のファイルとディレクトリが /tftpboot ディレクトリに作成されます。
drwxr-xr-x 6 root sys 512 Dec 28 14:53 client-host-name lrwxrwxrwx 1 root root 31 Dec 28 14:53 menu.lst.01ethernet-address -> /tftpboot/client-host-name/grub/menu.lst -rw-r--r-- 1 root root 118672 Dec 28 14:53 01ethernet-address |
コンソールがシリアルポート上にある場合は、/tftpboot/menu.lst.01 ethernet-address ファイルを編集し、tty 設定を指定する行のコメントを解除します。
詳細は、「x86 システムをネットワークからブートする」を参照してください。
ディスクレスクライアントがインストールされたことを確認します。
# /usr/sadm/bin/smdiskless list -H host-name:898 -- |
(省略可能) smdiskless add コマンドを続けて使用して、各ディスクレスクライアントを追加します。
この例では、Solaris 10 x86 ベースのディスクレスクライアント mikey1 を追加する方法を示します。
rainy-01# /usr/sadm/bin/smdiskless add -H sdts-01-qfe0 -- -o sdts-01-qfe0 -n mikey1 -i 192.168.20.22 -e 00:E0:88:55:33:BC -x os=i386.i86pc.Solaris_10 -x root=/export/root/mikey1 -x swap=/export/swap/mikey1 Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from sdts-01-qfe0 Login to rainy-01-qfe0 as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from rainy-01-qfe0 was successful. # /usr/sadm/bin/smdiskless list -H mikey1:898 -- Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from mikey1:898 Login to mikey1 as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from mikey1:898 was successful. Platform -------------------------------------------------------------------------------- i386.i86pc.Solaris_10 sparc.sun4us.Solaris_10 sparc.sun4u.Solaris_10 i386.i86pc.Solaris_9 |
この例では、PXE ブートを有効にするために必要な BootSrva および BootFile DHCP オプションを追加する方法を示します。
rainy-01# pntadm -A mikey1 -m 0100E0885533BC -f 'MANUAL+PERMANENT' \ -i 0100E0885533BC 192.168.0.101 |
rainy-01# dhtadm -A -m 0100E0885533BC -d \ ":BootSrvA=192.168.0.1:BootFile=0100E0885533BC:" |
この例のサーバーアドレスはサーバーの IP アドレスであり、クライアントマクロの名前はクライアントの Ethernet タイプ (01) と MAC アドレスに基づいて作成されています。この番号は、インストールサーバーの /tftpboot ディレクトリで使用されるファイルの名前としても使われます。クライアントマクロの表記は大文字で構成されます。また、このマクロにコロンを含めないようにしてください。
OS サービスを追加した後に、ディスクレスクライアントを追加するには、次の手順を実行します。特に記載している場合を除いて、この手順は、SPARC と x86 プラットフォームに共通の一般的な説明になっています。
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
ディスクレスクライアントを追加します。
# /usr/sadm/bin/smdiskless add -- -i ip-address -e ethernet-address -n client-name -x os= instruction-set.machine-class.Solaris_ version -x root=/export/root/client-name -x swap=/export/swap/client-name -x swapsize=size -x tz= time-zone -x locale= locale-name |
指定したディスクレスクライアントを追加します。
これ以降のサブコマンド引数が始まることを示します。
ディスクレスクライアントの IP アドレスを指定します。
ディスクレスクライアントのイーサネットアドレスを識別します。
ディスクレスクライアントの名前を指定します。
ディスクレスクライアントの命令アーキテクチャー、マシンクラス、OS、および Solaris バージョンを指定します。
ディスクレスクライアントのルート (/) ディレクトリを指定します。
ディスクレスクライアントのスワップファイルを指定します。
スワップファイルのサイズをメガバイト (M バイト) で指定します。デフォルトは 24M バイトです。
ディスクレスクライアントの時間帯を指定します。
ディスクレスクライアントをインストールするロケールを指定します。
詳細は、smdiskless(1M) のマニュアルページを参照してください。
(省略可能) smdiskless add コマンドを続けて使用して、各ディスクレスクライアントを追加します。
ディスクレスクライアントがインストールされたことを確認します。
# /usr/sadm/bin/smdiskless list -H host-name:898 -- |
この例では、サーバー bearclaus から Solaris 10 sun4u ディスクレスクライアント starlite を追加する方法を示します。
# /usr/sadm/bin/smdiskless add -- -i 172.20.27.28 -e 8:0:20:a6:d4:5b -n starlite -x os=sparc.sun4u.Solaris_10 -x root=/export/root/starlite -x swap=/export/swap/starlite -x swapsize=128 -x tz=US/Mountain -x locale=en_US # /usr/sadm/bin/smdiskless list -H starlite:898 -- Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from line2-v480:898 Login to line2-v480 as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from line2-v480:898 was successful. Platform -------------------------------------------------------------------------------- i386.i86pc.Solaris_10 sparc.sun4us.Solaris_10 sparc.sun4u.Solaris_10 i386.i86pc.Solaris_9 sparc.sun4m.Solaris_9 sparc.sun4u.Solaris_9 sparc.sun4us.Solaris_9 |
smdiskless list -H コマンド出力には SPARC と x86 の両方のシステムが表示されます。
この例では、サーバー bearclaus から Oracle Solaris 10 x86 の ディスクレスクライアント mars を追加する方法を示します。
# /usr/sadm/bin/smdiskless add -- -i 172.20.27.176 -e 00:07:E9:23:56:48 -n mars -x os=i386.i86pc.Solaris_10 -x root=/export/root/mars -x swap=/export/swap/mars -x swapsize=128 -x tz=US/Mountain -x locale=en_US |
Solaris 10 1/06 OS 以降をインストールした場合、または Solaris 10 1/06 OS 以降にアップグレードした場合は、ディスクレスクライアントのブート手順が変更されています。GRUB を使用してディスクレスクライアントをブートする場合は、次の手順で行います。
Solaris 10 6/06 リリース以降、フェイルセーフアーカイブを起動するときに、ブートアーカイブの自動更新を要求されることがなくなりました。ブートアーカイブの更新を要求されるのは、矛盾したブートアーカイブが検出された場合だけです。詳細は、「x86 システムをフェイルセーフモードでブートする方法」を参照してください。
システムをネットワークブートできるように、OS サーバーが次の要件を満たしていることを確認してください。
ディスクレスクライアントおよび OS サービスの追加に使用するネームサービスがサーバーの /etc/nsswitch.conf ファイルのプライマリ名に一致していることを確認します。
DHCP サービスと tftp ブートサービスが実行中であることを確認します。
ネットワークから起動するために、システム BIOS の PXE ROM オプションが有効になるように設定します。
PXE 対応ネットワークアダプタの中には、ブート時にしばらく表示されるプロンプトに対して特定のキーを押すと、PXE ブートを実行する機能を持つものがあります。ブートの優先順位を BIOS で設定する方法については、ハードウェアのマニュアルを参照してください。
適切なキーの組み合わせを入力して、ディスクレスクライアントをブートします。
GRUB メニューが表示されます。
ネットワークインストールサーバーの設定によっては、使用するシステムに表示される GRUB メニューがここで示した GRUB メニューと異なる可能性があります。
矢印キーを使ってブートエントリを選択して、Enter キーを押します。
選択しない場合は、数秒後にデフォルトの OS インスタンスが自動的にブートします。
ブート時に GRUB メニューを編集して GRUB カーネル動作を変更する必要がある場合には、矢印キーを使ってブートエントリを選択したあと、e と入力してそのエントリを編集します。
編集するブートコマンドが、GRUB 編集画面に表示されます。
ブート時にカーネルの動作を変更する方法については、第 11 章Oracle Solaris ブート動作の変更 (手順)を参照してください。
編集を保存して前のメニューに戻るには、Enter キーを押します。
GRUB メニューが開き、ブートコマンドに加えた編集が表示されます。
b キーを押して、ネットワークからシステムをブートします。
OS サーバーの次の必要条件を確認します。
ディスクレスクライアントおよび OS サービスの追加に使用するネームサービスがサーバーの /etc/nsswitch.conf ファイルのプライマリ名に一致していることを確認します。
一致しない場合は、ディスクレスクライアントがブートしません。
rpc.bootparamd デーモンが実行中かどうか確認します。実行中でない場合には起動します。
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
ディスクレスクライアントサポートを削除します。
# /usr/sadm/bin/smdiskless delete -- -o host-name :898 -n client-name |
ディスクレスクライアントサポートが削除されたことを確認します。
# /usr/sadm/bin/smosservice list -H host-name:898 -- |
この例では、OS サーバー starlite からディスクレスクライアント holoship を削除する方法を示します。
# /usr/sadm/bin/smdiskless delete -- -o starlite:898 -n holoship Authenticating as user: root Type /? for help, pressing enter accepts the default denoted by [ ] Please enter a string value for: password :: Starting SMC server version 2.0.0. endpoint created: :898 SMC server is ready. # /usr/sadm/bin/smosservice list -H starlite:898 -- Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from starlite Login to starlite as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from starlite was successful. |
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
# /usr/sadm/bin/smosservice delete -H $HOST:$PORT -u root -p $PASSWD -- -x instruction-set.all.Solaris_version |
machine-class は all のみがサポートされています。
OS サービスが削除されたことを確認します。
# /usr/sadm/bin/smosservice list -H host-name:898 -- |
次の例では、サーバー starlite からディスクレスクライアントの OS サービス (sparc.all.Solaris_10) を削除する方法を示します。
# /usr/sadm/bin/smosservice delete -H starlite:898 -u root \ -p xxxxxx -- -x sparc.all.solaris_10 Authenticating as user: root Type /? for help, pressing enter accepts the default denoted by [ ] Please enter a string value for: password :: # /usr/sadm/bin/smosservice list -H starlite:898 -- Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from starlite:898 Login to starlite as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from starlite:898 was successful |
smosservice patch コマンドを使って、次の操作を実行します。
OS サーバー上に /export/diskless/Patches パッチスプールディレクトリを設定します。
パッチスプールディレクトリにパッチを追加します。追加するパッチにより、スプールの既存のパッチが不要になると、不要なパッチは /export/diskless/Patches/Archive に移動されます。
パッチスプールディレクトリからパッチを削除します。
パッチスプールディレクトリ内のパッチをリスト表示します。
スプールされたパッチをクライアントに同期させます。クライアントが更新されたパッチを認識できるように、同期させた各クライアントをリブートする必要があることに留意してください。
推奨 OS パッチを定期的にインストールして、OS サーバーを最新の状態に保ってください。
パッチのダウンロード方法については、「パッチをダウンロードおよび適用する方法」を参照してください。
ディスクレスクライアントのパッチは、パッチのタイプに応じて、異なるディレクトリにロギングされます。
カーネルパッチは、ディスクレスクライアントの /var/sadm/patch ディレクトリにロギングされます。カーネルパッチを表示するには、ディスクレスクライアントで次のコマンドを入力します。
% patchadd –p |
このコマンドを実行するには、ディスクレスクライアントにログインしている必要があります。OS サーバー上で patchadd -p コマンドを実行すると、OS サーバー用のカーネルパッチだけが表示されます。
/usr パッチは、OS サーバーの /export/Solaris_version/var/patch ディレクトリにロギングされます。パッチ ID ごとにディレクトリが作成されます。/usr パッチを表示するには、OS サーバーで次のコマンドを入力します。
% patchadd -S Solaris_version -p Patch: 111879-01 Obsoletes: Requires: Incompatibles: Packages: SUNWwsr |
OS およびアーキテクチャーによりスプールされたすべてのパッチを表示するには、-P オプションを指定した smosservice コマンドを使用します。
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
ディスクレスクライアントシステムにログインし、シャットダウンします。
# init 0 |
パッチをスプールディレクトリに追加します。
# /usr/sadm/bin/smosservice patch -- -a /var/patches/ patch-ID-revision |
追加するパッチが別のパッチに依存する場合は、次のメッセージが表示され、パッチを追加できません。
The patch patch-ID-revision could not be added because it is dependent on other patches which have not yet been spooled. You must add all required patches to the spool first. |
パッチがスプールされたことを確認します。
# /usr/sadm/bin/smosservice patch -- -P |
スプールされたパッチをディスクレスクライアントにプッシュします。
# /usr/sadm/bin/smosservice patch -- -m -U |
パッチをディスクレスクライアントにプッシュおよび同期させるには、1 パッチあたり最大 90 分ほどかかることがあります。
パッチがディスクレスクライアントに適用されたことを確認します。
# /usr/sadm/bin/smosservice patch -- -P |
この例では、Solaris 8 パッチ (111879-01) をサーバーのディスクレスクライアントの OS サービスに追加する方法を示します。
# /usr/sadm/bin/smosservice patch -- -a /var/patches/111879-01 Authenticating as user: root Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password :: Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from starlite Login to starlite as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from starlite was successful.. . # /usr/sadm/bin/smosservice patch -- -P Patches In Spool Area Os Rel Arch Patch Id Synopsis ------------------------------------------------------------------------- 8 sparc 111879-01 SunOS 5.8: Solaris Product Registry patch SUNWwsr Patches Applied To OS Services Os Service Patch ------------------------------------------------------------------------- Solaris_8 Patches Applied To Clone Areas Clone Area Patch ------------------------------------------------------------------------- Solaris_8/sun4u Patches In Spool Area Os Rel Arch Patch Id Synopsis ---------------------------------------------------------------------------- 8 sparc 111879-01 SunOS 5.8: Solaris Product Registry patch SUNWwsr . . . # /usr/sadm/bin/smosservice patch -- -m -U Authenticating as user: root Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password :: Loading Tool: com.sun.admin.osservermgr.cli.OsServerMgrCli from starlite Login to starlite as user root was successful. Download of com.sun.admin.osservermgr.cli.OsServerMgrCli from starlite was successful. # /usr/sadm/bin/smosservice patch -- -P Authenticating as user: root . . . Patches In Spool Area Os Rel Arch Patch Id Synopsis ---------------------------------------------------------------------------- 8 sparc 111879-01 SunOS 5.8: Solaris Product Registry patch SUNWwsr Patches Applied To OS Services Os Service Patch ---------------------------------------------------------------------------- Solaris_8 Patches Applied To Clone Areas Clone Area Patch ---------------------------------------------------------------------------- Solaris_8/sun4u |
この節では、ディスクレスクライアントを管理するときに発生する問題と、それらに適用できる解決方法について説明します。
smosservice add コマンドを実行しても、ルート (/) および /usr ファイルシステム内の ARCH=all が指定されているパッケージは、いずれもインストールされません。つまり、これらのパッケージは読み飛ばされます。警告やエラーメッセージは表示されません。これらのパッケージは、新規に作成した Oracle Solaris OS サービスに手動で追加する必要があります。この作業は、Solaris 2.1 OS 以降で発生します。この作業は、SPARC および x86 の両方のクライアントに適用されます。失われるパッケージのリストは、稼働している Oracle Solaris リリースによって異なります。
ここでは、Oracle Solaris OS サービスをサーバー上に作成したあとに、失われた ARCH=all パッケージを検出してインストールする方法について説明します。この手順で取り上げる例は、Solaris 10 6/06 OS を対象としています。
ARCH=all パラメータが指定されたすべてのパッケージを検出します。
Oracle Solaris 10 イメージ用のメディアの Product ディレクトリに移動します。次に例を示します。
% cd /net/server/export/Solaris/s10u2/combined.s10s_u2wos/latest/Solaris_10/Product |
pkginfo ファイルにあるパッケージのうち、ARCH=all パラメータが指定されているパッケージの一覧を表示します。
% grep -w ARCH=all */pkginfo |
引数のリストが長すぎるというエラーメッセージが表示される場合は、次のコマンドを代わりに実行してリストを生成できます。
% find . -name pkginfo -exec grep -w ARCH=all {} /dev/null \; |
このコマンドは、結果の生成に少し時間がかかります。
出力は、次のようになります。
./SUNWjdmk-base/pkginfo:ARCH=all ./SUNWjhdev/pkginfo:ARCH=all ./SUNWjhrt/pkginfo:ARCH=all ./SUNWjhdem/pkginfo:ARCH=all ./SUNWjhdoc/pkginfo:ARCH=all ./SUNWmlibk/pkginfo:ARCH=all
このリストの情報を使用して、/usr ファイルシステムにインストールされているパッケージと、ルート (/) ファイルシステムにインストールされているパッケージを特定できます。
生成されたパッケージリストで、SUNW_PKGTYPE パラメータの値を確認します。
/usr ファイルシステムに属しているパッケージには、pkginfo ファイルで SUNW_PKGTYPE=usr が設定されています。ルート (/) ファイルシステムに属しているパッケージには、pkginfo ファイルで SUNW_PKGTYPE=root が設定されています。この出力では、すべてのパッケージが /usr ファイルシステムに属しています。
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
一時インストール管理ファイルを作成します。
ルート (/) ファイルシステムにインストールされているパッケージと、/usr ファイルシステムにインストールされているパッケージには、それぞれ個別にインストール管理ファイルを作成する必要があります。
/usr ファイルシステムにインストールされている ARCH=all パッケージのために、次の一時インストール管理ファイルを作成します。
# cat >/tmp/admin_usr <<EOF mail= instance=unique partial=nocheck runlevel=nocheck idepend=nocheck rdepend=nocheck space=nocheck setuid=nocheck conflict=nocheck action=nocheck basedir=/usr_sparc.all EOF # |
ルート (/) ファイルシステムにインストールされている ARCH=all パッケージのために (パッケージが存在する場合)、次の一時インストール管理ファイルを作成します。
# cat >/tmp/admin_root <<EOF mail= instance=unique partial=nocheck runlevel=nocheck idepend=nocheck rdepend=nocheck space=nocheck setuid=nocheck conflict=nocheck action=nocheck EOF # |
失われた ARCH=all パッケージをインストールします。
現在のディレクトリが Oracle Solaris 10 イメージ用のメディアの Product ディレクトリでない場合は、このディレクトリに移動します。次に例を示します。
# cd /net/server/export/Solaris/s10u2/combined.s10s_u2wos/latest/Solaris_10/Product |
pwd コマンドを実行して、現在のディレクトリを確認できます。
/usr ファイルシステム内の失われた ARCH=all パッケージをインストールします。
# pkgadd -R /export/Solaris_10 -a /tmp/admin_usr -d `pwd` [ package-A package-B ...] |
pkgadd コマンドを実行するときに、複数のパッケージを指定できます。
ARCH=all パッケージがインストールされたことを確認します。
# pkginfo -R /export/Solaris_10 [package-A package-B ...] |
ルート (/) ファイルシステム内の失われた ARCH=all パッケージをインストールします。
これらのパッケージが存在しないこともあります。
# pkgadd -R /export/root/clone/Solaris_10/sun4u -a /tmp/admin_root -d `pwd` [ package-X package-Y ...] |
ARCH=all パッケージがインストールされたことを確認します。
# pkginfo -R /export/root/clone/Solaris_10/sun4u [ package-X package- ...] |
失われた ARCH=all パッケージの追加が完了したら、一時インストール管理ファイルを削除します。
# rm /tmp/administration-file |
この例では、失われた ARCH=all パッケージ SUNWjdmk-base を /usr ファイルシステムにインストールする方法を示します。
% uname -a SunOS t1fac46 5.10 Generic_118833-02 sun4u sparc SUNW,UltraSPARC-IIi-cEngine % cat /etc/release Solaris 10 6/06 s10s_u2wos_03 SPARC Copyright 2006 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms. Assembled 06 February 2006 % cd /net/ventor/export/Solaris/s10u2/combined.s10s_u2wos/latest/Solaris_10/Product % grep -w ARCH=all */pkginfo Arguments too long % find . -name pkginfo -exec grep -w ARCH=all {} /dev/null \; ./SUNWjdmk-base/pkginfo:ARCH=all ./SUNWjhdev/pkginfo:ARCH=all ./SUNWjhrt/pkginfo:ARCH=all ./SUNWjhdem/pkginfo:ARCH=all ./SUNWjhdoc/pkginfo:ARCH=all ./SUNWmlibk/pkginfo:ARCH=all % grep -w SUNW_PKGTYPE=usr ./SUNWjdmk-base/pkginfo ./SUNWjhdev/pkginfo ... ./SUNWjdmk-base/pkginfo:SUNW_PKGTYPE=usr ./SUNWjhdev/pkginfo:SUNW_PKGTYPE=usr ./SUNWjhrt/pkginfo:SUNW_PKGTYPE=usr ./SUNWjhdem/pkginfo:SUNW_PKGTYPE=usr ./SUNWjhdoc/pkginfo:SUNW_PKGTYPE=usr % grep -w SUNW_PKGTYPE=root ./SUNWjdmk-base/pkginfo ./SUNWjhdev/pkginfo ... % su Password: xxxxxx # cat >/tmp/admin_usr <<EOFmail= instance=unique partial=nocheck runlevel=nocheck idepend=nochec> k rdepend=nocheck space=nocheck setuid=nocheck conflict=nocheck action=nocheck basedir=/usr_sparc.all EOF # pwd /net/ventor/export/Solaris/s10u2/combined.s10s_u2wos/latest/Solaris_10/Product # pkginfo -R /export/Solaris_10 SUNWjdmk-base ERROR: information for "SUNWjdmk-base" was not found # pkgadd -R /export/Solaris_10 -a /tmp/admin_usr -d `pwd` SUNWjdmk-base Processing package instance <SUNWjdmk-base> </net/ventor/export/Solaris/s10u2/combined.s10s_u2wos... Java DMK 5.1 minimal subset(all) 5.1,REV=34.20060120 Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Using </export/Solaris_10/usr_sparc.all> ## Processing package information. ## Processing system information. Installing Java DMK 5.1 minimal subset as <SUNWjdmk-base> ## Installing part 1 of 1. 2438 blocks Installation of <SUNWjdmk-base> was successful. # pkginfo -R /export/Solaris_10 SUNWjdmk-base application SUNWjdmk-base Java DMK 5.1 minimal subset # rm /tmp/admin_usr |
この節では、ディスクレスクライアントで発生する可能性がある一般的な問題とその解決策について説明します。
問題:/usr ファイルシステムが nobody によって所有されているときにログインを試みると、ディスクレスクライアントから Owner of the module /usr/lib/security/pam_unix_session.so.1 is not root というメッセージが出力される。
対処方法:この問題を修正するには、次の対処方法に従います。
テキストエディタを使用して、ディスクレスクライアントの server:/export/root/client/etc/default/nfs ファイルを変更します。
#NFSMAPID_DOMAIN=domain 行を次のように変更します。
NFSMAPID_DOMAIN=the_same_value_as_in_server's_/var/run/nfs4_domain |
OS サーバーとディスクレスクライアントが同じ nfsmapid ドメインを使用していることを確認します。この情報を確認するには、/var/run/nfs4_domain ファイルを調べます。
ディスクレスクライアントの nfs4_domain ファイル内の値が、OS サーバーの /var/run/nfs4_domain ファイル内の値と異なっている場合は、ディスクレスクライアントのブート後にシステムにログインすることができません。
ディスクレスクライアントをリブートします。
詳細は、『Oracle Solaris カーネルのチューンアップ・リファレンスマニュアル』の第 3 章「NFS チューニング可能パラメータ」および nfsmapid(1M) のマニュアルページを参照してください。
問題:OS サーバーが次の処理に失敗する。
クライアントの RARP (Reverse Address Resolution Protocol) 要求に対する応答
クライアントの bootparam 要求に対する応答
ディスクレスクライアントのルート (/) ファイルシステムのマウント
ファイル環境で次の解決法を適用できます。
OS サーバーの /etc/nsswitch.conf ファイルの hosts、ethers、および bootparams の最初の参照元として files が設定されていることを確認します。
クライアントの IP アドレスが /etc/inet/hosts ファイルに含まれていることを確認します。
Solaris 10 8/07 以降のリリースを実行していない場合、クライアントの IP アドレスが /etc/inet/ipnodes ファイルに含まれていることも確認する必要があります。
この Oracle Solaris リリースでは、/etc/inet/hosts ファイルが、IPv4 エントリと IPv6 エントリの両方を含む単一のファイルとなります。常に同期させる必要がある 2 つの hosts ファイルに、IPv4 エントリを保持する必要はありません。/etc/inet/ipnodes ファイルは、下位互換性のために、 /etc/inet/hosts ファイルへの同名のシンボリックリンクに置き換えられています。詳細は、hosts(4) のマニュアルページを参照してください。
クライアントのイーサネットアドレスが /etc/ethers ファイルに表示されていることを確認します。
/etc/bootparams ファイルにクライアントのルート (/) ディレクトリとスワップ空間への次のパスが含まれていることを確認します。
client root=os-server:/export/root/ client swap=os-server: /export/swap/client |
スワップのサイズは、ディスクレスクライアントの追加時に -x swapsize オプションを指定したかどうかによって異なります。ディスクレスクライアントの追加時に -x dump オプションを指定した場合は、次の行が表示されます。
dump=os-server:/export/dump/client dumpsize=512 |
ダンプサイズも、ディスクレスクライアントの追加時に -x dumpsize オプションを指定したかどうかによって異なります。
OS サーバーの IP アドレスが /export/root/client/etc/inet/hosts ファイルに設定されていることを確認します。
OS サーバーが次の処理に失敗する。
クライアントの RARP 要求に対する応答
クライアントの bootparam 要求に対する応答
ディスクレスクライアントのルート (/) ファイルシステムのマウント
ネームサービス環境で次の解決法を適用できます。
OS サーバーとクライアントのイーサネットアドレスおよび IP アドレスが正しくマップされていることを確認します。
/etc/bootparams ファイルにクライアントのルート (/) ディレクトリとスワップ空間へのパスが含まれていることを確認します。
client root=os-server:/export/ root/client swap=os-server:/export/ swap/client swapsize=24 |
スワップのサイズは、ディスクレスクライアントの追加時に -x swapsize オプションを指定したかどうかによって異なります。ディスクレスクライアントの追加時に -x dump オプションを指定した場合は、次の行が表示されます。
dump=os-server:/export/dump/ client dumpsize=24 |
ダンプサイズも、ディスクレスクライアントの追加時に -x dumpsize オプションを指定したかどうかによって異なります。
ディスクレスクライアントパニック
対処方法:次の内容を確認します。
OS サーバーのイーサネットアドレスが IP アドレスに正しくマップされていることを確認します。システムをあるネットワークから別のネットワークに物理的に移動した場合、システムの新しい IP アドレスを再マップするのを忘れている可能性があります。
クライアントの RARP、TFTP (Trivial File Transfer Protocol)、または bootparam 要求に応答する「同じサブネット」にある別のサーバーのデータベースに、クライアントのホスト名、IP アドレス、およびイーサネットアドレスが存在しないことを確認します。インストールサーバーから OS をインストールするために、しばしばテストシステムがセットアップされます。このような場合、インストールサーバーはクライアントの RARP または bootparam 要求に対して、正しくない IP アドレスを返します。この不正なアドレスにより、間違ったアーキテクチャーのブートプログラムをダウンロードしたり、クライアントのルート (/) ファイルシステムのマウントが失敗したりしている可能性があります。
ディスクレスクライアントの TFTP 要求にインストールサーバー (または以前の OS サーバー) が応答しないことを確認します。このサーバーは不正なブートプログラムを転送しています。ブートプログラムのアーキテクチャーが異なる場合は、クライアントがただちにパニックになります。ブートプログラムが非 OS サーバーから読み込まれた場合、クライアントはそのルートパーティションを非 OS サーバー上に確保し、/usr パーティションを OS サーバー上に確保することがあります。この状況では、ルートおよび /usr パーティションのアーキテクチャーまたはバージョンが競合する場合、クライアントがパニックに陥ります。
インストールサーバーと OS サーバーの両方を使用している場合は、/etc/dfs/dfstab ファイルに次のエントリがあることを確認してください。
share -F nfs -o -ro /export/exec/Solaris_version- \ instruction-set.all/usr |
ここで、version は 8、9、10 であり、instruction-set は sparc または i386 です。
ディスクレスクライアントのルート (/)、/swap、/dump (指定されている場合) の各パーティションに次の共有エントリがあることを確認します。
share -F nfs -o rw=client,root=client /export/root/client share -F nfs -o rw=client,root=client /export/swap/ client share -F nfs -o rw=client,root=client /export/dump/ client |
OS サーバーで次のコマンドを入力し、共有されているファイルを確認します。
% share |
OS サーバーでは、ディスクレスクライアントを追加したときに指定した /export/root/client および /export/swap/client_name (デフォルト)、またはルート、/swap、/dump の各パーティションを共有する必要があります。
次のエントリが /etc/dfs/dfstab ファイルにあることを確認します。
share -F nfs -o ro /export/exec/Solaris_version- instruction-set.all/usr share -F nfs -o rw=client,root=client /export/root/ client share -F nfs -o rw=client,root=client /export/swap/ client |
OS サーバーがディスクレスクライアントの RARP 要求に応答しない
対処方法:クライアントの目的の OS サーバーから、次のクライアントのイーサネットアドレスを使って snoop コマンドをスーパーユーザー (root) として実行します。
# snoop xx:xx:xx:xx:xx:xx |
ブートプログラムをダウンロードしたが、プロセスの初期にパニックが発生した
対処方法:snoop コマンドを使用して、対象の OS サーバーがクライアントの TFTP および NFS 要求に応答するかどうかを確認します。
問題:ディスクレスクライアントがハングアップする
対処方法:OS サーバーで次のデーモンを再起動します。
# /usr/sbin/rpc.bootparamd # /usr/sbin/in.rarpd -a |
ディスクレスクライアントの RARP 要求に対するサーバーの応答が不正である
対処方法:OS サーバーで次のデーモンを再起動します。
# /usr/sbin/rpc.bootparamd # svcadm enable network/rarp |