Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

lilo trouble

0 views
Skip to first unread message

Kunio San-nomiya

unread,
Jan 11, 2000, 3:00:00 AM1/11/00
to
三宮(厚木市在住)です。

このNGで半年ほど前、liloに関する議論がされていました。その
ときは、あまり気にしないで、、、、。重複するかもしれません
が教えてください。

【質問】
liloでブートさせようとすると、
LI
だけ表示して、フリーズしてします。後は、リブートしか利かな
い。なぜ、ブート出来ないのでしょか?

【原因】
今までは、うまくブートできていました。次のことをして、だめ
になりました。
ハードディスクを追加した。
IDE1-マスター 16Gbyte (既設)
IDE1-スレーブ 21Gbyte (既設)
IDE2-マスター  4Gbyte <- 今回追加
IDE2-スレーブ CD-ROMドライブ (既設)
SCSI 4Gbyte (既設)
どうも"今回追加"がトラブルの引き金になっているようだ。この
IDE2-マスターをはずすとうまくブートできる。このディスクの特
性が、他のディスクとの相性が悪いとも考えにくい。このディス
クは、最近までIDE1-スレーブで使っていました。
このディスクの対する読み書きは、増設後もWindowsやLinuxで問
題無く出来ます。

【情報】
HOWTOを見ると
12. LILO のブート時のエラーコード
LIで止まる
 最初のステージのブートローダが2番目のステージのブートロー
 ダをロードすることはできましたが,実行させることはできま
 せんでした.この 原因は,ジオメトリの不一致か /boot/boot.b
 を動かしたのにマップインストー ラを実行しなかったのかの
 どちらかでしょう。
とのことだが、良くわからない。

このエラーに対する対応策と、IDE2-マスターの増設の仕方を教え
てください。
以上、よろしくお願いします。

--
================================================================
Kunio San-nomiya | e-mail : san...@hi-ho.ne.jp
| Address : Atsugi Kanagawa, JAPAN

Takumi Yamane

unread,
Jan 12, 2000, 3:00:00 AM1/12/00
to
こんにちは、山根です。

Kunio San-nomiya wrote:
>
> 【質問】
> liloでブートさせようとすると、
> LI
> だけ表示して、フリーズしてします。後は、リブートしか利かな
> い。なぜ、ブート出来ないのでしょか?

(省略)
> ハードディスクを追加した。

外しているかもしれませんが...
ハードディスクを追加したことにより、liloが知っているLinuxのルート
デバイス名と、実際のルートデバイス名がずれてしまったのではないで
でしょうか?

もしそうなら、ブートフロッピで起動してlilo.confを編集し、
liloし直せば直ると思います。

以上、御参考まで。
--
Takumi Yamane
mailto:yam...@ix.netcom.com

hiruneusagi

unread,
Jan 13, 2000, 3:00:00 AM1/13/00
to
ひるねうさぎです。

> IDE1-マスター 16Gbyte (既設)
> IDE1-スレーブ 21Gbyte (既設)
> IDE2-マスター  4Gbyte <- 今回追加
> IDE2-スレーブ CD-ROMドライブ (既設)
> SCSI 4Gbyte (既設)
> どうも"今回追加"がトラブルの引き金になっているようだ。この
> IDE2-マスターをはずすとうまくブートできる。このディスクの特
> 性が、他のディスクとの相性が悪いとも考えにくい。このディス
> クは、最近までIDE1-スレーブで使っていました。

付け替える前に、Linux上でumountされましたか?


Kunio San-nomiya

unread,
Jan 13, 2000, 3:00:00 AM1/13/00
to
三宮(厚木市在住)です。

hiruneusagi wrote:
> :


> > IDE1-マスター 16Gbyte (既設)
> > IDE1-スレーブ 21Gbyte (既設)

> > IDE2-マスター  21Gbyte <- 今回追加


> > IDE2-スレーブ CD-ROMドライブ (既設)
> > SCSI 4Gbyte (既設)
> > どうも"今回追加"がトラブルの引き金になっているようだ。この
> > IDE2-マスターをはずすとうまくブートできる。このディスクの特
> > 性が、他のディスクとの相性が悪いとも考えにくい。このディス
> > クは、最近までIDE1-スレーブで使っていました。
>
> 付け替える前に、Linux上でumountされましたか?

IDE1-スレーブを4Gbyteから21Gbyteへ付けかえる直前にumount
したか否かは定かでない。
IDE2-マスターに増設し、lilo実行時にmountしていたか否かも
定かでない。
# ディスクを付けたり外したりしているうちに、ケーブルを壊
 してしまって、買出しに行かないと状態の再現ができない。

前回の投稿で情報が少し漏れていました。
【OS環境など】
Slackware 3.5 Kernel 2.2.6(or 2.3.18)
RedHat 6.1(雑誌の付録) Kernel 2.2.12(?)

