LILO - Frequently Asked Questions Version 1 Werner Almesberger, almesber@nessie.cs.id.ethz.ch 16 Aug, 1993 中谷千絵, jeanne@mbox.kyoto-inet.or.jp 22 Jun, 1997 Slackware 3.1 附属の /usr/doc/faq/faq/LILO-FAQ.gz の訳です。

JF より:この文書は、1997年6月以来、更新されていません。 現在とは事情が異なる場合があるので、ご注意ください。

この文書について

この LILO-FAQ は 16-AUG-1993 のものです。本文中ディレクトリとファイル名 (たとえばこの文書の本文中の /etc/lilo/config は、お使いのマシンでは /etc/lilo.conf/boot/lilo.conf などの場合があります ) に注意してご利用ください。 LILO - Frequently Asked Questions Version 1 16-AUG-1993 この FAQ は2つの部分からなっています。最初の部分は通常の混乱の原因に ついて多少の注意点を書いています。2つ目は Q & A です。 この FAQ についてのご意見を almesber@nessie.cs.id.ethz.ch あるいは almesber@bernina.ethz.ch に送ってください。 注意点 一般的な注意

次のようなコマンドを使って LILO をインストールしようとしてはいけません。 /etc/lilo/lilo -i /etc/lilo/boot.b /vmlinux 第一に、これはバージョン 0.10 とそれ以上の版では動きません。第二には、 kernel や LILO のどこかが変更されたらその都度インストールし直さなけれ ばなりません。ですから、ファイル(一般的には /etc/lilo/config )に設定したデータを保存するのが賢明です。 /etc/lilo/install/etc/lilo/config

0.7 以前の版では kernel の名前などをコマンドラインですべて設定するよ うになっています。そのようなコマンドは通常複雑になり、覚えておくのは難 しいですから、すべては /etc/lilo/install に記録されます。この スクリプトは再インストールされたときはいつでも動きます。 バージョン 0.7 はコンフィグレーションファイル /etc/lilo/config を使って、 もっとすっきりしたコンフィグレーションの方法を取っています。 /etc/lilo/config を使う時は、/etc/lilo/install は 必要なオプションと共に /etc/lilo/lilo を実行するだけです。 そうすると、"新しい" /etc/lilo/installinstall.new という名前で作られます。LILO 0.10 で 始めれば、新しいコンフィグレーション法がサポートされています。付加的な コマンドラインオプションはもう必要がありません。そして、 /etc/lilo/install/etc/lilo/lilo にリンクされて 置き換わります。 好みの配布物からインストールされた /etc/lilo/boot.NNNN

linux 配布物のなかには LILO が動作する前に /etc/liloboot.NNNN を インストールするものがあります。 これは危険です。なぜなら a) あなたが 誤ってこのようなファイルを使うかもしれないし、 b) お使いのシステムにそ れをインストールすると、LILO に正しい boot.NNNN を作らせないからです (boot.NNNNboot.sectors のバックアップコピーです)。 LILO を使う前にあなたのシステムから、別のシステムに由来するどのような boot.NNNN も削除してしまいましょう。 QuickInst

QuickInst は LILO をインストールするときに設定を援助してくれるシェル スクリプトです。QuickInst は単独では使われず、また特別のコンフィグレー ションをサポートしていませんが、始動するにはよい方法です。さらに、シン プルな /etc/lilo/config を作りますから、あとで修正できます。 Q & A Q: LILO とは何でしょうか。

A: LILO とは Linux の一般的なブートローダです。"一般的"というのは、 Linux のすべてのファイルシステムから kernel をブートさせることができる という意味です。また、非 Linux オペレーティングシステムのブートマネジャー としても動きます。 Q: 私はどの版の LILO を使うのがいいでしょうか。

A: 0.7 より以前の版はもう古いですから避けた方がいいでしょう。0.8 から の版は"標準"のインストールを簡単にしているクイックインストールスクリプ トがついています。最新版は0.11 です。(訳注:LILO の最新版は 19 です)。 Q: LILO の入手方法は?

A: LILO は次のところにあります。 tsx-11.mit.edu:/pub/linux/packages/lilo sunsite.unc.edu:/pub/Linux/system/Linux-boot/lilo Q: 文書について教えてください。

A: LILO の文書には次のようなフォーマットのものがあります。 lilo.N.tar.z を含む LaTex lilo.N.tar.z を含む プレーン-ASCII README lilo.u.N.ps.z と lilo.t.N.ps.z には PostScript があります。 lilo.u.N.dj.z と lilo.t.N.dj.z には HP DeskJet と HP LaserJet 用があります。 N はそれぞれのバージョンナンバーを示します。lilo.u* ファイルはユーザ マニュアルで、lilo.t* は技術的な概要のファイルです。 注意: README には LaTex についての入門部分はありません。 Q: 私はブートローダを使うためだけにたくさんの文書を読みたくありません。

