6. CO-Booter のカスタマイズ¶
6.1. カスタマイズ方法¶
CO-Booter.ini
をエディタで開き設定ファイルを変更することで、CO-Booter の挙動を細かく制御できます。シャットダウンをするためのメニューを表示したり、背景やメニューに用いる画像を変更することもできます。 CO-Booter.ini
には多数のコメントが記述されているので、その内容を参照しつつカスタマイズしてください。画面表示に必要とされる画像ファイルやLinux を起動するためのPXE Linux 起動ファイルなどをTFTP サーバ上に配置する必要がある場合もあります。
6.2. 設定ファイルの選択順位について¶
CO-Booter は起動時に設定ファイルを読み込みます。その設定ファイルの名称は通常は CO-Booter.ini
が用いられます。しかし、「一部の端末を通常と異なる設定で稼働させる」ために、異なる設定ファイルを用いるための機能があります。
CO-Booter.bin
は、次の順に設定ファイルを探索します。
CO-Booter.000C2926BD2B.ini
CO-Booter.000C29.ini
CO-Booter.ini
(注意) この例ではクライアントのMAC アドレスが 00:0C:29:26:BD:2B
であると仮定して説明しています。
CO-Booter.bin
を他のファイル名に変更してある場合でも、プレフィクスは必ず CO-Booter
となります。このプレフィクスを変更したい場合には、 CO-BooterConfig.exe
を利用して以下の要領で変更してください。
- Server フォルダにある
CO-BooterConfig.exe
を実行するCO-Booter.bin
のパスおよび プレフィクスを入力する- 生成されたブートローダファイルを
CO-Booter.bin
の代わりに利用する
6.3. 設定ファイルの項目の詳細な説明¶
6.3.1. 設定ファイルに関する全体的な注意事項¶
文字コードについて
設定ファイルに含まれる日本語文字列の文字コードは Shift-JIS で記述してください。
使用できる画像ファイルの形式
CO-Booter が表示できる画像は PNG 形式または Windows BMP 形式です。BMP の色数(深さ)としては、 8bit, 16bit, 24bit に対応しています。(Windows ペイントを利用する場合には、「256 色ビットマップ」ないしは「24 ビットビットマップ」を選択してください。)
ファイルパスの表記方法
本設定ファイル中ではファイルパスを指定する際に、以下のような表記を使用できます。 ( 各設定項目ごとに 255 文字以内 となる必要があります。)
CO-Booter と同じ TFTPサーバ上のファイルを使用する(TFTPサーバがフォルダ指定に対応しているのであれば、フォルダも含めることができます)
(例)Font = nihongo.fnt
CO-Booter と異なる TFTPサーバ上のファイルを使用する
(注意)BIOS によっては、他のサーバー上のファイルを利用できない場合があります。
複数の候補からランダムに1つのファイルを使用する
,
で区切ってください。ファイル名に空白やカンマを含むことはできません。(例)Font = nihongo.fnt, nihongo2.fnt, nihongo3.fnt
(※)ファイルパスの表記方法の例外
Menu セクションの Argument 及び、PVSMenu セクションのBootFile については、ファイルパスの長さは63 文字以内に制限されます。また、これらの項目は複数の候補を指定することもできません。
6.3.2. CO-Booter 全体に関する設定¶
項目名 | 説明 |
---|---|
FileAPI | ファイル取得方法を指定します。
通常は指定する必要はありませんが、ファイル取得などの動作に
不具合がある場合は、以下のいずれかを指定してください。
・TFTP: PXENV_TFTP_OPEN, PXENV_TFTP_READ, PXENV_TFTP_CLOSE
を利用
・UDP: PXENV_UDP_OPEN, PXENV_UDP_READ, PXENV_UDP_WRITE,
PXENV_UDP_CLOSE を利用
なお、INIファイルの読み込み及び、FileAPI行より前の行で指定
されたファイルの読み込みには、デフォルト値で指定されたAPI
が利用されます。
|
RTCLogicVersion | RTC取得方法を指定します。
通常は指定する必要はありませんが、タイムアウト機能などの
動作に不具合がある場合は、以下のいずれかを指定してください。
0: リアルモード割り込み利用、再試行無し [Ver 1.0.0 互換]
1: リアルモード割り込み利用、再試行有り
2: プロテクトモードI/Oポート利用、再試行無し
3: プロテクトモードI/Oポート利用、再試行有り
4: プロテクトモードI/Oポート利用、IC書き換え時間考慮、
再試行無し
5: プロテクトモードI/Oポート利用、IC書き換え時間考慮、
再試行有り
|
PowerManagement | 電源管理方法を指定します。通常は指定する必要はありませんが、
シャットダウンに失敗する場合は以下のいずれかを指定してください。
・APM: APM利用 [Ver 1.0.0-1.0.1互換,]
・ACPI: ACPI利用
なお、ACPIを利用する際には、ACPIサポート用補助ファイル
acpioff.0 等がTFTPサーバに置かれている必要があります。 |
License | ライセンスファイルをファイル名を指定します。
(通常は変更しないでください)
|
Font | フォントファイルを指定します。(通常は変更しないでください) |
PanicReboot | CO-Booter の動作において必須のファイルを読み込めないと
いった不具合が生じたときの挙動を指定します。
0: エラーメッセージを表示し、キー入力を待ち再起動する
1: 自動的に即座に再起動する(デフォルト値)
2: エラーメッセージを10秒間表示し、自動的に再起動する
|
Resolution | 画面解像度を指定します。
800,600 と 640,480 の2種のみに対応しています。この2つのいずれかを指定してください。
|
BackgroundColor | デフォルトの背景色(R,G,B)です。省略時は黒となります。
背景画像のサイズと画面解像度が一致する場合には、設定不要です。
|
Background | 背景画像ファイル名です。省略時は背景画像は表示されません。
同様の書式のオプション
Background2 Background3 Background4 を設定することで、最大4つの画像を表示することができます。
|
BackgroundPosition | 背景画像を表示する(x,y)座標です。省略時は(0,0)となります。 |
6.3.3. ステータスバーに関する設定¶
ステータスバーとは画面下部にある「文字によるメッセージ表示するための領域」です。 この領域には、各メニュー項目の Description の内容(文字)などが表示されます。
項目名 | 説明 |
---|---|
InfoPosition | ステータスバー領域の左上の点の(x,y)座標です。 |
InfoWxH | ステータスバー領域の大きさ(幅×高)です。 |
InfoFGColor | ステータスバー領域の前景色(R,G,B)です。メニュー表示時の画像
ファイルがない場合の文字列表示の際にも、ここでの色指定が用いられます。
|
InfoBGColor | ステータスバー領域の背景色(R,G,B)です。メニュー表示時の画像
ファイルがない場合の文字列表示の際にも、ここでの色指定が用いられます。
|
6.3.4. タイマーに関する設定¶
項目名 | 説明 |
---|---|
ShutdownTimer | 強制シャットダウンするまでの秒数です。
省略時はシャットダウンしません。
|
Timeout | デフォルト項目を自動起動するまでの秒数です.
省略時は自動起動しません。
|
Default | デフォルトで起動する項目を指定します。
先頭から順に 0 からカウントします。
|
TimeoutBitmap | タイムアウトまでの残り時間を表示するために用いる画像です。
この項目が省略された場合は、残り時間はステータスバーに文字で
表示されます。
【画像の形式について】
下図のように0,1,...,9,(空白)の11個の等幅画像を横に連結した PNG または BMP
ファイルを作成し、そのファイル名を指定してください。
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
|0|1│2│3│4│5│6│7│8│9│
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
この項目を指定する際には、作成したTimeoutBitmap ファイルをTFTP
サーバ上に必ず配置してください。ファイルがない時には異常終了
します。
|
TimeoutBitmapPosition | タイムアウトまでの残り時間を表示する座標です。 |
ForceDisplayMenu | PVSMenuを含めてメニュー項目数が1個の場合、Timeout指定の
値を無視して即座に起動を行うように指定(
0 を指定)することができます。メニュー項目数が2個以上存在する場合は
効力を持ちません。この項目自体を省略した時の値は1です。
|
6.3.5. メニュー表示に関する設定¶
CO-Booter が表示するメニューの表示位置やサイズを指定します。
項目名 | 説明 |
---|---|
MenuPosition | メニュー描画領域の左上の座標です。 |
EntryWxH | メニュー項目用画像表示領域の大きさ(幅×高)です。ここで指定した大きさは複数の
メニューを指定した場合の表示間隔となります。(現バージョンでは幅は無視
されます)
|
6.3.6. 管理者用特殊キーに関する設定¶
項目名 | 説明 |
---|---|
EnableDisplayMessages | F1 キーを有効にするかどうかを設定します。F1 キーを押すとバージョン情報やデバッグ情報を表示します。デフォルト値は0 (無効にする)です。
|
PasswordDisplayMessages | F1 キーを有効にするためのパスワードを設定します。省略した場合は、パスワードの入力は求められません。
英数字のみ指定可能です。大文字小文字は区別されません。
|
EnableSetNTSignature | S キーを有効にするかどうかを設定します。S キーは、MBR に含まれるNTシグニチャ情報を表示(変更)します。デフォルト値は0 (無効にする)です。
|
PasswordSetNTSignature | S キーを有効にするためのパスワードを設定します。英数字のみ指定可能です。大文字小文字は区別されません。
省略した場合は、パスワードの入力は求められません。
|
NTSignature | 変更後のシグニチャの値を指定します。値には以下のような
2つの書式を利用することができます。
・0x1234ABCD
・0xCD, 0xAB, 0x34, 0x12
指定がない場合は、NTシグニチャは変更されません。
|
EnableDisplayMBR | M キーを有効にするかどうかを設定します。M キーが押されるとMBRの内容を表示します。表示されるパーティションのサイズは1セクタ=512Byte、
1MB=1024*1024BとしてLBA方式で算出されます。
デフォルト値は0 (無効にする)です。
|
PasswordDisplayMBR | M キーを有効にするためのパスワードを設定します。英数字のみ指定可能です。大文字小文字は区別されません。
省略した場合は、パスワードの入力は求められません。
|
6.3.7. 管理者用特殊キーに関する設定(外部ツールに関するもの)¶
項目名 | 説明 |
---|---|
EnableReleaseReadCache | R キーを有効にするかどうかを設定します。R キーが押されると ReadCache のキャッシュ領域を消去します。第1ハードディスクにReadCacheのCache用パーティションがある
場合には、その領域を解放します。
デフォルト値は
0 (無効にする)です。 |
PasswordReleaseReadCache | R キーを有効にするためのパスワードを設定します。英数字のみ指定可能です。大文字小文字は区別されません。
省略した場合は、パスワードの入力は求められません。
|
EnablePVSregister | P キーを有効にするかどうかを設定します。P キーが押されるとPVSregisterを実行します。デフォルト値は
0 (無効にする)です。 |
PasswordPVSregister | P キーを有効にするためのパスワードを設定します。英数字のみ指定可能です。大文字小文字は区別されません。
省略した場合は、パスワードの入力は求められません。
|
PVSregisterPath | PVSregister の実行ファイルのファイル名を指定します。
デフォルトでは
PVSREGloader.0 となります。 |
6.3.8. PVSオプション利用時の通信に関する詳細設定セクション(オプション)¶
項目名 | 説明 |
---|---|
PVSMenuSelectionReportPolicy | PVSオプション利用時に、
ARDBP32.BIN に書きこまれているCO-BooterServerのうち、応答しないものを発見した場合の
措置を指定します。通常は指定する必要はありませんが、
停止したサーバのIPアドレス:ポートを
ARDBP32.BIN に書きこまれている場合は、以下のいずれかを指定してください。
Wait: 応答しないサーバを発見するたびに警告を表示し、
ユーザのキー入力を待つ。
[Ver 1.0.0-1.0.1互換,デフォルト値]
Warn: 応答しないサーバを発見するたびに警告を表示し、
PVSMenuWaitSecond 秒待つ。
Ignore: 応答しないサーバを発見しても警告を表示しない。
|
PVSMenuRequestCount | PVSオプション利用時に、CO-BooterServerへリクエストを
送信する最大の回数を指定します。通常は指定する必要は
ありません。デフォルト値は
2 (回)です。 |
PVSMenuReceiveCount | PVSオプション利用時に、CO-BooterServerへの1回のリクエスト
につき、応答受信を試みる最大の回数を指定します。通常は指定
する必要はありません。デフォルト値は
3 (回)です。 |
PVSMenuRequestInterval | PVSオプション利用時に、CO-BooterServerへリクエストを
送信する間隔を指定します。通常は指定する必要はありません。
デフォルト値は
0.2 (秒)です。この項目の値は小数点以下6桁まで記述することができます。
|
PVSMenuReceiveInterval | PVSオプション利用時に、CO-BooterServerへの1回のリクエスト
につき、応答受信を試みる間隔を指定します。通常は指定する
必要はありません。デフォルト値は
0.1 (秒)です。この項目の値は小数点以下6桁まで記述することができます。
|
PVSMenuWarnSeconds | PVSMenuSelectionReportPolicy = Warn時に、警告を表示して
一時停止する時間を指定します。通常は指定する必要は
ありません。デフォルト値は
3 (秒)です。 |
6.3.9. サイクリック乱択の調整セクション(オプション)¶
PVS メニュー取得時などに行う「サイクリック乱択」を試行する最大回数と間隔を指定します。
項目名 | 説明 |
---|---|
CyclicLoopCount | 通常は指定する必要はありません。デフォルト値は 3 (回)です。 |
CyclicLoopInterval | 通常は指定する必要はありません。デフォルト値は
1.0 (秒)です。この項目の値は小数点以下6桁まで記述することができます。
|
例えば CyclicLoopCount = 3, CyclicLoopInterval = 1.0
のとき、メニュー取得は(最悪のケースで)以下のように順次試行されます。最初に接続するサーバ( 例では2)は乱択されます。
( サーバー2 へ接続)→ ( サーバー3 へ)→(サーバ4 へ)→(サーバ1 へ)
↓
1.0 秒スリープ
↓
(サーバー2 へ)→(サーバー3 へ)→(サーバ4 へ)→(サーバ1 へ)
↓
1.0 秒スリープ
↓
(サーバー2 へ)→(サーバー3 へ)→(サーバ4 へ)→(サーバー1 へ)
6.3.11. ブートメニューに関する設定¶
画面に表示するメニューの項目を設定します。各項目には、以下の項目を指定できます。
項目名 | 説明 |
---|---|
Type | PXE , MBR , Disk , LoadConfig , Reboot , Shutdown , ReleaseReadCache のいずれかを指定し、各項目の動作を選択します。
|
ActiveImage | 選択中のメニュー項目用の画像を指定します。
複数のメニュー項目が指定されたときには EntryWxH の間隔で並べられますが、
ここで指定する画像のサイズは EntryWxH で指定した大きさと必ずしも同一で
ある必要はありません。(一般には EntryWxH のサイズよりも小さく、
横に細長い画像を指定することになるとおもわれます。)
画像の指定がない場合や、指定された画像がない場合には、
「メニュー項目の内容」を示す文字列が表示されます。
|
InactiveImage | 選択されていない時のメニュー項目用の画像です。
画像サイズに対する制約は ActiveImageの項目と同じです。
|
Description | メニュー項目を複数列挙するときには、Order値が高いものから順に上から
並べられます。この項目が指定されていないときの Order値 は
1000 となります。Order値が同じ項目が複数あるときには、本設定ファイルに
おいて先に記述されたものが上から並びます。
|
Order | 各メニュー項目の説明文を指定することができます。
指定した項目は「ステータスバー」の領域に表示されます.
|
Type が
PXE
の場合には、以下のように指定された引数のブートローダに対してチェインブートします。ただし、ここでIP アドレスを指定することでCO-Booter はどのサーバからブートローダを読み込むこともできますが、読み込まれたブートローダがさらに他のファイル群を読み込む際には、最初にCO-Booter.bin が読み込まれた際のサーバーから読みこもうとします。そのため、チェインブートしようとするOS によっては、IP アドレスを指定しても意味を持たない可能性があります。(Linux を起動する際に pxelinux.0 が pxelinux.cfg/default を読みこもうとする処理がこの制限にひっかかります。)Argument = tftp://192.168.95.103/PXELINUX.0
Type が
MBR
の場合には、1台目のハードディスクからMBR を読み込み、端末を起動しようとします。Type が
Disk
の場合には、指定した Drive の 指定したパーティションから PBR方式で起動します。Drive = 0 Partition = 2
現バージョンでは、[Drive]としては
0
以外を指定できません。
[Partition] には、 0
から 3
の値を指定します。このパラメータが省略された時には、第1 パーティションから順に起動可能かを確認し、最初に見つけた起動可能パーティションより起動します。(起動可能パーティションが1つも見つからなければ、メニュー選択後にエラーとなり停止します。)
- Type が LoadConfig
の場合には、指定された CO-Booter の設定ファイルを再読み込みします。
Argument = AnotherConfig.ini
Type が
Reboot
の場合には、端末を再起動します。再起動にあたってはデフォルトでは ACPI の機能を用います。
Type が
Shutdown
の場合には、端末の電源を切断します。Type が
ReleaseReadCache
の場合には、端末内のReadCache パーティション領域をリリースします。ただし、ReadCache4.5 以降を利用している場合には、キャッシュパーティションを一旦削除してしまうと再起動した際に再生成されませんので、この機能は利用しないで下さい。