いろいろアドバイスありがとうございます。当然、ブートフロッ
ピで起動してlilo.confを編集し、MBRの書き換えを行いました。
また、いっぱいブートをするようにしていたので、Windows98と
一つのLinuxだけにしましたが、だめでした。

hiruneusagi

unread,
Jan 15, 2000, 3:00:00 AM1/15/00
to
ひるねうさぎです。

Kunio San-nomiya <san...@hi-ho.ne.jp> wrote in message
news:387D209E...@hi-ho.ne.jp...
> 三宮(厚木市在住)です。


> IDE1-スレーブを4Gbyteから21Gbyteへ付けかえる直前にumount
> したか否かは定かでない。
> IDE2-マスターに増設し、lilo実行時にmountしていたか否かも
> 定かでない。

> 【OS環境など】


> Slackware 3.5 Kernel 2.2.6(or 2.3.18)
> RedHat 6.1(雑誌の付録) Kernel 2.2.12(?)
>
> いろいろアドバイスありがとうございます。当然、ブートフロッ
> ピで起動してlilo.confを編集し、MBRの書き換えを行いました。
> また、いっぱいブートをするようにしていたので、Windows98と
> 一つのLinuxだけにしましたが、だめでした。

hdc を外して起こして、前のhdbの設定が残っているようなら、removeして、ファイ
ルシステムを修正するだけで直ると思います。
Linuxをインストールしたディスクを動かしたのなら、LILOも書きかえる必要がある
でしょうが。
hdcがcdromと同じケーブルにつながっているのが、気にはなりますが。

Kunio San-nomiya

unread,
Jan 16, 2000, 3:00:00 AM1/16/00
to
三宮(厚木市在住)です。

hiruneusagi wrote:
> :


> > いろいろアドバイスありがとうございます。当然、ブートフロッ
> > ピで起動してlilo.confを編集し、MBRの書き換えを行いました。
> > また、いっぱいブートをするようにしていたので、Windows98と
> > 一つのLinuxだけにしましたが、だめでした。
>
> hdc を外して起こして、前のhdbの設定が残っているようなら、

^^^^^^^^^^^^^^^^^^^^^^^^^
/etc/fstabに残っている、ということでしょうか?

> .........................................................removeして、ファイ
> ルシステムを修正するだけで直ると思います。
ちなみに、dmesgを見ると、
ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:pio, hdb:pio
ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:pio, hdd:pio
hda: IBM-DTTA-351680, ATA DISK drive
hdb: IBM-DPTA-352250, ATA DISK drive
hdc: QUANTUM FIREBALL SE4.3A, ATA DISK drive
hdd: TOSHIBA CD-ROM XM-6202B, ATAPI CDROM drive
hda: IBM-DTTA-351680, 16124MB w/462kB Cache, CHS=2055/255/63, UDMA
hdb: IBM-DPTA-352250, 21477MB w/425kB Cache, CHS=2737/255/63
hdc: QUANTUM FIREBALL SE4.3A, 4110MB w/80kB Cache, CHS=14848/9/63, UDMA
hdd: ATAPI 32X CD-ROM drive, 256kB Cache
SCSI device sda: hdwr sector= 512 bytes. Sectors= 8418816 [4110 MB] [4.1
GB]
hda: hda1 hda2 < hda5 hda6 hda7 hda8 >
hdb: hdb1 hdb2! hdb3 < hdb5 > < hdb6 hdb7 hdb8 hdb9 >
hdc:
となっており、ディスクは正しく認識されているように思えます。
何を修正したら良いのでしょうか教えてください。

> Linuxをインストールしたディスクを動かしたのなら、LILOも書きかえる必要がある
> でしょうが。
> hdcがcdromと同じケーブルにつながっているのが、気にはなりますが。

確かに、インストール時と機器構成が変わっています。特に、
/dev/hdc が cdrom から HDD
に変わっています。/dev/cdrom -> /dev/hdcとリンクされて
いたので、/dev/hddにリンクを張り変えました。しかし、症
状は改善されません。もしかしたら、他にもLILOシステムが
昔の記憶を基に何かを判断しているのかもしれません。

新しく追加した/dev/dhcのHDDにSlackware7.0(雑誌の付録)を
インストールしました。つつがなく動いているようです。こ
のシステム上で、/dev/sdaにあるSlackware3.5などをブート
するようlilo.confを書き換えました。結果、
1.Slackware7.0やFreeBSD、Windowsはブートできる。
2./dev/sdaに有るSlackwareやRedHatをブートすると
 0x01
 のエラーが出る。
========== lilo-u-21_psより ===========================
0x01
 "Illegal command". This shouldn't happen, but, if it
 does, it may indicate an attempt to access a disk which
 is not supported by the BIOS. See also "Warning: BIOS
 drive 0xnumber may not be accessible" in section 5.1.2.