A: それなら QuickInst を使ったらいいでしょう。あなたのシステム設定が QuickInst にとって複雑すぎたり、予期しない問題にぶつかって、この FAQ が役にたたないなら、残念ながら文書を読むのを避けることはできません。 Q: 私はブートするのに必要なものについてよくわかりません。何を読んだら いいでしょうか。

A: LILO の LaTex 文書のはじめの部分には PC のディスクがどのように分割 されているか、オペレーティングシステムはどのようにブートするかについて 書いてあります。さらにブートという概念について説明があり、いくつかの例 が示してあります。このようなことについては複雑な図解があるので、この項 目はプレーン ACSII README には含まれていません。 Q: ブートマネジャとして LILO を使用できますか。

A: はいできます。 PC/MS-DOS や OS/2 と共存して動くことはよく知られてい ます。多くの他のオペレーティングシステムと共存してもたぶん動くでしょう。 Q: LILO から別のオペレーティングシステムをブートするのはどのようにする のですか。

A: /etc/lilo/config にオペレーティングシステムのある位置、つまりその名 前、そしてパーティションテーブルなどを加えたらいいだけです。 other = /dev/hda1 # オペレーティングシステムが置かれているパーティション label = dos # その場所をラベルで見分けられるように好きな名前を記述 table = /dev/hda # ディスクのパーティションテーブル それから /etc/lilo/install を再実行します。 Q: 第2ドライブから別のオペレーティングシステムを起動するのはどうした らいいですか。

A: 次の行を加えなければなりません。 loader = /etc/lilo/any_d.b (DOS など) あるいは loader = /etc/lilo/os2_d.b (OS/2) /etc/lilo/config の関連するのは OTHER = ... の項目です。 Q: それでも第2ドライブから DOS をブートできません。

A: 第1ドライブを無効にします。そして、それが第1ドライブであるなら、 第2ドライブから起動できるのを確認します。できないなら、システムファイ ルをインストールするために SYS を使ってみましょう。それでも失敗するな ら、FDISK /MBR と(または) FORMAT /S を使いましょう。 Q: デフォルトの kernel とオペレーティングシステムはどのようにして設定 しますか。

A: /etc/lilo/config で定義されている第1の kernel あるいはオペレーティ ングシステムがデフォルトでブートします。 その部分を再指定したら /etc/lilo/install を再実行するのを忘れないでく ださい。 Q: LILO は SCO[*] やISC[*] などをブートしませ ん。どうしたらいいでしょうか。

A: あなたの設定が間違っていないことを確認してください。それから /etc/lilo/install を再実行します。それでも失敗するなら、 bootactv のような違ったブートマネジャーを試してください。 訳注:SCO Unix System については以下の URL 等をご参考ください。 SCO:Santa Cruz Operations ISC:Internet Software Consortium Q: LILO のブートセクターをどこにインストールしたらいいですか。

A: 第1ドライブの最初のパーティションを Linux のファイルシステムにして いるならそこに LILO ブートセクターをインストールすべきです。そしてその パーティションをアクティブにします(あるいは何か別のブートマネジャーを 使ってアクティブにします)。あるいは、 MBR (たとえば /dev/hda ) あるいは 拡張拡張パーティション( 詳細は LaTex 文書を見てください)に LILO ブート セクターをインストールできます。 Q: LILO をアンインストールするにはどうするのですか。

A: MBR (/dev/hda または /dev/sda) に LILO を インストールし、そしてもと の MBR が標準の DOS の MBR なら、単純に MD-DOS 5.0 をブートし、 FDISK /MBR とすれば MBR から LILO を削除できます。 ( DR-DOS を使っているなら、 FDISK メニューは同様なオプションを提供しています)。 MBR に LILO をイン ストールしたのではないなら、別のパーティションをアクティブにすれば無 効にできます。アクティブパーティションは MS-DOS の FDISK、 Linux の fdisk あるいは LILO をアクティブにすることで変更できます。MBR に LILO をインストールしてしまったのなら、しかし特別な MBR を使用しておらず、 あるいはお使いの DOS のバージョンが MBR を置き換えるのをサポートしてな い場合は、 /etc/lilo/boot.0300 (IDE) あるいは、 /etc/lilo/boot.0800 (SCSI)というファイルを探すべきです。このようなファイルを使う方法につい ては次を読んでください。 Q: LILO をインストール後 PC/MS-DOS パーティションにアクセスできません。 私は何か壊しましたか。

A: 必ずしもそうではないでしょう。たぶんあなたは MS-DOS パーティション のブートセクタを上書きしただけでしょう。ブートセクタにはフ実際のァイル システムについての情報があります。(注意: MS-DOS と違って、Linux のファ イルシステムは最初のセクタを使わず、そのため LILO はそのブートセクタを そこに保存できます。) LILO が最初にブートセクタを上書きするときはいつ でも、/etc/liloboot.NNNN という名前でバックアップ コピーを作ります。 そのナンバー(NNNN)は、たとえば hda なら 0300 hda10301sda0800 のようにそれぞれのデバイスの番号と関連してしています。次のような コマンドで古いブートセクタを保存できます。 dd if=/etc/lilo/boot.NNNN of=/dev/XXXX bs=446 count=1 たとえばこのようになります。 dd if=/etc/lilo/boot.0302 of=/dev/hda2 bs=446 count=1 警告: boot.NNNN の日付けをチェックしてください。LILO を含む配布物には 配布物が作成するシステムから boot.NNNN をつくるものがあります。このよ うなファイルは LILO を使う前に削除した方がいいでしょう。 Q; フロッピーからブートした時、LILO はなぜ " Error 0x04" で停止するので すか。

