PCG-505V/ABX に Windows と Linux を入れてみる

HARDWARE REPORT


VAIO PCG-505V/ABX

SONY の VAIO PCG-505V/ABX というノートパソコンのハードディスクを 30GB にしてみたので、Widnows 2000 Professional と Linux Slackware 8.1 とのデュアルブートをやってみることにしました。

 

この PCG-505V/ABX のスペックは大雑把に書くと次のような感じです。

CPU MMX Pentium 300MHz
MEMORY 64MB + 64MB (増設)
解像度 XGA ( 1024x768 )
インターフェイス USB 1.1 / IEEE
CD-ROM 外付け ATAPI CD-ROM
FDD 外付け FDD
HDD IDE (ATA/33) 30GB (自力で取替え)
サイズ B5 ノート (厚さ 2cm ほど)

けっこう古い PC ですけど、XGA で表示できること、ほぼ全てが外付けのために小型であることがとっても気に入っています。

 

なお、ハードディスクを自力で交換したときのお話は PCG-505V/ABX のハードディスクを交換してみる で触れています。

また、8GB を超えるハードディスクへ Slackware 8.1 をインストールするとき必要なお話は EZ-NET: 8GB よりも後ろの領域に Slackware 8.1 をインストール にて触れてみました。

 

今回のお話はそれの続きで、まっさらのハードディスクにプレインストール Windows 98 を復旧し、改めて Linux Slackware 8.1 をインストールするという流れの予定です。

 

インストールする OS の用意

Windows 2000 Professional

インストールする Windows 2000 Professional は、Windows 2000 Developer に付属していた Windows 2000 Professional を使用します。

 

Linux Slackware 8.1

http://www.slackware.com/ にて公開されていた Slackware 8.1 の ISO イメージを CD-R に焼いたものを使用します。

 

Vine Linux 2.1 CR

Vine Linux は、以前に店頭で購入した製品パッケージを利用します。

 

ディスク構成

今回はパーティションを次のように分割します。

Partition 01 8192MB Windows 2000 Professional をインストールするのに使用する予定です。
Partition 02 4096MB Slackware 8.1 をインストールするのに使用する予定です。
Partition 03 8192MB Vine Linux 2.1CR をインストールするのに使用する予定です。
Partition 04 256MB Linux スワップ用に使用する予定です。
Partition 05 512MB Windows スワップ用に使用する予定です。
Partition 06 残りすべて 各 OS で共用する予定です。

 

とりあえずこれを、Slackware 8.1 の起動ディスクにて Linux を起動し、cfdisk にて区切りました。

Name Flags Part Type FS Type label Size (MB)
hda1 Boot Primary WIN95 FAT32 (LBA)   10241.93
hda2   Primary Linux   4095.23
hda3   Primary Linux   8190.45
hda5   Logical Linux swap   255.47
hda6   Logical FAT16   510.94
hda7   Logical WIN95 FAT32   6711.83

今回のように複数の OS を起動させるような場合、Boot フラグはどうしたらいいのかよく分らないです。何も設定しないと MBR によるブートが出来なくなるような警告が表示されたので、とりあえず hda1 に付けてみました。

 

Windows 2000 Professional をインストール

今回は、Windows 2000 Professional の起動プログラムである NTLDR を利用してマルチブートを行ってみることにします。

なので最初に Windows 2000 Professional をインストールします。

 

CD-ROM から Windows 2000 のセットアップを起動することが出来ますので、CD-ROM ドライブへ Windows 2000 Professional の CD-ROM を入れてコンピュータを再起動します。

インストールするパーティションは一番先頭の 10GB のパーティションを選択して、NTFS フォーマットにて初期化を行います。

 

Slackware 8.1 インストール準備

続いて Slackware のインストールなのですけど、後ろの方 (8GB 以降) の領域へ CD-ROM から Slackware 8.1 をインストールしようとすると不具合が出るようです。

なので先ほどインストールした Windows 2000 を使って E: (/dev/hda7) へ Slackware 8.1 のディスクをコピーしてそれを使うことにします。なお、Slackware 8.1 のインストールで使用できるように、コピー先は FAT または FAT32 で初期化しておきます。

 

ただし、ここで注意しなくてはいけないことがあります。

それは Windows 2000 で CD-ROM の中身を見たときと、Linux で CD-ROM の中身を見たときとでは、一部のファイルの名前が違ってしまうことです。

違ったままだとインストール中にエラーが出てしまうことがあるので、その違いを取り除かなくてはいけません。

 

 

まずは Windows 2000 を立ち上げて、ハードディスクへ CD-ROM の内容をコピーします。そうしたらコマンドプロンプトを立ち上げて、次のように操作します。

 

なお、ここでは E: へファイルがコピーされているものとします。

ren E:\SLAKWARE\KDE1\KDI_*.TGZ KDI-*.TGZ

修正するのはこれだけでいいような感じですが、もしかするとこれ以外にもあるかもしれません。一応、これだけの修正でフルインストールがエラーなく終わりました。

 

Slackware 8.1 のインストール

今回は NTLDR を使ってのマルチブートの予定なので、とりあえずは普通に Linux をインストールしてしまいます。

Windows 2000 上では E: として認識されている hda7 を FAT32 にて初期化して、そこへ Slackware 8.1 インストール CD-ROM の全内容をコピーします。

そして、Slackware 8.1 のインストール CD-ROM を使って Linux を起動して、セットアップ作業に入ります。なお、今回は CD-ROM 起動時に "bare245.i" を指定してみました。

 