Warning: BIOS drive 0xnumber may no ge accessible
 Because most BIOS version only support two floppies
 and two hard disks, files locaed on additonal disks
 may be inaccessible. This warning indicates that sone
 kernels or even the whole system may be unbootable.
===========================(タイプミスがするかも、、)==
 と書いているが、良くわからない。ブート領域は、
/dev/hda1 - Windows98
/dev/hdb6 - FreeBSD3.3R
/dev/sda1 - Slackware3.5
/dev/sda5 - RedHat6.1
 と、なっていて、新たに、
/dev/hdc1 - Slackware7.0
 とした。すでに、二つ以上のディスクからのブートには成功
 していたのだが、、、?

欲張ったマルチブートの時は、システムコマンダーを使えとい
うことかな。

hiruneusagi

unread,
Jan 17, 2000, 3:00:00 AM1/17/00
to
ひるねうさぎです。

Kunio San-nomiya <san...@hi-ho.ne.jp> wrote in message

news:38813335...@hi-ho.ne.jp...

> /etc/fstabに残っている、ということでしょうか?
>

> 1.Slackware7.0やFreeBSD、Windowsはブートできる。
> 2./dev/sdaに有るSlackwareやRedHatをブートすると
>  0x01
>  のエラーが出る。

> /dev/hda1 - Windows98


> /dev/hdb6 - FreeBSD3.3R
> /dev/sda1 - Slackware3.5
> /dev/sda5 - RedHat6.1
>  と、なっていて、新たに、
> /dev/hdc1 - Slackware7.0
>  とした。すでに、二つ以上のディスクからのブートには成功
>  していたのだが、、、?
>

ハードウェアの構成から見てFreeBSDとSlackware7.0は起動できると思います。問題
を起こしているのは、sda1とsda5のLinuxの/etc/fstabだと思います。
起動さえ出来れば、TurboLinuxだとturbofscfgで簡単に追加、削除が行えるのです
が。


Kunio San-nomiya

unread,
Jan 17, 2000, 3:00:00 AM1/17/00
to
三宮(厚木市在住)です。

hiruneusagi wrote:
> :


> > 1.Slackware7.0やFreeBSD、Windowsはブートできる。
> > 2./dev/sdaに有るSlackwareやRedHatをブートすると
> >  0x01
> >  のエラーが出る。
>
> > /dev/hda1 - Windows98
> > /dev/hdb6 - FreeBSD3.3R
> > /dev/sda1 - Slackware3.5
> > /dev/sda5 - RedHat6.1
> >  と、なっていて、新たに、
> > /dev/hdc1 - Slackware7.0
> >  とした。すでに、二つ以上のディスクからのブートには成功
> >  していたのだが、、、?
> >
>
> ハードウェアの構成から見てFreeBSDとSlackware7.0は起動できると思います。問題
> を起こしているのは、sda1とsda5のLinuxの/etc/fstabだと思います。

sda1のSlacware3.5はブートフロッピがありますので、ブートで
きます。それをブートし、/dev/sda1と/dev/sda5のfstabを必要
最小限しましたが結果は同じ(「LI」で固まる)です。

/dev/sda5にSlackware7.0をインストールし、liloを実行、リブ
ートを試みましたが、やはり「LI」で固まります。

/dev/hdc1のSlackware7.0を起動し、
# BIOS setting
disk = /dev/hda
bios = 0x80
disk = /dev/hdc
bios = 0x81
disk = /dev/sda
bios = 0x82
disk = /dev/hdb
bios = 0x83
と、ブートの順序を変えた。結果はやはり「固まる」でした。
ちなみに、この指定をすると、lilo実行時の82のWarningメッ
セージは消える。
# この指定をしないと、/dev/hdaや、/dev/hdcなどからはブー
 トできたのですが。

他に、試すことはありませんか?

# liloが、古いbiosの「二つのdiskからしか、ブートできない」
 と言う呪いを、踏襲しているからでしょうか?

Taketoshi Sano

unread,
Jan 17, 2000, 3:00:00 AM1/17/00
to
佐野@浜松です。

In article <38813335...@hi-ho.ne.jp>,
at Sun, 16 Jan 2000 11:55:49 +0900,
on Re: lilo trouble,


Kunio San-nomiya <san...@hi-ho.ne.jp> さん writes:

> 新しく追加した/dev/dhcのHDDにSlackware7.0(雑誌の付録)を
> インストールしました。つつがなく動いているようです。こ
> のシステム上で、/dev/sdaにあるSlackware3.5などをブート
> するようlilo.confを書き換えました。結果、

この lilo.conf は /dev/hdc1 の /etc/lilo.conf ですか ?
その内容と、lilo -v を実行した時のメッセージは書けますか ?

> 1.Slackware7.0やFreeBSD、Windowsはブートできる。
> 2./dev/sdaに有るSlackwareやRedHatをブートすると
>  0x01
>  のエラーが出る。

