Solaris インストールプログラムでは、システムをインストールする前に、システムの構成情報 (たとえば、システムの周辺機器、ホスト名、IP アドレス、ネームサービスなど) が必要です。インストールプログラムは、ユーザーに対して情報の入力を要求する前に、この情報が sysidcfg ファイルまたはネームサービスデータベースにあるか (この順番で) 探します。
この章では、システムのインストール時に毎回この情報を入力しなくてすむように、事前に sysidcfg ファイルまたはネームサービスデータベースに情報を設定しておく方法を説明します。たとえば、多数のシステムがあり、それらをインストールするたびにタイムゾーンの入力要求に答えたくない場合は、このタイムゾーンを事前設定しておいて、各インストール時に自動的に設定できます。システム構成情報の事前設定は、カスタム JumpStart インストールを自動化するための最も重要な手順の 1 つです。
システム構成情報を事前設定するには 2 つの方法があります。情報は次のところに設定できます。
sysidcfg ファイル (リモートシステム上またはフロッピーディスク)
自分のサイトで使用できるネームサービス
表 6-1 を使って、システム構成情報を事前設定するための方法を決定してください。
表 6-1 システム構成情報を事前設定するための方法
事前設定の対象 |
プラットフォーム |
sysidcfg ファイルでの事前設定の可否 | |
---|---|---|---|
ネームサービス ドメイン名 ネームサーバー |
SPARC/x86 SPARC/x86 SPARC/x86 |
可能 可能 可能 |
可能 不可 不可 |
ネットワークインタフェース ホスト名 IP アドレス ネットマスク |
SPARC/x86
SPARC/x86 SPARC/x86 SPARC/x86 |
可能
可能 [この情報はシステムに固有なため、各システム用に異なる sysidcfg ファイルを作成するよりも、ネームサーバーを編集してください。] 可能 1 可能 |
不可
可能 [ Solstice AdminSuiteTM ホストマネージャを使用してクライアントを追加した場合、この情報は自動的に事前構成されます。] 可能 2 不可 |
root パスワード |
SPARC/x86 |
可能 |
不可 |
インストールプログラムとデスクトップで表示する言語 (ロケール) |
SPARC/x86 |
可能 |
可能 |
端末タイプ |
SPARC/x86 |
可能 |
不可 |
時間帯 |
SPARC/x86 |
可能 |
可能 2 |
日付と時刻 |
SPARC/x86 |
可能 |
可能 |
モニタータイプ |
x86 |
可能 |
不可 |
キーボード言語、キーボード配置 |
x86 |
可能 |
不可 |
グラフィックスカード、カラー深度、表示解像度、画面サイズ |
x86 |
可能 |
不可 |
ポインティングデバイス、ボタン数、IRQ レベル |
x86 |
可能 |
不可 |
電源管理システム [このシステム構成情報は、sysidcfg ファイルまたはネームサービスでは事前構成できません。詳細は、「電源管理情報の事前設定」を参照してください。] (Power ManagementTM) |
SPARC |
不可 |
不可 |
sysidcfg ファイルは、事前設定したい各情報を指定する一連のキーワードによって情報を事前設定します。これらのキーワードについては、表 6-2 で説明します。複数のキーワードを指定して情報を好きなだけ事前設定できます。
sysidcfg ファイルは、構成情報の異なるシステムごとに用意する必要があります。たとえば、すべてのシステムに同じタイムゾーンを設定したい場合は、同じ sysidcfg ファイルを使用できますが、各システムごとに異なるルートパスワードを事前設定したい場合は、各システムごとに sysidcfg ファイルを用意する必要があります。
sysidcfg ファイルは、共用 NFS ネットワークディレクトリまたはシステムのフロッピーディスクドライブの UFS または PCFS フロッピーディスクのルートディレクトリに置くことができます。sysidcfg ファイルを共用 NFS ネットワークディレクトリに置いた場合は、インストール対象のシステムに対して sysidcfg ファイルの格納場所を指定するために、(ネットワーク上でシステムにインストールするときは) add_install_client コマンドの -p オプションを使う必要があります。
sysidcfg ファイルをフロッピーディスクに置いた場合は、システムがブートするときにそのフロッピーディスクがシステムのフロッピーディスクドライブにある必要があります (x86 搭載システムでは、sysidcfg ファイルは Solaris Device Configuration Assistant (デバイス構成用補助) フロッピーディスクに入れてください) 。また、プロファイルフロッピーディスクを使用する場合、sysidcfg ファイルはプロファイルフロッピーディスクに入れてください。
ディレクトリまたはフロッピーディスクに入れることのできるのは 1 つの sysidcfg ファイルだけです。複数の sysidcfg ファイルを作成した場合は、それぞれのファイルを別のディレクトリまたはフロッピーディスクに格納してください。
構文規則 |
例 |
---|---|
キーワードは任意の順序で指定可能 |
pointer=MS-S display=ati {size=15-inch} |
キーワードは大文字と小文字のどちらでもよい |
TIMEZONE=US/Central terminal=PC Console |
値は単一引用符 (') または二重引用符 (") で囲んで指定可能 |
network_interface='none' |
キーワードは 1 回だけ指定可能。キーワードを複数回指定した場合は最初のキーワードだけが有効 |
network_interface=none network_interface=le0 |
一連の SPARC 搭載システムのための sysidcfg ファイルの例を次に示します。(これらのシステムのホスト名、IP アドレス、ネットマスクは、ネームサービスを編集することにより、すでに事前設定されています。) すべてのシステム構成情報が事前設定されているので、カスタム JumpStart プロファイルを使って自動インストールが実行できます。
system_locale=en_US timezone=US/Central terminal=sun-cmd timeserver=localhost name_service=NIS {domain_name=marquee.central.sun.com name_server=connor(129.152.112.3)} root_password=m4QPOWNY |
一連の x86 搭載システムで、キーボード、グラフィックスカード、ポインティングデバイスがすべて同じ場合の sysidcfg ファイルの例を次に示します。これらのデバイス情報 (keyboard、display、および pointer) は、kdmconfig -d コマンドを実行して取得したものです。この例では、Solaris インストールプログラムで使用される言語 (system_locale) を選択するプロンプトが表示されます。
keyboard=ATKBD {layout=US-English} display=ati {size=15-inch} pointer=MS-S timezone=US/Central timeserver=connor terminal=AT386 name_service=NIS {domain_name=marquee.central.sun.com name_server=connor(129.152.112.3)} root_password=URFUni9 |
エディタを使ってファイルを開きます (ファイル名は sysidcfg でなければなりません)。
複数の sysidcfg ファイルを作成する場合は、それぞれのファイルを別のディレクトリまたはフロッピーディスクに格納しなければなりません。
事前設定したいシステム構成情報のための sysidcfg キーワード (表 6-2 を参照) を入力します。
表 6-2 sysidcfg キーワード
構成情報 |
プラットフォーム |
キーワード |
値または例の書かれている場所 |
---|---|---|---|
ネームサービス、ドメイン名、ネームサーバー |
SPARC/x86 |
name_service=NIS, NIS+, OTHER, NONE {domain_name=domain_name name_server=hostname(ip_address)} |
name_service=NIS {domain_name=chandy.West.Arp.COM name_server=timber(129.221.2.1)} 注 - name_service 用に 1 つの値だけを選択します。必要に応じて、domain_name と name_server キーワードのどちらか 1 つまたは両方を含めるか、あるいはどちらも含めません。どちらのキーワードも使用しない場合、中括弧 { } は省略します。 |
ネットワークインタフェース、ホスト名、IP アドレス、ネットマスク |
SPARC/x86 |
network_interface=NONE, PRIMARY, value {hostname=host_name ip_address=ip_address netmask=netmask} |
network_interface=le0 {hostname=feron ip_address=129.222.2.1 netmask=255.255.0.0} 注 - network_interface 用に 1 つの値だけを選択します。必要に応じて、hostname、ip_address、netmask キーワードのどれかを組み合わせて含めるか、あるいはどれも含めません。どのキーワードも使用しない場合、中括弧 { } は省略します。 |
root パスワード |
SPARC/x86 |
root_password=root_password |
/etc/shadow にある暗号化された文字列 |
インストールプログラムとデスクトップで表示する言語 |
SPARC/x86 |
system_locale=locale |
有効なロケール値が、/usr/lib/locale ディレクトリまたは付録 E 「言語とロケールの値」 にある |
端末タイプ |
SPARC/x86 |
terminal=terminal_type |
有効な端末値が /usr/share/lib/terminfo ディレクトリのサブディレクトリにある |
時間帯 |
SPARC/x86 |
timezone=timezone |
有効な時間帯値が /usr/share/lib/zoneinfo ディレクトリのサブディレクトリとファイルにある。時間帯値は /usr/share/lib/zoneinfo ディレクトリからの相対パス名です。たとえば、日本の時間帯値は Japan です。 |
日付と時刻 |
SPARC/x86 |
timeserver=localhost, hostname, ip_address |
タイムサーバーとして localhost を指定した場合は、そのシステムの時刻が正しいものと見なされます。あるシステムの hostname または ip_address を指定した場合 (ネームサービスを実行していない場合) は、そのシステムの時刻を使って時刻が設定されます。 |
モニタータイプ |
x86 |
monitor=monitor_type |
kdmconfig -d filename を実行すると、その出力が sysidcfg ファイルに追加されます。 |
キーボード言語、キーボード配置 |
x86 |
keyboard=keyboard_language {layout=value} |
kdmconfig -d filename を実行すると、その出力が sysidcfg ファイルに追加されます。 |
グラフィックスカード、カラー深度、表示解像度、画面サイズ |
x86 |
display=graphics_card {size=screen_size depth=color_depth resolution=screen_resolution} |
kdmconfig -d filename を実行すると、その出力が sysidcfg ファイルに追加されます。 |
ポインティングデバイス、ボタン数、IRQ レベル |
x86 |
pointer=pointing_device {nbuttons=number_buttons irq=value} |
kdmconfig -d filename を実行すると、その出力が sysidcfg ファイルに追加されます。 |
sysidcfg ファイルを保存します。
次のディレクトリから sysidcfg ファイルがクライアントに対して使用できるようにします。
共用 NFS ネットワークディレクトリ (add_install_client コマンドの -p オプションで指定したパス名)
PCFS または UFS フロッピーディスクのルートディレクトリ
SPARC 搭載システムの場合は、ネームサービス (NIS または NIS+) を編集してシステム構成情報を事前設定することをお勧めします。次の表に、設定する内容の概要を示します。
設定項目 |
編集または生成する必要があるネームサービスデータベース |
---|---|
ホスト名と IP アドレス |
hosts |
日付と時刻 |
hosts (インストール対象のシステムに日付と時刻を提供するシステムのホスト名で timehost というホストの別名を持つマシンを使用) |
時間帯 |
timezone |
ネットマスク |
netmasks |
システムのロケールを事前設定する手順は、ネームサービスごとに異なります。「NIS を使ってロケールを事前設定する方法」または 「NIS+ を使ってロケールを事前設定する方法」を参照してください。
ネームサーバー上でスーパーユーザーになって、/var/yp/Makefile ファイルを編集します。
その他の *.time エントリの後に次のテキストを追加します。
locale.time: $(DIR)/locale -@if [ -f $(DIR)/locale ]; then ¥ sed -e "/^#/d" -e s/#.*$$// $(DIR)/locale ¥ | awk '{for (i = 2; i<=NF; i++) print $$i, $$0}' ¥ | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/locale.byname; ¥ touch locale.time; ¥ echo "updated locale"; ¥ if [ ! $(NOPUSH) ]; then ¥ $(YPPUSH) locale.byname; ¥ echo "pushed locale"; ¥ else ¥ : ; ¥ fi ¥ else ¥ echo "couldn't find $(DIR)/locale"; ¥ fi |
all で始まる行に locale を追加し、新しい行に locale: locale.time を追加します。
all: passwd group host ethers networks rpc services protocols netgroup bootparams aliases ¥ timezone locale locale: locale.time |
/etc/locale というファイルを作成し、ドメインごとまたは特定のシステムに対して1つのエントリを作成します。
locale domain_name |
または
locale system_name |
たとえば次の行は、worknet.com ドメインに対してデフォルト言語として日本語を指定しています。
ja worknet.com |
たとえば次の行は、sherlock というシステムに対してデフォルトロケールとして日本語を指定しています。
ja sherlock |
詳細は、付録 E 「言語とロケールの値」 のロケールの有効な値を参照してください。
すべての Solaris CD で、すべてのロケールが使用できるわけではありません。選択したロケールが Solaris CD にある場合は、インストールで使用されます。
# cd /var/yp; make |
これでドメインまたは locale マップで個別に指定したシステムは、デフォルトはロケールを使用するように設定されました。ここで指定したデフォルトのロケールは、インストール時に使用されるとともに、システムのリブート後のデスクトップでも使用されます。
この手順は、NIS+ ドメインが設定されていると仮定しています。NIS+ ドメインの設定方法は、『Solaris ネーミングの管理』で説明しています。
ネームサーバーに、スーパーユーザーまたは NIS+ admin グループのユーザーとしてログインします。
次の nistbladm コマンドを使って、locale テーブルを作成します。
# nistbladm -D access=og=rmcd,nw=r -c locale_tbl name=SI,nogw= locale=,nogw= comment=,nogw= locale.org_dir.`nisdefaults -d` |
次の nistbladm コマンドを入力して locale テーブルにエントリを追加します。
# nistbladm -a name=domain_name locale=locale comment=comment locale.org_dir.`nisdefaults -d` |
domain_name |
ドメイン名または特定のシステム名。これはデフォルトロケールを事前設定する対象となる |
locale |
システムにインストールし、システムのリブート後にデスクトップ表示で使用するロケール。使用できるロケール値のリストについては、付録 E 「言語とロケールの値」 を参照 |
comment |
コメントフィールド。複数の単語を使ったコメントは、前後を二重引用符で囲むこと |
すべての Solaris CD で、すべてのロケールが使用できるわけではありません。選択したロケールが Solaris CD にある場合は、インストールで使用されます。
これでドメインまたは locale テーブルで個別に指定したシステムは、デフォルトはロケールを使用するように設定されました。ここで指定したデフォルトのロケールは、インストール時に使用されるとともに、システムのリブート後のデスクトップでも使用されます。
Solaris の電源管理ソフトウェアを使用すると、システムが 30 分間アイドル状態になると自動的にシステム状態を保存し電源を切ることができます。sun4u プラットフォームグループの SPARC 搭載システム (および EPA の省電力 (Energy Star) ガイドラインのバージョン 2 に準拠したすべてのシステム) に Solaris ソフトウェアをインストールするときは、デフォルトで電源管理ソフトウェアもインストールされ、次回のリブート時に、この電源管理ソフトウェアを有効または無効にするかを尋ねられます。
対話式インストールを実行している場合は、電源管理情報を事前設定してプロンプトを回避する方法はありません。カスタム JumpStart インストールでは、finish スクリプトを使ってシステムに /autoshutdown または /noautoshutdown ファイルを作成して、電源管理情報を事前設定できます。システムのリブート時に、/autoshutdown は電源管理ソフトウェアを有効にし、/noautoshutdown ファイルは電源管理ソフトウェアを無効にします。
たとえば、finish スクリプトに次の行を入れておくと電源管理ソフトウェアが有効になり、システムリブート後のプロンプトを回避できます。
touch /a/autoshutdown |
finish スクリプトの詳細は、「finish スクリプトの作成」を参照してください。