| 総合手引 | セクション 8 | オプション |
この sysinstall ユーティリティは、引数なしで起動された場合には既定のモードで動作します。 このモードでは、インストール及び設定のためのメニューが存在します。
しかし sysinstall のサブシステムを直接起動する必要がある場合には、 コマンドラインからそれを指定することもできます。 インストールスクリプトを 実行することとコマンドラインからの指定はまったく同じことなので、 スクリプトの作成に関するセクションに目を通しておくと良いでしょう。
sysinstall ユーティリティは現在のところ、 システムコンソールや、カラー表示をサポートした端末 エミュレータで起動した場合に単純な ANSI ライングラフィックスや色を 使った操作を実現するために dialog(3) を使用しています (xterm の新しいバージョンでは、termcap の "xterm-color" エントリを使用することでカラー表示をサポートします)。
このプログラムはそろそろライフサイクルの終わりに来ており、新しい ものによって置き換えられるかもしれません。
| LOAD_CONFIG_FILE | |
| もし sysinstall が、環境変数 (または Makefile 中に) LOAD_CONFIG_FILE に何らかの値が セットされた状態でコンパイルされていれば、 sysinstall が非対話的なモードで起動された際に自動的に探して読み込むファイル名として その値が用いられます。 このオプションは、大きなサイトにおいて、 ほぼ同じ設定とインストールオプションで、ひとつの雛型に基づき 多数のマシンにインストールしたい場合のためのものです。 | |
| メインメニュー | |
| sysinstall が対話的に起動された場合、すなわち既定の方法で起動された場合、オプション "load config file" を含むメインメニューを表示します。 このオプションを 選択すると、スクリプトファイル名を尋ねるプロンプトが出され、続いてその ファイルを DOS または UFS 形式のフロッピディスクから読み込みます。 | |
| コマンド行 |
sysinstall
がマルチユーザモードで動作している場合はコマンドライン引数のそれぞれが
スクリプトの指示であるとして扱われます。
実行終了のリクエスト (たとえば
shutdown
指示など)、引数列の終わり、エラー発生のいずれかにより実行は終了します。
たとえば、 /usr/sbin/sysinstall _ftpPath=ftp://ziggy/pub/ mediaSetFTP configPackages は、 sysinstall を、インストールメディア FTP (サーバは `ziggy') で初期化し、続いて package インストールエディタを起動し、それが終わると終了します。 |
var=value
function
#somecomment
var=value は、たとえば "ftpPass=FuNkYChiKn" のような、 sysinstall の内部変数の設定です。 また、 function は、"mediaSetFTP" のような sysinstall の内部関数の名称であり、 #comment はドキュメンテーションのために挿入する一行のコメントです (sysinstall はこれを無視します)。 それぞれの指示は一行にひとつずつ書かれなければなりません。 関数は、既知の変数名を調べることで、その引数を得ます。 したがって、ある変数を必要とする関数を呼び出す前には、 関連する変数を予め設定しておく必要があります。
各ディレクティブの前に noError 変数を設定しておくことが可能です。 これにより、ディレクティブ自身は無視されるような場合においても、 エラーを検知可能とします。 noError の値は、ディレクティブが処理されるたび自動的に、 デフォルトの "未設定" に戻ります。
いつどの関数が、どの変数に依存するかを、 下の表に示します。
関数一覧:
| configAnonFTP | |
|
匿名 FTP の設定メニューを起動します。
変数: 無し | |
| configRouter | |
|
使用したいルーティングデーモンを選択します。
必要ならサードパーティのものを使用することもできます。
変数: | |
| router | |
| これには、たとえば "routed" や "gated" のように、希望するルーティングデーモンの名前を設定します。 設定されていなければ入力を求められます。 | |
| configNFSServer | |
|
ホストを NFS サーバとして設定します。
変数: なし | |
| configNTP | |
|
ホストをネットワークタイムプロトコルのユーザとして設定します。
変数: | |
| ntpdate_flags | |
| これには、 ntpdate(8) のオプションを設定します。 同期をとるために使用するサーバの名前はここに設定してください。 | |
| configPCNFSD | |
|
ホストを PC NFS をサポートするように設定します。
変数: | |
| pcnfsd_pkg | |
| 必要ならば PCNFSD の package 名を設定します (既定値としてハードコード されたものが使用されます)。 | |
| configPackages | |
|
対話的な package 管理画面を起動します。
変数: なし | |
| configUsers | |
|
システムにユーザやグループを追加します。
変数: なし | |
| diskPartitionEditor | |
|
ディスクパーティション (MBR) エディタを起動します。
変数: | |
| geometry | |
| シリンダ数/ヘッド数/セクタ数の形式で書かれたディスクジオメトリを 設定します。 既定値: ジオメトリを変更しません。 | |
| partition | |
| ディスクパーティションのタイプやサイズを設定します。 この値が free であれば、 FreeBSD のために使用可能な空き領域のみを使用します。 all であれば、ディスク全体を FreeBSD に割り当てますが、正しいパーティションテーブルを作成します。 existing であれば、既存の FreeBSD パーティションのうち、最初に見つかったものを使用します。 exclusive であれば、ディスクを、 "危険な方法で専用化された" モードで使用します。 最後に、 somenumber であれば、空き領域のうちの somenumber ブロックを新規の FreeBSD パーティションのために使用します。 既定値: 対話モードで起動します。 | |
| bootManager | |
| は、次のどれかから選択する必要があります。 boot は、ブートマネージャのインストールを指示します。 standard は、ブートマネージャでない「標準の」DOS MBRのインストールを指示します。 none は、ブートマネージャに対して何の操作も行わないことを指示します。 既定値: none です。 | |
| diskInteractive | |
| 設定すると、対話的なディスクパーティションエディタを起動します。 | |
注意: この関数では実際のディスクへの書き込みは行われません。 実際に書き込みを行うためには、 diskPartitionWrite 操作を行う必要があります。
| diskPartitionWrite | |
|
は、MBR に対する、待ち状態にあるすべての変更を行います (一般には
diskPartitionEditor
によって呼び出されます)。
変数: 無し | |
| diskLabelEditor | |
|
ディスクラベルエディタを起動します。
スクリプトから動かすのはちょっと手品のようになります。
というのも、
diskPartitionEditor
関数で作成された各
FreeBSD
(タイプ 0xA5) パーティション中のすべてに対してラベルする必要が
本質的にあるためであり、
これはどのようにレイアウトされるかについての少数のルールを知る
必要があるためです。
スクリプトを作成して、
自動的にディスク空間の割り当てとパーティションを行う場合、
少なくとも一度はまず対話的にインストールを実行し、
スライス名がどうなるかを見てから、
これをスクリプトに埋め込むことをお勧めします。
例えば、SCSI ディスクがあり、そのスライス 2 に FreeBSD を作成したとします (DOS パーティションはスライス 1 にあるとします)。 FreeBSD 全体のスライス名は da0s2 になります (DOS プライマリパーティションは da0s1 となります)。 更に、このパーティションに 500MB あり、 FreeBSD 用にこの空間をルートとスワップと var と usr のファイルシステムに 更に分割すると仮定します。 diskLabelEditor 関数呼び出しには、次の変数設定が伴うでしょう: | |
| da0s2-1=ufs 40960 / | |
| 20MB ルートファイルシステム (すべての大きさは 512 バイトブロック数)。 | |
| da0s2-2=swap 131072 / | |
| 64MB スワップパーティション。 | |
| da0s2-3=ufs 204800 /var | |
| 100MB /var ファイルシステム。 | |
| da0s2-4=ufs 0 /usr 1 | |
| 空き空間の残り (約 316MB) が /usr ファイルシステムで ソフトアップデートを有効にします (マウントポイント後の非 0 引数は、ソフトアップデートフラグ設定を意味します)。 | |
新規パーティションを作成するのと同様に、 既存のパーティションのマウントや消去に、 diskLabelEditor を使用可能です。 前の例の、DOS パーティションをマウントし、これに対応する /etc/fstab エントリを、新規インストールにおいて作成したいとします。 diskLabelEditor 関数の呼び出し前に、次の追加行を単に足せば良いです:
da0s1=/dos_c N
これは、最初のスライスを /dos_c にマウントしてこれを newfs しないよう、ラベルエディタに指示します ( sysinstall は DOS パーティションに対しては如何なる場合でも newfs を実行しません。 既存の UFS パーティションに対しても、ここに名前を書くことで実行できます。 2 番目のフィールドは省略不可です)。
diskInteractive 変数を設定することにより、 前述のように変数を使用した明示的なレイアウトを行う代りに、 ディスクラベルエディタが対話的なダイアログを使用してディスクを分割するよう、 要求できます。
注: diskLabelCommit が呼び出される前は、 ファイルシステムデータは実際にディスクに書き込まれません。
| diskLabelCommit | |
|
設定した、待ち状態であるディスクラベル情報をすべて書き込み、
diskLabelEditor
でマウントを設定したすべてのファイルシステムをマウントします。
変数: なし | |
| distReset | |
|
選択した配布ファイルのセットをリセットして、何も選択していない状態にします。
変数: なし | |
| distSetCustom | |
|
配布ファイルセットの選択を、予め用意されたセットからの選択でなく、
非対話モードでも「カスタム」で行うようにします。
変数: | |
| dists | 読み込む配布ファイルのセットのリストを設定します。 値として使用できるのは以下の通りです。 |
| base | 基本バイナリファイルのセット |
| doc | 様々な文書 |
| games | ゲーム |
| manpages | フォーマット前のマニュアルページ |
| catpages | フォーマット済のマニュアルページ |
| proflibs | 開発者のためのプロファイルされたライブラリ |
| dict | スペルチェックなどのツールのための辞書情報 |
| info | GNU info ファイルとその他の追加文書 |
| compat1x | FreeBSD 1.x との互換性 |
| compat20 | FreeBSD 2.0 との互換性 |
| compat21 | FreeBSD 2.1 との互換性 |
| compat22 | FreeBSD 2.2 及び FreeBSD 3.0 の a.out バイナリ互換性 |
| compat3x | FreeBSD 3.x との互換性 ( Fx 4.0 でのみ利用可能) |
| compat4x | FreeBSD 4.x との互換性 ( Fx 5.0 システムでのみ利用可能) |
| ports | ports コレクション |
| ssecure | /usr/src/secure |
| sbase | /usr/src/(トップレベルファイル) |
| scontrib | /usr/src/contrib |
| sgnu | /usr/src/gnu |
| setc | /usr/src/etc |
| sgames | /usr/src/games |
| sinclude | /usr/src/include |
| skrb5 | /usr/src/kerberos5 |
| slib | /usr/src/lib |
| slibexec | /usr/src/libexec |
| srelease | /usr/src/release |
| srescue | /usr/src/rescue |
| sbin | /usr/src/bin |
| ssbin | /usr/src/sbin |
| sshare | /usr/src/share |
| ssys | /usr/src/sys |
| subin | /usr/src/usr.bin |
| susbin | /usr/src/usr.sbin |
| ssmailcf | /usr/src/usr.sbin/sendmail/cf |
| Xbin | X.Org クライアントアプリケーション |
| Xlib | X.Org ライブラリ |
| Xman | X.Org マニュアルページ |
| Xdoc | X.Org プロトコルとライブラリの文書 |
| Xprog | X.Org imake 配布物 |
| Xsrv | X.Org X サーバ |
| Xnest | X.Org ネスト X サーバ |
| Xprt | X.Org プリントサーバ |
| Xvfb | X.Org 仮想フレームバッファ X サーバ |
| Xfmsc | X.Org 種々の フォントセット |
| Xf75 | X.Org 75DPI フォントセット |
| Xf100 | X.Org 100DPI フォントセット |
| Xfcyr | X.Org キリル語フォントセット |
| Xft1 | X.Org Type 1 フォントセット |
| Xftt | X.Org TrueType フォントセット |
| Xfs | X.Org フォントサーバ |
| distSetDeveloper | |
|
標準開発者配布セットを選択します。
変数: 無し | |
| distSetXDeveloper | |
|
標準 X 開発者配布セットを選択します。
変数: 無し | |
| distSetKernDeveloper | |
|
標準カーネル開発者配布セットを選択します。
変数: 無し | |
| distSetUser | |
|
標準ユーザ配布セットを選択します。
変数: 無し | |
| distSetXUser | |
|
標準 X ユーザ配布セットを選択します。
変数: 無し | |
| distSetMinimum | |
|
最小配布セットを選択します。
変数: 無し | |
| distSetEverything | |
|
全部、つまり利用可能な配布すべてを選択します。
変数: 無し | |
| distSetSrc | |
|
ソースのパーツ群を、対話的に選択します。
変数: 無し | |
| distSetXOrg | |
|
X.Org のパーツ群を、対話的に選択します。
変数: 無し | |
| distExtractAll | |
|
現在選択されている配布すべてをインストールします
(メディアデバイスが既に選択されていることが必要です)。
変数: 無し | |
| docBrowser | |
|
(必要であれば) HTML 文書ブラウザをインストールし、
HTML 文書サブメニューに行きます。
変数: | |
| browserPackage | |
| 必要に応じてインストールを試みる、ブラウザの package 名です。 デフォルトは最新の links package です。 | |
| browserBinary | |
| ブラウザバイナリ自身の名前です ( browserPackage 変数に優先させる場合)。 デフォルトは links です。 | |
| installCommit | |
|
ディスクに対する待ち状態の変更を、すべて実施します。
この関数は、本質的に、細粒度の "実施" 関数をまとめたものです。
変数: 無し | |
| installExpress | |
|
「高速」インストールを開始します。
ユーザへの質問は少数です。
変数: 無し | |
| installStandard | |
|
「標準」インストールを開始します。
利用可能なインストールタイプ中で、最もユーザフレンドリです。
変数: 無し | |
| installUpgrade | |
|
アップグレードインストールを開始します。
変数: 無し | |
| installFixitHoloShell | |
|
init として起動している場合、
「緊急ホログラフィックシェル」を VTY4 で起動します。
noHoloShell
を設定しない限りにおいては、
これはインストール処理の一部として自動的に実施されます。
変数: 無し | |
| installFixitCDROM | |
|
"fixit" モードに入ります。
ライブファイルシステム CDROM がドライブにあるものと仮定します。
変数: 無し | |
| installFixitFloppy | |
|
"fixit" モードに入ります。
fixit フロッピディスクが利用可能と仮定します (ユーザは問い合わせを受けます)。
変数: 無し | |
| installFilesystems | |
|
インストールのファイルシステム初期化部分のみを実行します。
変数: 無し | |
| installVarDefaults | |
|
全変数をデフォルトに初期化し、以前の設定を上書きします。
変数: 無し | |
| loadConfig | |
|
#include 文のようなものであり、他の設定ファイルをロードできます。
変数: | |
| configFile | |
| ロードするファイルの完全な形でのパス名です。 | |
| mediaClose | |
|
メディアデバイスが開いている場合、閉じます。
変数: 無し | |
| mediaSetCDROM | |
|
インストールメディアとして
FreeBSD
CDROM を選択します。
変数: 無し | |
| mediaSetFloppy | |
|
インストールメディアとして
作成済フロッピインストールセットを選択します。
変数: 無し | |
| mediaSetDOS | |
|
インストールメディアとして
既存の DOS プライマリパーティションを選択します。
最初に見付かるプライマリパーティション (例 C:) を使用します。
変数: 無し | |
| mediaSetTape | |
|
インストールメディアとしてテープデバイスを使用します。
変数: 無し | |
| mediaSetFTP | |
|
インストールメディアとして FTP サイトを使用します。
変数: | |
| hostname | |
| インストールされるホストの名前 (省略不可)。 | |
| domainname | |
| インストールされるホストのドメイン名 (省略不可)。 | |
| defaultrouter | |
| このホストのデフォルトルータ (省略不可)。 | |
| netDev | |
| どのホストインタフェースを使用するか (例えば ed0 や ep0 です。 省略不可)。 | |
| netInteractive | |
| 設定すると、関連するすべての設定変数を陶に設定していても、 対話的なネットワーク設定フォームを起動します (省略可)。 | |
| ipaddr | |
| 選択したホストインタフェースの IP アドレス (省略不可)。 | |
| netmask | |
| 選択したホストインタフェースのネットマスク (省略不可)。 | |
| _ftpPath | |
| 対象となる FreeBSD 配布を保持する FTP サイトの完全な形での URL。 例えば ftp://ftp.FreeBSD.org/pub/FreeBSD/ 。 | |
| mediaSetFTPActive | |
|
mediaSetFTP
と同様ですが、「能動的」な FTP 転送モードを使用します。
変数: mediaSetFTP と同様です。 | |
| mediaSetFTPPassive | |
|
mediaSetFTP
と同様ですが、「受動的」な FTP 転送モードを使用します。
変数: mediaSetFTP と同様です。 | |
| mediaSetHTTP | |
|
mediaSetFTP
と同様ですが、HTTP プロキシを使用します。
変数: mediaSetFTP を参照してください。 更に以下も使用します。 | |
| _httpPath | |
| 使用するプロキシ (host:port) (省略不可)。 | |
| mediaSetUFS | |
|
インストールメディアとして、
(ラベルエディタでマウントされている) 既存の UFS パーティション
を選択します。
変数: | |
| ufs | 対象となる FreeBSD 配布を保持する、完全な /path 指定。 |
| mediaSetNFS | |
|
変数: | |
| hostname | |
| インストールされるホストの名前 (省略不可)。 | |
| domainname | |
| インストールされるホストのドメイン名 (省略不可)。 | |
| defaultrouter | |
| このホストのデフォルト経路 (省略不可)。 | |
| netDev | |
| どのホストインタフェースを使用するか (例えば ed0 や ep0 です。 省略不可)。 | |
| netInteractive | |
| 設定すると、関連するすべての設定変数を陶に設定していても、 対話的なネットワーク設定フォームを起動します (省略可)。 | |
| ipaddr | |
| 選択したホストインタフェースの IP アドレス (省略不可)。 | |
| netmask | |
| 選択したホストインタフェースのネットマスク (省略不可)。 | |
| nfs | 対象となる FreeBSD 配布を保持する、完全な hostname:/path 指定。 |
| mediaSetFTPUserPass | |
|
変数: | |
| ftpUser | |
| FTP サーバに接続する場合のユーザ名を設定します。 既定値: ftp | |
| ftpPass | |
| FTP サーバに接続する場合のパスワードを設定します。 既定値: user@host | |
| mediaSetCPIOVerbosity | |
|
変数: | |
| cpioVerbose | |
| cpio で展開を行う際のメッセージの冗長度を low, medium, high から選択します。 | |
| mediaGetType | |
|
対話的にユーザにメディアタイプの指定を求めます。
変数: 無し | |
| optionsEditor | |
|
オプション編集画面を起動します。
変数: なし | |
| packageAdd | |
|
package を取得してインストールしようと試みます (メディアが設定されている
必要があります)。
変数: | |
| package | |
| bash-1.14.7 や ncftp-2.4.2 のようにインストールする package の名前を 指定します。 | |
| addGroup | |
|
対話的なグループエディタを起動します。
変数: なし | |
| addUser | |
|
対話的なユーザエディタを起動します。
変数: なし | |
| shutdown | |
|
スクリプトの実行を停止して sysinstall を終了します。
変数: なし | |
| system | |
|
system(3)
を用いて外部コマンドを実行します。
変数: | |
| command | |
| 実行するコマンドの名前。 ブートフロッピから起動されている場合は、 システム全体がインストールされている場合と比較して使用できるものが 大幅に限定されていることに注意してください。 | |
| tcpMenuSelect | |
|
ネットワークデバイスを設定します。
変数: mediaSetFTP と同様ですが、 _ftpPath が使用されないことが違います。 | |
| cdrom.inf | プロパティを 1 行に 1 個ずつ記述するテキストファイルであり、 使用するメディアの内容を記述します。 各行の文法は、単に "property = value" というものです。 現在のところ、次のプロパティだけが認識されます。 |
| CD_VERSION | |
| このプロパティは、このメディアボリュームの FreeBSD バージョンに設定すべきです。 例えば "CD_VERSION = 5.3" です。 | |
| CD_MACHINE_ARCH | |
| このプロパティは、このボリューム上の内容のアーキテクチャに設定すべきです。 このプロパティは、通常、複数のアーキテクチャを含む FreeBSD 製品でのみ使用され、 ユーザが Alpha package を i386 マシンにインストールしようとしたときに より良いエラーメッセージを提供するようになります。 例えば "CD_MACHINE_ARCH = alpha" です。 | |
| CD_VOLUME | |
| マルチボリュームコレクション (例えば FreeBSD 4-CD セット) では、各ディスクの ports/INDEX ファイルは、セットの完全な package インデックスを含むべきです。 INDEX ファイルの最後のフィールドは、 どのボリュームにその package が含まれるのかを示し、この CD_VOLUME プロパティは現在のディスクのボリューム ID を定義します。 | |
| packages/INDEX | package インデックスファイルです。 各 package が、必要な依存関係等の追加メタデータと共に各行に列挙されます。 このインデックスは ports(7) コレクションで "make index" を実行することにより生成されます。 複数ボリュームサポートが有効な場合、 どの package がどのメディアボリュームに含まれるのかを示す 追加フィールドが各行に追加されます。 |
FreeBSD の完全なリリースの構築方法については、 release(7) を参照してください。
| SYSINSTALL (8) | August 9, 1997 |
| 総合手引 | セクション 8 | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.
| “ | One of the advantages of using UNIX to teach an operating systems course is the sources and documentation will easily fit into a student's briefcase. | ” |
| — John Lions | ||