BIOS の設定とかによるかもしれませんが、もしかしたら
LILO は /dev/sda のつもりで /dev/hdd にアクセスするように
設定されてしまっているのかもしれません。

> /dev/hda1 - Windows98
> /dev/hdb6 - FreeBSD3.3R
> /dev/sda1 - Slackware3.5
> /dev/sda5 - RedHat6.1
>  と、なっていて、新たに、
> /dev/hdc1 - Slackware7.0
>  とした。すでに、二つ以上のディスクからのブートには
>  成功していたのだが、、、?

LILO はディスクアクセスに BIOS を使うので、BIOS の設定の影響を
受けます。Linux カーネルの認識 (および LILO コマンドによる推定) と
BIOS の設定が食い違っているとうまく動作しないでしょう。

--
# (わたしのおうちは浜松市、「夜のお菓子」で有名さ。)
<kgh1...@nifty.ne.jp> : Taketoshi Sano (佐野 武俊)

shinichi yoshimura

unread,
Jan 17, 2000, 3:00:00 AM1/17/00
to
吉村といいます

lilo -l は試されましたか?


Kunio San-nomiya

unread,
Jan 18, 2000, 3:00:00 AM1/18/00
to
三宮(厚木市在住)です。

Taketoshi Sano wrote:
> :


> この lilo.conf は /dev/hdc1 の /etc/lilo.conf ですか ?

そうです。
> その内容と、.....
</etc/lilo.conf.save>
# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
boot = /dev/hda
message = /boot/boot_message.txt
prompt
timeout = 120
default = win98
# Normal VGA console
vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769
# End LILO global section
# DOS bootable partition config begins
other = /dev/hda1
label = win98
table = /dev/hda
# DOS bootable partition config ends
# Linux bootable partition config begins
image = /vmlinuz
root = /dev/hdc1
label = Linux
read-only

# Slackware Linux 2.2.6 bootable
image = /Slack_4/bzImage-2.2.6
root = /dev/sda1
label = slack
read-only

# Slackware Linux 2.3.18 bootable
image = /Slack_4/bzImage-2.3.18
root = /dev/sda1
label = slack-2318
read-only

# Slackware Linux 2.3.18 with sound bootalbe
image = /Slack_4/bzImage-0112
root = /dev/sda1
label = slack-s
read-only

# Slackware Linux 2.2.13
image = /RedHat/vmlinuz
root = /dev/sda5
label = NewSW7
read-only

# FreeBSD 3.2 bootable partition confg begins
other = /dev/hdb6
label = bsd
table = /dev/hdb

# LILO script end

............、lilo -v を実行した時のメッセージは書けますか ?
# lilo -v -C lilo.conf.save >& msg # /etc上で実行
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
LILO version 21, Copyright 1992-1998 Werner Almesberger

Reading boot sector from /dev/hda
Merging with /boot/boot.b
Mapping message file /boot/boot_message.txt
Boot other: /dev/hda1, on /dev/hda, loader /boot/chain.b
Added win98 *
Boot image: /vmlinuz
Added Linux
Boot image: /Slack_4/bzImage-2.2.6
Added slack
Boot image: /Slack_4/bzImage-2.3.18
Added slack-2318
Boot image: /Slack_4/bzImage-0112
Added slack-s
Boot image: /RedHat/vmlinuz
Added NewSW7
Boot other: /dev/hdb6, on /dev/hdb, loader /boot/chain.b
Added bsd
/boot/boot.0300 exists - no backup copy made.
Writing boot sector.

注)Warning:は”LILO vsersio21...”以降に散りばめられている。

Kunio San-nomiya

unread,
Jan 18, 2000, 3:00:00 AM1/18/00
to
三宮(厚木市在住)です。

shinichi yoshimura wrote:
>
> 吉村といいます
>
> lilo -l は試されましたか?
/dev/sda1に有るkernel-名前はslack-に対して、
# lilo -I slack
として、slackのブートを試みたところ
Loading slack
で固まりました。error 0x01は出ませんでした。少しは前に進んだ
のかもしれません。

Taketoshi Sano

unread,
Jan 19, 2000, 3:00:00 AM1/19/00
to
佐野@浜松です。


状況を私なりに整理させて頂くと

1) 以前の状況

/dev/hda: HDD
/dev/hdb: HDD
/dev/hdc: CD-ROM
/dev/sda: SCSI HDD

/dev/hda1 - Windows98
/dev/hdb6 - FreeBSD3.3R
/dev/sda1 - Slackware3.5
/dev/sda5 - RedHat6.1

な状態で上の 4 つが起動可能。

(余談ですが、この時使っていた lilo.conf はどのシステムにありましたか ?)

2) ディスク追加

/dev/hda: HDD
/dev/hdb: HDD
/dev/hdc: HDD (新規追加)
/dev/hdd: CD-ROM (/dev/hdc から移設)
/dev/sda: SCSI HDD

