liloが使えない状況でのloadlinを使ったHDDからのデュアルブート
Linux マシンをBOOTするためには
1. FDDから起動する。
2. MBR から Lilo(linux loader)を使って起動。
3. DOS を一度起動してから Loadlin.exe を使う。
という、3つの方法があることはご存知かと思います。
まぁ、私は細かいことは知らないので
JFの文書の中から
Lilo-Mini Howto
Lilo-FAQ
Loadlin関係の文書
なんかを御覧いただくというのは基本であります。
LiloもLoadlinも、メジャーなディストリビューションには入ってます。
ここで、Liloが正常に作動する場合(Linuxと他のOSともに選択できる)
は良いのですが、Liloが使えない場合もままあります。
たとえば、私の家のマシンではIDEディスクの hda の頭から
420 MByte の場所に /dev/hda2 をLinuxのrootパーティションに
しているのですが、liloが使えませんでした。
シリンダの数え方が違うからなんでしょうかいな。ちなみにうちの
HDDは Quantum の Fireball の 1.6G のものですが。
ということで、面倒なので Loadlin を使うわけですが、
まさか毎回、一度 DOS なり Windows をしっかり起動してから
DOSプロンプトでおもむろに
C:\Loadlin
なんてやるのは疲れます。
ということで、DOS が起動するときに最初に読む Config.sys の内容を
書き換えて、マシンの電源を入れたら Linux か Windows かどちらを
起動するか選べるようにします。
C:\confyg.sys を以下のように書き換えます。
[MENU]
MENUITEM=LINUX,Boot_Linux
MENUITEM=DOS,Boot_Win95
[LINUX]
SHELL=C:\LINUX\LOADLIN.exe C:\LINUX\VMLINUZ root=/dev/hda3 ro sbpcd=0x230,SoundBlaster
[DOS]
device=C:\WINDOWS\himem.sys
device=C:\WINDOWS\EMM386.EXE RAM
devicehigh=C:\WINDOWS\biling.sys
devicehigh=C:\WINDOWS\jfont.sys /p=C:\WINDOWS
devicehigh=C:\WINDOWS\jdisp.sys /HS=LC
devicehigh=C:\WINDOWS\jkeyb.sys /106 C:\WINDOWS\jkeybrd.sys
devicehigh=C:\WINDOWS\kkcfunc.sys
devicehigh=C:\WINDOWS\ansi.sys
ここでは、C:\LINUX 以下に Loadlin.exe と VMLINUZ(カーネル)があると
しています。また、このマシンは SoundBlaster の CD-ROM ドライブを
持っているので、それもカーネルパラメータとして渡しています。
ここらへんは、普通に(DOSプロンプトで)Loadlinを起動してみて、
パラメータの調節はしておきます。
手動で Loadlin によって BOOT 出来ない限り、このように config.sys
を書き換えるのは危険ですのでやめましょう。
上の[DOS]以下は、もともとのConfig.sysの内容をそのまま写します。
この方法では、当然一度 DOS を起動しようとして、config.sys を
読みにいった後で Loadlin 経由で Linux が起動されるわけですから、
Windowsの場合、MS社のロゴが嬉しそうに出て来ます。
これの実体は C:\Logo.sys です。でもって、これは
大きさが 320x400 ピクセルのただのBMPファイルです。
なので、こんな絵と置き換えたら
MS社 のロゴを見ずに済みます。