A: お使いの BIOS はシングルコールで複数のセクタを読もうとしてエラーを 発生するバグで悩んでいるのでしょう。LILO 0.11 はこのような問題を修正し ています。LILO の古いバージョンを使用しているなら、それを回避するため に /etc/lilo/config から COMPACT オプションを取り除きます。 Q: LILO は動くのですが、SLS の新しいバージョンをインストールし、新しい kernel をコンパイルし最新の LILO にバージョンアップしたら、LILO は LI とだけ表示します。

A: kernel や LILO のどんな部分でも変更したら /etc/lilo/install を再実 行しましょう。/etc/lilo/install をしばしば動かすことは害ではありません が、変更したあとで再実行を忘れます。 ついでながら、kernel の Makefile には新しい kernel を構築したあとで /etc/lilo/install を自動的に動かす lilozlilo の2つのターゲットが あります。"lilo" は /vmlinux (圧縮されていない)と "zlilo" は /vmlinuz (圧縮されたもの)を作ります。MBR に LILO をインストールしないなら、LILO を置いたブートセクタががアクティブにされるパーティションであり、そして MBR が有効なパーティションローダーを含むことを確かめなければなりません。 ( LILO の初期版のインストールの名残ではありません。) Q: LILO は私の SCSI システム上で "LI" とだけ表示します。

A: かつては SCSI ユーザは /etc/lilo/disktab というファイルに使用してい るディスクのジオメトリを記述しなければなりませんでした。最近のカーネル はほとんどの SCSI アダプタに関する情報を与えることができます。ですから、 /etc/lilo/disktab は必要がなく、エラーを出しているだけでしょう。コメン トをはずすことで disktab を使っているなら、-f /dev/null というオプショ ンをつけて /etc/lilo/install を実行してみます。もし LILO が disktab を必要とするなら、エラーメッセージを出すでしょう。 Q: 私のカーネルはブートしますが、 "VFS: Unable to mount root" で死にます。

A: お使いのカーネルがきちんと設定されていません。ルートデバイスを設定 するためにその上で rdev を走らせるか、 /etc/lilo/config に関連する ROOT=/dev/xxxx 登録をし、そして /etc/lilo/install を再度実行します。 Q: デバイス 0xNNNN: N 番目のパーティションテーブルが無効です (Device 0xNNNN: Invalid partition table, Nth entry,) このエラーは何を意味しますか。

A: それぞれのパーティションの登録は境界線(ディスク上の N 番目のセクタ ) と 3D (セクタ/ヘッド/シリンダ) のアドレスを持っています。両方のアド レスは一致していなければなりません。パーティションテーブルでそれらが一 致していないのです。これはシリンダの境界線で並べられていないアドレス( non-cylinder-aligned addresses)を使って間違った fdisk をして、さらにその アドレスの同一部分を再整列する(re-aligning) 他のプログラムがあること が原因でしょう。 LILO はパーティションテーブルを修正しようとします。正 確な手続きは LILO のバージョンに依存します。文書を調べてください。 一番きれいにできる(しかしもっとも痛い方法になりますが)解決方法は、境界 線のルール(たとえば Linux の fdisk の 最新版のどれか )に従う fdisk の バージョンでディスクの再パーティションをすることです。 Q: LILO と OS/2 ブートマネジャは共存できますか。

A: はい、うまくいきますが、OS/2 をインストールした後で LILO を(再)イン ストールしなければならないと報告している人もいます。別の解決方法は、 OS/2 のブートマネジャを使わず、LILO から OS/2 をブートすることです。 あとがき

_________________________________________________________________________ / Werner Almesberger, ETH Zuerich, CH almesber@nessie.cs.id.ethz.ch / /_IFW_A44_______________________________________almesber@bernina.ethz.ch_/ Send submissions for comp.os.linux.announce to: linux-announce@tc.cornell.edu 日本語訳について

日本語訳:中谷千絵 jeanne@mbox.kyoto-inet.or.jp 1997/06/22 日本語訳についての問い合わせは jeanne@mbox.kyoto-inet.or.jp 次の方からご助言を頂きました。 Hiro Sugawara さん hiro@arkusa.com 吉山さん yosshy@jedi.seg.kobe-u.ac.jp の http://www.debian.linux.or.jp/doc/disks/cfdisk.ja.txt を参考にさせて頂きました。 (sgml conversion, y.senda, ysenda@pop01.odn.ne.jp, 2001/09)