/dev/hda1 - Windows98
/dev/hdb6 - FreeBSD3.3R

/dev/hdc1 - Slackware7.0


/dev/sda1 - Slackware3.5
/dev/sda5 - RedHat6.1

/dev/hdc1 にある lilo.conf を使って上の 3 つは起動可能。
下の 2 つは起動不可 (0x01)

ということですね。

In article <3884733B...@hi-ho.ne.jp>,
at Tue, 18 Jan 2000 23:05:47 +0900,


on Re: lilo trouble,
Kunio San-nomiya <san...@hi-ho.ne.jp> さん writes:

お書きになった /dev/hdc1 の /etc/lilo.conf の内容と、
今までの情報を合わせて、ある程度状況が把握できました。

> # lilo -v -C lilo.conf.save >& msg # /etc上で実行

lilo -v -v -v とすると /dev/sda などのデバイスファイル名と
lilo が推定した BIOS call のドライブ番号 (0x80,0x81 など) との
対応を見ることができます。

Device: 0x0301: BIOS drive 0x80, ... heads, ... cylinders

といった行がいくつか出ると思うので、特に Device: 0x0801 と 0x0805 の
表示、それから Device: 0x1601 の表示にも注意してみてください。

> Warning: BIOS drive 0x82 may not be accessible

> LILO version 21, Copyright 1992-1998 Werner Almesberger

今、lilo 21 のコードを眺めてみたのですが、BIOS ドライブ番号の
推定に以下の方法を使っているようなので、

