総合手引 | セクション 8 | English | オプション |
コールドスタート。 大多数の i386 PC は、まずフロッピドライブ 0 (ドライブ A: ともいう) からのブートを試み、 それに失敗すると、 ハードディスクドライブ 0 (ドライブ C: もしくは BIOS のドライブ 0x80 ともいう) からブートしようとします。 いくつかの BIOS では、このデフォルトの順序を変えたり、 CD-ROM デバイスをブートデバイスとして含めることができます。
デフォルトでは 3 段階のブートストラップが使用され、 ブートブロック (ブートストラップの 第 1 および 第 2 段階) から、 これとは別の第 3 段階のブートストラッププログラム loader(8) へと自動的に制御が移行されます。 この第 3 段階では、 ブート処理において、 ブートブロックにおいて可能なことよりも洗練された制御を提供します。 ブートブロックには、 ディスクやスライスの限られた空間しか与えられないという制約があります。
しかしながら、第 3 段階をまったく使用せずに済ますこともできます。
このようにするには、ブートブロックパラメータファイル
/boot.config
においてカーネル名を指定するか、
/boot.config は ‘a’ パーティションからだけ読み取れることに注意して下さい。 結果として、 ‘a’ パーティションのないスライスでは、ブートの過程でユーザが介入する必要があります。
本サブセクションの残りの部分では、ブートブロックについてのみ扱います。 loader(8) プログラムの文書は別にあります。
ブートブロックがロードされたあとで、次のようなプロンプトが現れます。
>> FreeBSD/i386 BOOT Default: 0:ad(0,a)/boot/loader boot:
自動ブートにおいては、フロッピ もしくはハードディスクのパーティション ‘a’ から /boot/loader をロードしようとします。 この動作は ‘boot:’ というプロンプトが出ている間なら、キーボードから適当な文字を 入力することで中断できます。 以下にあげるような入力はブート動作に対する指示として受付けられます。
amp;? |
ブートファイルを探す際のヒントとして、デフォルトのブートデバイスの
ルートディレクトリにあるファイルの名前を表示します。
(パスの最後の部分に
?amp;
を指定することもできます。この場合、任意のサブディレクトリの一覧となります。)
|
bios_drive : interface ( unit , [slice , ]part)filename
[ | |
bios_drive | |
BIOS によって認識されるドライブ番号です。 1 つ目のドライブに対しては 0、 2 つ目のドライブに対しては 1、などです。 | |
interface | |
そこからブートするコントローラのタイプです。
ブートファイルのイメージをロードするのには BIOS の機能を使用するので、
そのコントローラに対する BIOS サポートが必要となることに注意して下さい。
サポートされているインタフェースを以下にあげます。
| |
ad | WD100[2367] とその互換コントローラ上の ST506, IDE, ESDI, RLL ディスク |
fd | 5 1/4" または 3 1/2" 高密度 フロッピ |
da | サポートされている SCSI コントローラ上の SCSI ディスク |
unit | 使用されているインタフェース上のドライブのユニット番号です。 1 つ 目のドライブに対しては 0、 2 つ目のドライブに対しては 1、などです。 |
[slice , ]part | |
ディスク上の BSD 部分内のパーティション文字です。 詳しくは bsdlabel(8) を参照して下さい。 慣例として、パーティション ‘a’ のみがブート可能なイメージを含んでいます。 ディスクにスライス ("fdisk パーティション") が設けられていた場合、任意の slice (1 が最初のスライスで 2 が 2 番目のスライス等となります) からブート可能であり、デフォルト (無指定時) はアクティブスライスから、 これがない場合は最初の FreeBSD スライスからのブートとなります。 指定された slice が 0 の場合、最初の FreeBSD スライス "( 互換" スライスとも呼ばれます) からブートします。 | |
filename | |
ブートファイルの (指定されたパーティションのルートディレクトリからの 相対) パス名です。 デフォルトでは /kernel となります。シンボリックリンクはサポートされていません (ハードリンク は使用できます)。 | |
| |
ブートフラグです。
| |
| |
カーネル初期化中に、ルートファイルシステムとしてマウントされるデバイスを 尋ねて来るようにします。 | |
| |
CDROM からブートします。 | |
| |
ロードしたカーネルに対し、ハードウェアのパラメータを変更するため、 UserConfig を実行します。 USERCONFIG, INTRO_USERCONFIG, VISUAL_USERCONFIG のいずれかのオプション付きでカーネルが構築された場合、 スクリプト中に quit コマンドがあったとしても、UserConfig 中にとどまります。 | |
| |
シングルとデュアルのコンソール設定を切り替えます。
シングル設定では、下記の
| |
| |
カーネルの初期化のできる限り早い段階で DDB カーネルデバッガ (ddb(4) を参照) に入ります。 | |
| |
GDB リモートデバッギングプロトコルを使用します。 | |
| |
内部コンソールとシリアルコンソールの切り替えを行います。
これを使用してコンソールデバイスを変更できます。
例えば、内部コンソールからブートした場合、
カーネルがコンソールデバイスとしてシリアルポートを使用するようにするため、
| |
| |
コンソールを黙らせます。 | |
| |
loader(8) 起動前の、 キー入力によるブート中断を無視します。 | |
| |
キーボードを検出します。
キーボードが発見できなかった場合には、
| |
| |
デバイスの検出フェーズにおいて、各デバイスがアタッチされるたびに停止します。 | |
| |
ルートファイルシステムを含むデバイスとしてスタティックに config され たデフォルトを使用します (config(8) を参照)。 | |
| |
シングルユーザ・モードで立上がるようになります。コンソールが "insecure" (ttys(5) を参照) に設定されていた場合には、root のパスワードを入力しなければなり ません。 | |
| |
デバイス検出の際 (そしてその後も)、詳細を出力します。 | |
デフォルトを設定するため、BIOS ドライブ番号, コントローラタイプ, ユニット番号, パーティション, カーネルファイル名と 有効なオプションを /boot.config に書くこともできます。 ‘boot:’ プロンプトでタイプするように、 1 行で書いてください。
/boot.config | ブートブロックに対するパラメータ (必須ではない) |
/boot/boot1 | 第 1 段階のブートストラップ |
/boot/boot2 | 第 2 段階のブートストラップ |
/boot/loader | |
第 3 段階のブートストラップ | |
/boot/kernel/kernel | |
デフォルトカーネル | |
/boot/kernel.old/kernel | |
普通は非デフォルトカーネル (必須ではない) | |
0x1 | 不正な引数 |
0x2 | アドレスマークが見付かりません |
0x4 | セクタが見付かりません |
0x8 | DMA オーバラン |
0x9 | 64K 境界を越えて DMA を試みました |
0xc | 不正なメディア |
0x10 | 訂正できない CRC/ECC エラー |
0x20 | コントローラの異常 |
0x40 | シークの失敗 |
0x80 | タイムアウト |
注: 古いマシンや EDD サポート (ディスクパケットインタフェースサポート) が無い マシンでは、 ブートフェーズにアクセスされるブート関連の全ファイルと構造 (カーネルを含みます) は、ディスク上で (BIOS が理解するジオメトリにおいて) シリンダ 1023 以下に置かれることが必要です。 第 2 段階のブートストラップが "Disk error 0x1" を報告する場合、通常はこの条件が満されていないことを意味します。
空間の制約により、
BOOT (8) | September 23, 2004 |
総合手引 | セクション 8 | English | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.