そしてインストール開始です。今回はスワップとして /dev/hda5 を、インストール先として /dev/hda2 を指定しました。

そして注意点としては、ソースメディアの指定の時には、"Install from a hard drive partition" から /dev/hda7 を指定して、そこの "/slakware" からインストールを行います。

また、LILO ブートローダは MBR へインストールします。

 

インストールが終わったら、CD-ROM を取り出して再起動し、インストールした Slackware を起動します。

今回は NTLDR でマルチブートの予定だったのですけど、このようなインストール方法をとったところ、自動的に LILO から Windows 2000 も起動できるように調整されていました。

Windows と Linux の共存もずいぶん楽になったみたいですね。

 

NTLDR を調整する

さて一応は今回の目的でもあるので、NTLDR へ Linux を登録させてみます。

 

まずはインストールした Linux を起動して、/etc/lilo.conf を書き換えます。

#boot = /dev/hda

boot = /dev/hda2

最初の方にある boot = の行の /dev/hda を /dev/hda2 とします。hda2 というのは、今起動している Linux がインストールされたパーティションです。

書き換えたら、

lilo

として変更を反映させます。

 

そのあと、次のようにして /dev/hda2 のブートセクタをファイルへ書き出します。

それを Windows のドライブへコピーする必要があるため、今回はフロッピーディスクを /floppy にマウントしてそこへ書き出すことにします。

mkdir /floppy

mount /dev/fd0 /floppy

 

dd if=/dev/hda2 bs=512 count=1 of=/floppy/slackware.boot

 

そうしたらいったん Linux を終了して、今度は Windows 2000 を起動します。

今度は NTLDR の調整を行いますので、まずは NTLDR から起動するように設定を直す必要があります。

Windows 2000 Professional のインストール CD-ROM を使ってコンピュータを起動して、最初のメニューで "R" を押して Windows 2000 の復旧手続きに入ります。

修復には回復コンソールを使用しますので、続いて "C" で回復コンソールを立ち上げます。

 

復旧は簡単で、コマンドラインから

fixmbr

を実行すれば完了です。

そしてコンピュータを再起動すれば、Slackware 8.1 をインストールする前のように、普通に Windows 2000 が起動するようになります。

 

Windows 2000 が起動したら、C: ドライブへ、先ほどフロッピーに作成した slackware.boot をコピーします。

 

そして boot.ini ファイルに次の行を追加します。最後の行でいいようです。

c:\slackware.boot="Linux Slackware 8.1"

この boot.ini ファイルは、フォルダオプションで ”保護されたオペレーティングシステムファイルを表示しない” にチェックが入っていると見えないので気をつけましょう。

 

そして Windows 2000 を再起動してみると、起動時に "Microsoft Windows 2000 Professional" と "Linux Slackware 8.1" とが選べるようになりました。

 

Vine Linux 2.1CR のインストール

そしてもうひとつ、Vine Linux 2.1CR のインストールを行います。

まずはインストール CD-ROM を使ってコンピュータを起動します。今回の環境の場合、Vine Linux 2.1CR においても、そのままでは CD-ROM を認識してくれません。

linux ide2=0x180,0x386

と起動時に打ち込むことによって、CD-ROM ドライブを利用できる状態にします。

 

あとは順調にインストールは続けられます。インストール先のパーティションは hda3 として、スワップは Slackware の時と同様の hda5 とします。

LILO の設定ですけど、既に Slackware 8.1 が起動可能な状態なので、今回は MBR ではなく /dev/hda3 のブートセクタへ書き込むことにします。

 

 

インストールが完了してコンピュータが再起動すると、Vine Linux は起動せずに NTLDR による起動の選択画面になります。

ここでひとつ前にインストールした Slackware 8.1 を起動させます。

 

そして Slackware の時と同じように Vine Linux のインストールされた /dev/hda3 のブートセクタを書き出せばよさそうだったのですが、やってみたところ失敗でした。

どうやら、Vine Linux のインストールがうまくいっていなかったようです。

 

ただ、LILO のインストールに失敗しているだけのようなので、とりあえず Slackware 8.1 の LILO を調整して Vine Linux を起動できるようにします。

 

image = /boot/vmlinuz

label = Vine

root = /dev/hda3

read-only

このような設定を /etc/lilo.conf に設定したら、次のようにして lilo を更新し、ブートセクタを書き出します。

 

lilo

 

dd if=/dev/hda2 bs=512 count=1 of=/floppy/slackware.boot

そしてそれをまた、Windows 2000 を起動して C: へコピーします。

 

この手続きが終わったらもう一度 Slackware を起動すると、LILO の一覧に Vine という選択肢が追加されているのでそれを起動します。

 

そして無事に Vine Linux が起動したら、/etc/lilo.conf を修正します。

どうやら Vine Linux のインストール時に LBA サポートが抜けていたようなので、default=linux 辺りにでも、"lba32" という行を追加します。

boot=/dev/hda3

map=/boot/map

install=/boot/boot.b

prompt

timeout=50

message=/boot/message

append="apm=on"

default=linux

lba32

 

image=/boot/vmlinuz-2.2.17-0vl10

label=linux

read-only

root=/dev/hda3

 

あとは lilo を更新して、ブートセクタを書き出します。

lilo

dd if=/dev/hda3 bs=512 count=1 of=/floppy/vine.boot

そしてそれをまた C: にコピーして、boot.ini にて

c:\vine.boot="Vine Linux 2.1CR"

というように追加してやれば完成です。