switch (MAJOR(device)) {
case MAJOR_FD:
return !(device & 3);
case MAJOR_HD:
return !(MINOR(device) >> 6);
case MAJOR_IDE2:
/* fall through */
case MAJOR_IDE3:
/* fall through */
case MAJOR_IDE4:
/* fall through */
case MAJOR_IDE5:
/* fall through */
case MAJOR_IDE6:
/* fall through */
case MAJOR_ESDI:
/* fall through */
case MAJOR_XT:
return MINOR(device) >> 6 ? 0 : !last_dev(MAJOR_HD,64);
case MAJOR_SD:
return MINOR(device) >> 4 ? 0 : !last_dev(MAJOR_HD,64);
case MAJOR_DAC960:
return MINOR(device) >> 3 ? 0 : !last_dev(MAJOR_HD,64);
default:
return 1; /* user knows what (s)he's doing ... I hope */

この場合 /dev/sda と dev/hdc は同じ BIOS ドライブ番号 0x82 を
割り当てられてしまうことになりそうです。

当初 BIOS 側に CD-ROM ドライブが起動ディスクとして扱われていて
0x80:hda, 0x81:hdb, 0x82:hdc, 0x83:hdd(CD-ROM), 0x84:sda と
なるべきか、と思っていたのですが、/dev/hdc をディスクを追加する前は
/dev/hdc に CD-ROM があっても sda にアクセスできていた、ということ
から考えると、そうではなくて /dev/hdc と /dev/sda がバッティングして
同じ 0x82 を使ってしまっている、というのが原因と思われます。

対策として、lilo.conf に

# BIOS setting
disk = /dev/sda
bios = 0x83

だけを追加してみてください。これで状況に変化があるだろうと思います。

Kunio San-nomiya

unread,
Jan 19, 2000, 3:00:00 AM1/19/00
to
三宮(厚木市在住)です。

フォローありがとうございます。

Taketoshi Sano wrote:
> :


> # BIOS setting
> disk = /dev/sda
> bios = 0x83
>
> だけを追加してみてください。これで状況に変化があるだろうと思います。

順序は逆ですが、実行結果は
Loading slack
のメッセージの後、固まりました。

> :

> lilo -v -v -v とすると /dev/sda などのデバイスファイル名と
> lilo が推定した BIOS call のドライブ番号 (0x80,0x81 など) との
> 対応を見ることができます。

すべてのメッセージを捕まえることが出来ませんでした。ウィンドウに
キューイングできたのは次のようです。
Caching device /dev/sda4 (0x0804)
Caching device /dev/sda5 (0x0805)
Caching device /dev/sda6 (0x0806)
Caching device /dev/sda7 (0x0807)
Caching device /dev/sda8 (0x0808)
Caching device /dev/sdb (0x0810)
Caching device /dev/sdb1 (0x0811)
Caching device /dev/sdb2 (0x0812)
Caching device /dev/sdb3 (0x0813)
Caching device /dev/sdb4 (0x0814)
Caching device /dev/sdb5 (0x0815)
Caching device /dev/sdb6 (0x0816)
Caching device /dev/sdb7 (0x0817)
Caching device /dev/sdb8 (0x0818)


Reading boot sector from /dev/hda
Merging with /boot/boot.b

Caching device /dev/hdc1 (0x1601)


Warning: BIOS drive 0x82 may not be accessible

Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
63 sectors. Partition offset: 63 sectors.
Secondary loader: 8 sectors.


Warning: BIOS drive 0x82 may not be accessible

Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
63 sectors. Partition offset: 63 sectors.
Mapping message file /boot/boot_message.txt


Warning: BIOS drive 0x82 may not be accessible

Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
63 sectors. Partition offset: 63 sectors.
Message: 1 sector.


Boot other: /dev/hda1, on /dev/hda, loader /boot/chain.b

Device 0x0301: BIOS drive 0x80, 255 heads, 2055 cylinders,
63 sectors. Partition offset: 63 sectors.
Device 0x0300: BIOS drive 0x80, 255 heads, 2055 cylinders,
63 sectors. Partition offset: 0 sectors.
Mapped 6 (4+1+1) sectors.
Added win98 *
<dev=0x82,hd=3,cyl=249,sct=129>
Boot image: /vmlinuz


Warning: BIOS drive 0x82 may not be accessible

Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
63 sectors. Partition offset: 63 sectors.
Setup length is 7 sectors.
Mapped 1551 sectors.
Added Linux
<dev=0x82,hd=3,cyl=249,sct=132>
"ro root=1601"
Boot image: /Slack_4/bzImage-2.2.6


Warning: BIOS drive 0x82 may not be accessible

Device 0x0801: BIOS drive 0x82, 255 heads, 524 cylinders,
63 sectors. Partition offset: 63 sectors.
Setup length is 4 sectors.
Mapped 1262 sectors.
Added slack
<dev=0x82,hd=3,cyl=249,sct=160>
"ro root=801"
Boot image: /Slack_4/bzImage-2.3.18


Warning: BIOS drive 0x82 may not be accessible

Device 0x0801: BIOS drive 0x82, 255 heads, 524 cylinders,
63 sectors. Partition offset: 63 sectors.
Setup length is 5 sectors.
Mapped 1486 sectors.
Added slack-2318
<dev=0x82,hd=3,cyl=249,sct=175>
"ro root=801"
Boot image: /Slack_4/bzImage-0112


Warning: BIOS drive 0x82 may not be accessible

Device 0x0801: BIOS drive 0x82, 255 heads, 524 cylinders,
63 sectors. Partition offset: 63 sectors.
Setup length is 5 sectors.
Mapped 1488 sectors.
Added slack-s
<dev=0x82,hd=4,cyl=249,sct=137>
"ro root=801"
Boot image: /RedHat/vmlinuz


Warning: BIOS drive 0x82 may not be accessible

Device 0x0805: BIOS drive 0x82, 255 heads, 524 cylinders,
63 sectors. Partition offset: 4899888 sectors.
Setup length is 7 sectors.
Mapped 2017 sectors.
Added NewSW7
<dev=0x82,hd=4,cyl=249,sct=174>
"ro root=805"


Boot other: /dev/hdb6, on /dev/hdb, loader /boot/chain.b

Device 0x0346: BIOS drive 0x81, 255 heads, 2737 cylinders,
63 sectors. Partition offset: 0 sectors.
Can't get magic number of /dev/hdb6
Removed temporary file /boot/map~

また、リダイレクションで取りこむと(少し「長いですが)、


Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
Warning: BIOS drive 0x82 may not be accessible
LILO version 21, Copyright 1992-1998 Werner Almesberger

Caching device /dev/hda (0x0300)
Caching device /dev/hda1 (0x0301)
Caching device /dev/hda2 (0x0302)
Caching device /dev/hda3 (0x0303)
Caching device /dev/hda4 (0x0304)
Caching device /dev/hda5 (0x0305)
Caching device /dev/hda6 (0x0306)
Caching device /dev/hda7 (0x0307)
Caching device /dev/hda8 (0x0308)
Caching device /dev/hdb (0x0340)
Caching device /dev/hdb1 (0x0341)
Caching device /dev/hdb2 (0x0342)
Caching device /dev/hdb3 (0x0343)
Caching device /dev/hdb4 (0x0344)
Caching device /dev/hdb5 (0x0345)
Caching device /dev/hdb6 (0x0346)
Caching device /dev/hdb7 (0x0347)
Caching device /dev/hdb8 (0x0348)
Caching device /dev/sda (0x0800)
Caching device /dev/sda1 (0x0801)
Caching device /dev/sda2 (0x0802)
Caching device /dev/sda3 (0x0803)
Caching device /dev/sda4 (0x0804)
Caching device /dev/sda5 (0x0805)
Caching device /dev/sda6 (0x0806)
Caching device /dev/sda7 (0x0807)
Caching device /dev/sda8 (0x0808)
Caching device /dev/sdb (0x0810)
Caching device /dev/sdb1 (0x0811)
Caching device /dev/sdb2 (0x0812)
Caching device /dev/sdb3 (0x0813)
Caching device /dev/sdb4 (0x0814)
Caching device /dev/sdb5 (0x0815)
Caching device /dev/sdb6 (0x0816)
Caching device /dev/sdb7 (0x0817)
Caching device /dev/sdb8 (0x0818)


Reading boot sector from /dev/hda
Merging with /boot/boot.b

Caching device /dev/hdc1 (0x1601)
Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
63 sectors. Partition offset: 63 sectors.
Secondary loader: 8 sectors.
Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
63 sectors. Partition offset: 63 sectors.
Mapping message file /boot/boot_message.txt
Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
63 sectors. Partition offset: 63 sectors.
Message: 1 sector.


Boot other: /dev/hda1, on /dev/hda, loader /boot/chain.b

Device 0x0301: BIOS drive 0x80, 255 heads, 2055 cylinders,
63 sectors. Partition offset: 63 sectors.
Device 0x0300: BIOS drive 0x80, 255 heads, 2055 cylinders,
63 sectors. Partition offset: 0 sectors.
Mapped 6 (4+1+1) sectors.
Added win98 *
<dev=0x82,hd=3,cyl=249,sct=129>
Boot image: /vmlinuz
Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
63 sectors. Partition offset: 63 sectors.
Setup length is 7 sectors.
Mapped 1551 sectors.
Added Linux
<dev=0x82,hd=3,cyl=249,sct=132>
"ro root=1601"
Boot image: /Slack_4/bzImage-2.2.6
Device 0x0801: BIOS drive 0x82, 255 heads, 524 cylinders,
63 sectors. Partition offset: 63 sectors.
Setup length is 4 sectors.
Mapped 1262 sectors.
Added slack
<dev=0x82,hd=3,cyl=249,sct=160>
"ro root=801"
Boot image: /Slack_4/bzImage-2.3.18
Device 0x0801: BIOS drive 0x82, 255 heads, 524 cylinders,
63 sectors. Partition offset: 63 sectors.
Setup length is 5 sectors.
Mapped 1486 sectors.
Added slack-2318
<dev=0x82,hd=3,cyl=249,sct=175>
"ro root=801"
Boot image: /Slack_4/bzImage-0112
Device 0x0801: BIOS drive 0x82, 255 heads, 524 cylinders,
63 sectors. Partition offset: 63 sectors.
Setup length is 5 sectors.
Mapped 1488 sectors.
Added slack-s
<dev=0x82,hd=4,cyl=249,sct=137>
"ro root=801"
Boot image: /RedHat/vmlinuz
Device 0x0805: BIOS drive 0x82, 255 heads, 524 cylinders,
63 sectors. Partition offset: 4899888 sectors.
Setup length is 7 sectors.
Mapped 2017 sectors.
Added NewSW7
<dev=0x82,hd=4,cyl=249,sct=174>
"ro root=805"


Boot other: /dev/hdb6, on /dev/hdb, loader /boot/chain.b

Device 0x0346: BIOS drive 0x81, 255 heads, 2737 cylinders,
63 sectors. Partition offset: 0 sectors.
Can't get magic number of /dev/hdb6
Removed temporary file /boot/map~

これらから見ると、/dev/hdc1と/dev/sda1が0x82でバッティング
しているようです。

Taketoshi Sano

unread,
Jan 20, 2000, 3:00:00 AM1/20/00
to
佐野@浜松です。

In article <3885C2D2...@hi-ho.ne.jp>,
at Wed, 19 Jan 2000 22:57:38 +0900,


on Re: lilo trouble,
Kunio San-nomiya <san...@hi-ho.ne.jp> さん writes:

> Taketoshi Sano wrote:
> > :
> > # BIOS setting
> > disk = /dev/sda
> > bios = 0x83
> >
> > だけを追加してみてください。これで状況に変化があるだろうと思います。

これは LILO の global section, つまり

</etc/lilo.conf.save>
# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
boot = /dev/hda

このすぐ後とか、あるいは

message = /boot/boot_message.txt
prompt
timeout = 120
default = win98

このあたりなど、

# End LILO global section

の行の前に入れておかないといけませんが、それは大丈夫ですよね。

この設定を入れた後で、 lilo -v -v -v を実行して、その結果を
以前のものと比較してみてください。

> Boot image: /Slack_4/bzImage-2.2.6
> Device 0x0801: BIOS drive 0x82, 255 heads, 524 cylinders,
> 63 sectors. Partition offset: 63 sectors.
> Setup length is 4 sectors.
> Mapped 1262 sectors.
> Added slack
> <dev=0x82,hd=3,cyl=249,sct=160>
> "ro root=801"

この Device 0x0801 に対する BIOS drive が 0x82 から 0x83 に
変化しているはずです。

> 順序は逆ですが、実行結果は
> Loading slack
> のメッセージの後、固まりました。

この "Loading slack" は lilo の second.S にあるコードです。
つまり lilo は動作しているけれども、指定されたカーネルの正しい位置を
認識できておらず、間違った場所のデータをカーネルだと思い込んでロード
してしまい、停止してしまっている状態です。

念のために /dev/sda が BIOS drive 0x84 としてアクセスできるかどうか、
つまり上記の lilo.conf への追加を

disk = /dev/sda
bios = 0x84

にして lilo -v -v -v の表示の確認と /dev/sda 上のシステムの起動とを
試してみてください。

> Caching device /dev/hdc1 (0x1601)
> Device 0x1601: BIOS drive 0x82, 9 heads, 14848 cylinders,
> 63 sectors. Partition offset: 63 sectors.
> Secondary loader: 8 sectors.

これは lilo の second.S のコードが BIOS drive 0x82 からロードされる
ことを示しています。Secondary loader が正しくロードされなければ、
どのシステムも起動できなくなるので、 /dev/hdc1 (0x1601) が
BIOS から drive 0x82 としてアクセスできることは確実だと思われます。

> Boot image: /Slack_4/bzImage-2.2.6
> Device 0x0801: BIOS drive 0x82, 255 heads, 524 cylinders,
> 63 sectors. Partition offset: 63 sectors.
> Setup length is 4 sectors.
> Mapped 1262 sectors.
> Added slack
> <dev=0x82,hd=3,cyl=249,sct=160>
> "ro root=801"

/dev/hdc が BIOS drive 0x82 なので、/dev/sda は (もし BIOS から
アクセスできるとすれば) それ以外の番号、例えば 0x83 や 0x84 など
になると思います。

/dev/hda は 0x80、/dev/hdb は 0x81 としてアクセスできていた
ことから、0x80, 0x81 ではありえないでしょう。

ちょっと気になるのが /dev/hdd にある CD-ROM の扱いです。
これが BIOS から 0x82 として認識されているようなら、
/dev/sda は 0x83 になると思います。

/dev/hdc に CD-ROM を接続して、/dev/hdd には何も接続していなかった
時には、おそらく BIOS drive 0x82 で /dev/sda にアクセスできていたと
思われるので、/dev/hdc にディスクを接続すればひとつずれて 0x83 で
/dev/sda にアクセスできるものと推定したのですが、もしかすると
/dev/hdc にディスクを接続したことによって 0x82 と 0x83 が両方とも
IDE 用に keep され、/dev/sda は 0x84 になっているのかもしれません。

Kunio San-nomiya

unread,
Jan 20, 2000, 3:00:00 AM1/20/00
to
三宮(厚木市在住)です。

Taketoshi Sano wrote:
>
> 佐野@浜松です。
ありがとうございました。おかげでうまくブートできるようになり
ました。

> :

> # End LILO global section
>
> の行の前に入れておかないといけませんが、それは大丈夫ですよね。

(ドッキ!)ここで、間違えたようです。"# End ... "の次の行に入
れたようです。

>
> この設定を入れた後で、 lilo -v -v -v を実行して、その結果を
> 以前のものと比較してみてください。

> :

> この Device 0x0801 に対する BIOS drive が 0x82 から 0x83 に
> 変化しているはずです。

確かに、
Boot image: /Slack_4/bzImage-2.2.6
Device 0x0801: BIOS drive 0x83, 255 heads, 524 cylinders,


63 sectors. Partition offset: 63 sectors.
Setup length is 4 sectors.
Mapped 1262 sectors.
Added slack

となりました。

> :
> disk = /dev/sda


> bios = 0x84
>
> にして lilo -v -v -v の表示の確認と /dev/sda 上のシステムの起動とを
> 試してみてください。

BIOS drive 0x84 と変わっていましたが、
Error 0x01
が発生し、ブートできませんでした。

おかげさまで、/dev/hda1、/dev/hdb2、/dev/hdc1、/dev/sda1、
/dev/sda5からブートできるようになりました。
/dev/hdc1でのlilo.confファイルは以下のごとくです(いろいろ実験
し、kernelを入れ替えたために、投稿の最初と変わりました)。

# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
boot = /dev/hda

disk = /dev/sda
bios = 0x83

message = /boot/boot_message.txt
prompt
timeout = 120
default = win98

# Normal VGA console
vga = normal

# DOS bootable partition config begins
other = /dev/hda1
label = win98
table = /dev/hda
# DOS bootable partition config ends
# Linux bootable partition config begins
image = /vmlinuz
root = /dev/hdc1
label = Linux
read-only

# Slackware Linux 2.2.6 bootable
image = /Slack_4/bzImage-2.2.6
root = /dev/sda1
label = slack
read-only

# Slackware-7.0 Linux 2.2.13


image = /RedHat/vmlinuz
root = /dev/sda5
label = NewSW7
read-only

# FreeBSD 3.2 bootable partition confg begins

image = /vmlinuz
root = /dev/hdb2
label = dummy
read-only

# LILO script end

0 new messages