picobsd(8) FreeBSD 一般コマンドマニュアル

picobsd

前のページ 上に戻る 次のページ

picobsd




解説

     picobsd スクリプトは、最小実装の FreeBSD (歴史的に PicoBSD と呼ばれます)
     の生成に使用可能です。生成物は、典型的には 1 枚のフロッピディスクに収まる
     か、 CDROM やフラッシュメモリや etherboot 経由といった様々なメディアから
     ダウンロード可能となります。

     ブートメディア (典型的にはフロッピディスク) は、ブートローダと、メモリ
     ファイルシステムを含む圧縮カーネルを含みます。メディアに依存し、多数の追
     加ファイルを含むかもしれません。これらは、実行時に更新可能であり、メモリ
     ファイルシステム中のファイルの書き換え/更新に使用されます。

     システムは、カーネルを通常の方法でロードし、メモリファイルシステムを伸長
     し、これをルートとしてマウントします。その後、メモリファイルシステムを、
     ブートメディアからのファイルで更新し (存在する場合のみ)、特別な /etc/rc
     を実行します。ブートメディア (フロッピ等) は、ロードのためだけに必要であ
     り、典型的には読み取り専用で使用されます。ブートフェーズ後は、システムは
     完全に RAM で実行されます。

     次のオプションが使用可能です (詳細は picobsd も参照してください):

     -c
     -clean         以前の構築における生成物を除去します。
     -n             スクリプトを、非対話的にします。最初のメニューを表示せず、
                    ユーザの入力を要せずに構築処理に進みます。
     -v             スクリプトを冗長表示にし、実行する様々なコマンドを表示し、
                    それらの実行前にユーザの入力を待ちます。デバッグ時に有用で
                    す。
     --floppy_size size
                    フロッピイメージの大きさを設定します。 CDROM に焼いたり
                    etherboot からダウンロードするイメージ用に、1440 以外の値
                    を使用可能です。
     --src pathname
                    標準の /usr/src の代りに、 pathname を、ソースツリーとして
                    使用します。フロッピイメージをクロス構築する場合に有用かも
                    しれませんが、 config(8) プログラムおよびインクルードファ
                    イルとライブラリへの依存があることに注意してください。


環境

     サイズ制限が極めて厳しいため、 picobsd の環境は通常の FreeBSD といくつか
     の点で異なっています:

     o   ダイナミックライブラリはなく、 /usr/lib ディレクトリもありません。そ
         のため、スタティックリンクした実行体のみ実行可能です。

     o   実行体のサイズを減らすため、特定のフロッピ内のすべての実行体は、
         crunchgen(1) を利用して単一の実行体にまとめられています。

     o   プログラムによっては最小限のバージョンが提供されています。 nsnetstat(1) の機能限定版であり、 vmvmstat(8) の機能限定版です。


picobsd の構築


     install    はソフトウェアインストールに適したコンフィギュレーションです。

     isp        はダイヤルイン (ppp) ネットワーキングに適したコンフィギュレー
                ションです。

     net        は一般的なネットワーキングに適したコンフィギュレーションです。

     router     はルータとして使う場合に適したコンフィギュレーションです。この
                特別なコンフィギュレーションは、最小限のハードウェアで動作する
                ことを目標としています。

     これらのコンフィギュレーションは、あなた自身による構築の参考のためだけに
     あります。すべてがテストされたわけではありませんし、動かすため、もしくは
     コード量増加時に空きディスク空間に納めるために、コンフィギュレーション
     ファイルにちょっとした修正が必要となるかもしれません。

     あなた自身のフロッピタイプを定義可能であり、このためには次のものを含む好
     み (例 FOO) のディレクトリを作成します。

     PICOBSD              カーネルコンフィギュレーションファイル (必須)。
     crunch.conf          crunchgen コンフィギュレーションファイル (必須)。
     config               picobsd スクリプトが読み取るシェル変数 (省略可能)。
     floppy.tree.exclude  標準フロッピツリーから得る、必須ではないファイル (省
                          略可能)。
     floppy.tree/         標準フロッピツリーへの、ローカルな追加 (省略可能)。
     floppy.tree.${site}  上と同じですが、サイト固有です (省略可能)。

     構築過程に関する更なる情報は、 picobsd スクリプトに記述されています。サン
     プルのコンフィギュレーションは /usr/src/release/picobsd/${type}/ にありま
     す。


別のソースツリーの使用

     構築スクリプトは、別のソースツリーを使用するよう、 --src pathname オプ
     ションで指示可能です。指定するツリーは、カーネルおよびイメージに含める全
     プログラムのソースすべてを含む必要があります。このオプションは非常に注意
     して指定する必要があります。なぜならば、別のインクルードファイル、別のラ
     イブラリ、または別バージョンの config(8) プログラムを、この別のソースツリ
     ーが参照するかもしれないためです


PicoBSD のブート

     picobsd をブートするには、フロッピを挿入してマシンをリセットします。ブー
     ト手順は標準の FreeBSD ブートと似ていますが、非常にゆっくりと進みます。
     POST (BIOS の Power On Self Test) が終ってからシステムが立ち上がって走行
     するまで 1 〜 3 分かかります。

     ブートを高速化するには、 etherboot を使用して、ロード済みで圧縮を伸長した
     カーネルイメージをロードしてください。このイメージは、 picobsd 構築過程で
     生成されます。この場合、10Mbit/s イーサネットでさえ、ロード時間は数秒にな
     ります、

   B>スB>ワB>ッB>プB>空B>間
     Andrzej Bialecki <abial@FreeBSD.org> です。スクリプト関連の仕事を Luigi
     Rizzo <luigi@iet.unipi.it> 等が引き継ぎました。マニュアルページと
     Makefile の作成は Greg Lehey <grog@lemis.com> が行いました。


バグ

     picobsd を構築する際、構築作業を行うシステムのカーネルには vn(4) ドライバ
     がインストールされていなければなりません。

     構築の過程は ``root'' で実行しなければなりません。 vnconfig(8)mount(8) を実行する必要があるためです。

     picobsd の構築には、依然、中身の見えにくいところがあります。最大の問題
     は、どういうふうにすればフロッピにぴったり詰め込むことができるかを判断す
     ることです。現実的な方法は試行錯誤しかありません。

FreeBSD 4.4                      June 20, 2001                     FreeBSD 4.4

ABELNET VPSサービス