Q: KickStart を使ったインストールの後,マシンが起動しません.
BIOS が Missing operating system
といったメッセージを吐きます.
A:ルートファイルシステムが置かれているパーティションが起動可
能でないようです.fdisk
を使って,起動可能ステータスを
変えてください.
Q: フロッピーで起動した後に
Error opening files for kickstart copy: File exists
というメッセージが出ます.
A: もっと新しいバージョンの boot.img と supp.img を使ってください.このファイルはお近くの RedHat ミラー サイトの updates ディレクトリにあります.RedHat 5.1 では,古 いバージョンのディスクイメージの一部にバグがありました.
Q: 重要なパッチ(更新 RPM パッケージ)も自動的に適用することが できるのでしょうか? できるとしたらどうやって適用するのでしょうか?
A1: インストールしたい RPM パッケージを,インストールに使う RPMS ディレクトリにコピーし,古い RPM パッケージを削除して, RedHat/base/hdlist ファイルを新しい RPM パッケージの詳細情報 に書き直します.これを行うために Eric Doutreleau さんが作成したスクリ プトを付録 C で紹介します.この作業を自分自身で行った場合は,その後忘れずに genhdlist を実行してください.
A2: Perl スクリプト patchup を試してください.このスク リプトは,システムにインストールされている RPM パッケージと候補ディレ クトリにある RPM パッケージを比較し,更新の必要があると思われるものを 報告します.スクリプトを信用して,そのまま RPM パッケージをインストー ルすることもできます.
A3: rpm2hml は A2 をずっと強力にしたバージョンです(12MB の C 言語のコードとたった 1 ページの Perl スクリプトを比べていますが!).
Q: インストールサーバに一つだけ設定ファイルを置き、 それがすべてのクライアントによって (IPADDR-kickstart が無い時に) デフォルトで使われるようにするにはどうすればいいでしょう?
A1: BOOTP/DHCP 'boot file' のパラメータである bf を 使ってファイル名を設定してください.
A2: /etc/bootptab の該当項目にレコード
bf=/kickstart/ks.cfg
を追加してください.
Q: うまく行かない時にもっと柔軟に動作するようにしたいです.例 えば,ディストリビューションが CD-ROM 上に無い時に別の場所を尋ねるといっ た動作です.
A: ?
Q: 明示的に特定のパッケージを除外したいです.例えば, sendmail に関係するものだけを除外するような場合です.
A: BASE を sendmail 抜きで再構築してください.
Q: /etc/rc.d/ にあるランレベルスクリプトによって起動 時に自動的に開始されるサービスを選択する方法を教えてください.
A: chkconfig ユーティリティを使うと,起動時に自動的 に開始するサービスを設定することができます.これをインストール後に実行 するスクリプトのセクションで実行することもできます.ランレベル 3, 4, 5 で ypbind を起動するための設定例を以下に示します:
chkconfig --level 345 ypbind on
これにより,レベル 3, 4, 5 で ypbind が起動されるようになります.
Q: シェルのコマンドを %post
セクションで実行する時,
メイン画面を上書きしないで出力を別の仮想コンソールに出したいと思います.
これをシェルコマンドセクションで open
を使って行えますか?
A: できます.以下のようにしてください:
exec >/dev/tty5
Q: ファイルシステム生成のコードは不良ブロックのチェックを行い ますか?
A: ファイルシステム生成時の出力が表示される仮想コンソールに移 れば,「読み取り専用」テスト実行に関する出力が行われていないことがわか ると思います.したがって,答えは「いいえ」のようです.
Q: 一部のマシンだけを他のマシンと違う設定にすることはできますか?
A: ホスト依存の設定を KickStart の設定ファイルのスクリプト記 述セクションに移せば大丈夫です.ここで指定したマシンの場合に限って指定 された RPM パッケージをインストールするようにします.設定ファイルのパッ ケージセクションに条件付きインストール機能(例: アーキテクチャ, ホスト名/ドメイン名,IP アドレスによる分岐)があれば便利だったのでしょ うが….
Q: RedHat 5.1 から 5.2 で変更された部分はありますか?
A1: インストーラへの変更点はたくさんありますが,そのほとんど はバグ修正と見栄えの改善です.筆者が言える限り(新旧の misc/src/install ディレクトリの diff -rcs を取った結 果)では,KickStart への影響はありません.
A2: RedHat 5.2 では bootpd
への自動 IP 割り当て/DHCP
パッチが入ったようですが,その使い方の説明はドキュメントには入っていま
せん.
Q: (/home を残したまま / を消す等のために) 特定のパーティション(1 つまたは複数)を消すことはできますか? できるなら ば,どのようにして行うのでしょうか?
A: できません.今のところは!
Q: 複数のドライブに分けてパーティションを割り当てることはでき
ますか? 例えば,/ を sda
に置き,/home を
sdb
に置くといった具合です.
A: できません.パーティション操作ツールからアクセスできるのは 最初のドライブだけのようです.
Q: 既に存在しているパーティションをマウントテーブルに入れるこ とはできますか? それとも,新しいパーティションを生成してこれをマウント テーブルに入れることしかできないのですか?
A: ?
Q: mkkickstart
を実行した後,mkkickstart
が
生成したファイルはどこに置かれるのですか?
A: mkkickstart
はファイルを作りません.
mkkickstart
は KickStart の設定を標準出力に出力します.
Q: 仮想コンソール 4 (Alt-F4) に
Unable to load NLS charset cp437(nls_cp437)
というメッセージ
が出ます.これはどういう意味でしょうか? 何か問題があるのでしょうか?
A: Joliet 拡張形式(ISO 9660 の Unicode 拡張)で焼いた CD-ROM をマウントしようとしているように見えます.理論的には CD-ROM 上のファイ ル名はおかしくなり,Linux では正しく読めません.実際には,問題になるこ とはまずないようです.実は関係ないのかもしれません.
Q: どうして X ウィンドウシステムがインストールされるのでしょ う? インストール対象のパッケージにはしていないのですが.
A: XFree86-VGA16
の RPM パッケージは 'base' コンポー
ネントに入っているので必ずインストールされます.ただし base クラスの定
義を変えればその限りではありません.
Q: インストール後に実行するスクリプト内で,それまでにインストー ルされたパッケージを使い,フロッピーに入っている限られたツールではでき ない面白いことができますか?
A: できます.Perl をインストールして KickStart の設定ファイル と組み合わせれば,5 行くらいのスクリプトで大抵のことができます :-)