2003/05/23 更新
当たり前のことではありますが、ここに書かれていることに関して、私は何ら正確性・安全性その他の保証を致しません。
(一応断っておきますと、私はWindowsXPをインストールするのはこれが初めてです。またLinuxに関してはほぼ「何も知らない」状態です)
この資料、あるいはリンク先を見て行う全てのことに関して、自己責任でお願いします。
SONY C1VS/BWで、WindowsXPとLinuxのデュアルブート環境を作ろう
SONY C1VS/BW(WindowsMeプリインストールモデル)でWindowsXP&Vine Linux2.6r1のデュアルブート環境を作ったときのメモです。
またやり直すハメに陥った際に手順を自分で確認することを主たる目的にしています。
・メモリ:192MB
・HDD:15GB
・FDD:なし
・CD-ROMドライブ:純正(ブート可)
・Windowsパーティション:FAT32(NTFSではない。WinMeからのアップデートだし)
WindowsMe → WindowsXPへのアップグレード
Linux用に、D:ドライブ(3GB)を領域開放
Linuxとのデュアルブートのために、WindowsXPにブートローダ(System Commander7.05(US版)をインストール
Linuxのインストール
X-Windowの設定
Windowsパーティションをマウントする(Linux)
Linuxパーティションをマウントする(Windows)
WindowsMe → WindowsXPへのアップグレード
- まずリカバリCDにてWindowsMeをリカバリする。このとき、パーティションサイズが変えられる。
デフォルトの設定だとHDDを2つのパーティションに分け、
と割り振られることになっている。これを
C: 10GB D: 5GB
としたい(Dドライブは後で領域を開放し、Linuxをインストールする)
C: 12GB D: 3GB
パーティション分割の割合を変えるには、リカバリCDが起動して出てくるメニュー
1.フォーマットしてリカバリ...
2.パーティションサイズの変更...
3.出荷時状態へリカバリ...
4.システムリカバリCD-ROMを終了する...
で、2. を選択。 次に出てくるメニュー
パーティションサイズの変更
1.Cドライブを4GBとし、残りをDドライブにする
2.Cドライブを6GBとし、残りをDドライブにする
3.Cドライブを8GBとし、残りをDドライブにする
4.Cドライブを10GBとし、残りをDドライブにする(出荷時設定)
5.Cドライブを12GBとし、残りをDドライブにする
6.Cドライブを14GBとし、残りをDドライブにする
7.ハードディスクのすべての領域をDドライブにする
にて、5.を選ぶ。
- WinXPへのアップグレードの前にアンインストールするソフト
【PowerPanel】……タスクトレイのバッテリアイコンを閉じてから
【VAIOオンラインカスタマー登録】
【Sony Notebook Setup】
【Adobe Acrobat4.0】
【QuickTime】
【OpenMG】
【OpenMG Jukebox】
【OpenMG Jukebox Plug-in (MG Memory Stick Slot)】
【Music Visuializer for OpenMG Jukebox】
【DVgate】……アップグレードキットのマニュアルには載っていないが、これも外せと怒られる。
- 「サプリメントCD-ROM for Windows XP 1/3」を実行。
- BIOSアップデート
当然一度しかやる必要がないので、事実上不要。
- WindowsXPのインストール。これだけで1.5〜2時間ほどかかる。
- XPを入れてからアップデートするドライバ・ユーティリティ
【Audio Driver (YAMAHA YMF754)】
「サウンド・ビデオ。およびゲームコントローラ」の「YAMAHA native DS1 WDM Driver」を更新。在処はC:\Drivers\Audio\YDSXSDK.inf
【Modem Conexant RH56LD/RMH56】
「HCF 56K Modem」を更新。在処はC:\Drivers\Modem。「Conexant HCF PCI Modem」を選択。
【MOTION EYE Camera Capture Driver】
「その他のデバイス」→「マルチメディアコントローラ」を更新。在処はC:\Drivers\Capture。エラーが出ても次回起動より使えるようになる。
【Stick-type Pointing Device Driver】
「PS/2互換マウス」を更新。在処はC:\Drivers\Stick。Windowsテストに合格してない云々と言われるが、「続行」を選択。
【Video Driver (ATI RAGE Mobility-M1)】
C:\Drivers\Video\Setup.exeを実行。
C:\XPUpgradeにも、いくつかソフトがある。
- 「サプリメントCD-ROM for Windows XP 2/3」「 同 3/3」を実行
Linux用に、D:ドライブ(3GB)を領域開放
- (Win98などの起動ディスクでできるがFDDがないので)別のマシンで作っておいたブートCD(B's Recorder&Win98の起動ディスクで作成)のFDISKにて領域開放。
(これから使うSystem CommanderにもFDISK機能はあるはずだが、あまり信用してない)
Linuxとのデュアルブートのために、WindowsXPにブートローダ(System Commander7.05(US版)をインストール
(あまり意味がないので他の人にはオススメしません。違うやり方を採用すべきです)
- ブートローダがいろいろある中、Sysytem Commanderにした理由はメニュー画面のきれいさだけ。(^^;;
ここで注意すべき(?)はSysytem Commanderのバージョン。
7.05(英語版)にした理由は、いくつかある。できればそれ以前のバージョンは使いたくないな。
まず日本版のシステムコマンダー7は、どうやらATIのビデオチップに対応していない。
Q. ATI社製のビデオチップを使用したVideoカードではテキストモードでしか表示する事ができない。
A. システムコマンダー 7はVESA対応のVideoカードでしたらば問題無くOS選択メニューをグラフィックモードで表示する事が出来ますが、ATI社製のビデオチップを使用したVideoカードではテキストモードでしか表示する事が出来ません。
ATI社製のビデオチップはVESAに対応しておりますが、ビデオチップがシステムコマンダー 7からの読み込み要求を禁止している為に起ります。
この様な場合、システムコマンダー 7インストール後PCを再起動すると御使用のVideoカードがVESAに対応していない旨のメッセージが出て来ますが、テキストモードでシステムコマンダー 7が動作する為、全く問題無く御使用頂く事が可能です。
尚、この問題については現在ATI社と協議中ですが、次期バージョンにて対応予定です。
悲しいことに、このVAIO C1VS/BWにはATIのチップが使われている。
ここに書かれているとおりテキストモードでの起動はできるようだが、見た目で選びたい私はそれだったら別のブートローダを使う。(^^;
7.02(英語版)以降はATIのチップにも対応したようだが、どうやら日本版は対応バージョンはないみたい(日本版発売元のサイトにはアップデートモジュールは見あたらない→代理店がプロトンからライフボートに変わっている。しかしどちらにも見あたらない)
というわけで、日本版は却下。
じゃあ7.02以降の英語版でいいのかというと……。きっとちゃんと使える人には大丈夫だと思うんだが、私はちょっと難しそう。
一般的に、LILO(Linuxに標準でついてくるブートローダ)以外のブートローダを使っている場合、LILOをマスターブート領域にインストールしてはいけないことになっている。LILOがその(既にMBRにある)ブートローダを上書きしてしまうから。
というわけで、他のブートローダを使っているときはLILOはMBRではなくルートパーティションの先頭にインストールせねばならない。
とっころがぁ。
そうすると、System CommanderがLinuxのインストールを認識してくれないのだ。
論理ドライブ(物理的に違うドライブではなく、パーティションで切った区画)にLinuxをインストールすると、System Commanderに自動認識されないのだそうだ(他のOSや、Linuxでも物理ドライブにインストールした場合は自動認識され、勝手にブートメニューに加えられる)。
そうなった場合、メーカーサイトによると以下の方法を試せばLinuxが認識されるようだが、これをやってもできないことも多いようだ。
From the OS Selection menu, press (Alt-S) for the Settings options.
Select the Order Add and Remove menu.
Press Alt-A to Add.
Select the Partition option.
Highlight the Linux Native or UNIX-83 partition.
Press Alt-T to toggle the bootable status of the selected partition to Yes.
Return to the OS Selection menu, the selected partition will now appear.
ああそんなにめんどくさいなら素直に違うのを使おうと思っていたら、こんな記述が。
If you installed LILO using the MBR method, when you complete the Linux installation, System Commander will NOT appear upon reboot. This is not a major problem. From the LILO boot menu, choose to boot into the operating system where System Commander was installed. Upon booting into this OS, System Commander will automatically re-enable our OS Selection menu and capture LILO into a file named C:\MBR_LILO.DAT. Note: this function is only available with System Commander 7.04 and above. This will also work if System Commander (v7) is installed into a FAT or FAT32 partition.
つまり、7.04以降はLILOをMBRにインストールしても大丈夫になったらしい。こりゃラクだぞきっと。(^O^)
(Linuxのインストールが完了してリブートしたらSystem Commanderが立ち上がらくなってるけど、まあ気にしなさんな。(Linuxインストールの途中で)LILOを設定するときに、デフォルト起動OSをSystem CommanderがインストールされているOS(ここではWinXP)に指定する。するとそのOSの起動時にSystem CommanderがLILOを取り込んで、ブートメニューにLinuxを加えてくれる……とかいう感じだろうか)。
System Commander使うなら断然7.04以降!ということで、軟弱な私は英語版の7.05を入手しインストールしてみた。
手順※これは少し後の話だけれど……。LILOのデフォルトOSがWinだと、System CommanderでLinuxを選んでからLILOでもLinuxを選ぶという二度手間なので、一度、lilo.confを編集してみた。……するとWinが起動しなくなり、WinMeから入れ直すハメになった。とほほ。
- WindowsXP上でSystem Commanderをインストール。
- 再起動後、Linuxをインストール(その際、LILOの設定ではデフォルト起動OSをWinにしておく。
※System Commanderのマニュアルでは「OS Wizard」を使ってパーティション切りとかやってインストールしろと書いてあるが、この通りやると必ず失敗した。(^^; 「OS Wizard」を使わずインストールしたらうまくいった。
- LILOからWinを選び、XPを起動させる。
ところが起動画面の途中でHardware errorが発生して起動しない。@_@
かなり焦ったが、再起動したらSytem Commanderが立ち上がり(メニューにはまだLinuxはない)、そこからWinが起動できた。一安心。
(しかし 私の環境では今でもLILOからのWin起動はできない。)- XPが立ち上がる。確認してみると、確かにC:\MBR_LILO.DATが存在する。よし。
- 再起動。System Commanderが立ち上がり、ちゃんとLinuxのペンギンがメニューに加えられている。クリックするとLILOが起動した。
- Linuxを選ぶ。Linux起動。素晴らしい。
Linuxのインストール
- VAIO純正CD-ROMドライブを使ってVine Linux 2.6r1のブートCDにてインストール。
で起動。(これを入力するときはキーボードは101配列で認識されているので、「=」の文字は日本語キーボードの「=」の右隣、「へ」と書かれたキーをshiftなしで叩き出す) いくつかのサイトでは最後に 「text」の文字を入れてテキストモードでインストールしなければいけないと書かれていたが、少なくとも私の環境ではグラフィカルモードで動いた。
boot: linux ide2=0x180,0x386
キーボード、マウス(キーボードの中に埋もれてるグリグリやるやつ)も問題なく認識されている。
- swap :300MB ←メモリの1倍〜2倍が目安という。
/boot :30MB ←最低20MBは必要だとインストーラに叱られた。
/ :残り
あまり根拠はないけれど。- インストールマニュアルには
「その他,/, /usr, /var, /homeなどとパーティションを分ける場合でも,/homeを「DISKいっぱいまで」にしておけば,ここで半端な領域の調整ができるようになります.ここがよくわからない場合,/, /boot, /homeとスワップのパーティションを作成すると良いでしょう.」
と書かれている。うむ。確かにさっぱりわからない。(^^;
結局 /usrやら /varというパーティションは要るのか要らないのか? 作ったらどういうメリットがあって、作らなかったらどういうデメリットがあるのか?(あるいはその逆)
かなり釈然としない気持ちでインストールしたが、何のことはない、インストールしてしまえば/, /usr, /var, /homeなどというパーティションは / 以下に全て作られるわけだ。いくつかのディレクトリを独立したパーティションにするかを聞いていたわけね。
そんなの初心者はわからんぞ。- マウス(PS/2の3ボタンマウス)、キーボード(日本語106)、ビデオチップ(ATI RAGE Mobility)は自動で認識される。ただしモニタはVaio C1シリーズのものは特殊(1024x480)なため、「Unknown」となる。ここでは640x480を選んでおいた。
X-Windowの設定
- インストール時に640x480を選んだのでX-Windowの設定はそのまんま使われている。1028x480の画面に640x480の画面を写すから、パチもんハイビジョンのワイドテレビのような、画面が横に引き延ばしされた状態になっている。
これはこれで味があるのは確かだが(^^;、やはり画面は広く使いたい。
- Vine Linux2.6のX-WindowはXFree86の4.xってので動いているのだそうで、そのConfigファイルは/etc/X11/XF86Config-4だそうだ。
「同じ機種でうまく動かせている人をWEB上で探して、その人が公開しているXF86Config-4を貰ってくるのがコツ」とアドバイスをもらった。
しかしネットを探すと、何故か同じ型番(PCG-C1VS/BW)を使っている人は多くないようだ。元の持ち主に聞くとこれは「隙間モデル」とのこと。ふぅん。とはいえ、同じ大きさのモニタだし、他の型番のものでもあんまり変わらんでしょ。
というわけで、ネットでVAIO C1を使っている人が公開してくれているXF86Config-4をいろいろ拾ってきて、片っ端からリネームして使ってみる。
動かない。
(このとき、いちいち再起動していたのを途中からログアウト→startxでやるようになったが、後で友人に聞くと「もっと手っ取り早いのは、Ctrl+Alt+Backspaceですね。……この方法だと、Xが暴走したときも結構 text console に戻ってくれる」とのこと。)
※私が試すとCtrl+Alt+Backspaceは使えなかった。 どうしてだろう? [Ctrl]+[Alt]+[Backspace]キーを無効にするなんてことはしてないんだけれど。
コンソールで使うコマンド(DOSとの対応表)
from DOS/Windows to Linux HOWTO の せっかちな人達へ より。
DOS Linux 注意書き ------------------------------------------------------------------------------ ATTRIB (+-)attr file chmod <mode> file 全く違う BACKUP tar -Mcvf device dir/ 同上 CD dirname\ cd dirname/ ほとんど同じ文法 COPY file1 file2 cp file1 file2 同上 DEL file rm file undelete がないことに注目 DELTREE dirname rm -R dirname/ 同上 DIR ls 全く同じ文法でもない DIR file /S find . -name file 完全に別物 EDIT file vi file 好きになれないと思いますよ jstar file DOS の edit のようです EDLIN file ed file 忘れましょう FORMAT fdformat, mount, umount 結構違う文法 HELP command man command, 同じコンセプト info command MD dirname mkdir dirname/ ほとんど同じ文法 MORE < file less file はるかに優秀 MOVE file1 file2 mv file1 file2 同上 NUL /dev/null 同上 PRINT file lpr file 同上 PRN /dev/lp0, /dev/lp1 同上 RD dirname rmdir dirname/ ほとんど同じ文法 REN file1 file2 mv file1 file2 複数ファイルだと違ってくる RESTORE tar -Mxpvf device 違う文法 TYPE file less file はるかに優秀 WIN startx 大違い!
どれだけやっても動かないので、これはおそらく私のやり方がマズいんだろうなと思い至る。そこでいくつかのファイルの中身を見て、いろいろ想像しながらやってみる。
軟弱者の私は、編集はWindowsマシンにて、ファイルの移動はフラッシュATAカードにておこなった(C1のフロッピードライブは持ってないので)が、大丈夫だった。とりあえず動いたXF86Config-4の設定(一部。あまり意味は分かってません)
Section "Monitor"
Identifier "Monitor0"
# ※1
# HorizSync 30-64
# VertRefresh 50-100
ModeLine "1024x480" 65.00 1024 1032 1176 1344 480 488 494 563 -hsync -vsync
Option "DPMS"
EndSection
Section "Device"
# Uncomment the following line to enable external display
# Option "crt_screen"
Identifier "ATI Rage Mobility"
Driver "ati"
VendorName "ATI Rage Mobility"
BoardName "ATI Rage Mobility"
#BusID
EndSection
Section "Screen"
Identifier "Screen0"
Device "ATI Rage Mobility"
Monitor "Monitor0"
# ※1の「Identifier」と一致しないといけないのだと思う。
DefaultDepth 16
# ↑24だと結構遅くなってしまうと聞いた。
SubSection "Display"
Depth 1
Modes "1024x480"
EndSubSection
SubSection "Display"
Depth 4
Modes "1024x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x480"
EndSubSection
SubSection "Display"
Depth 15
Modes "1024x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x480"
# virtual screen
Virtual 1024 768
# ↑これを入れると仮想ディスプレイになる。
EndSubSection
# ↑16をデフォルトにしてるわけだから、このSubSection以外要らないのかな?
SubSection "Display"
Depth 24
Modes "1024x480"
# virtual screen
Virtual 1024 768
EndSubSection
EndSection
Section "DRI"
Mode 0666
EndSection
以下、それぞれの解像度での見え具合。
アイコンの形を見ると、わかりやすいね。
640×480
1024×480
仮想1024×768
↑しかし仮想画面なので、実際に見えている範囲は、これ。↓
※ここ↑の画面は350×...の大きさに縮小しています。
おまけ
GNOME起動画面
640×480
1024×480
仮想1024×768
Windowsパーティションをマウントする(Linux)
私の場合、WindowsMeからのアップグレードなのでWindowsパーティションはFAT32。
起動時にWindowsパーティションをマウントするには/etc/fstabに以下の行を追加する。
/dav/hda1 /mnt/win vfat defaults,conv=a 0 0
デバイス名:/dav/hda1 ←WindowsのあるHDD
マウントポイント:/mnt/win ←フォルダ名は任意だが手動で作っておく必要がある(Windowsのように、「なければ勝手に作る」ということをしてくれないみたい。マウント時、ここで指定したフォルダが存在しなければマウントされなかった)
ファイルシステム:vfat ←FAT32なので
オプション:defaults ←起動時に自動的に読み込む設定
fat/vfatの専用オプション:conv=a 0 0 ←CRLF(Windowsでのテキスト形式)とNL(UNIXでのテキスト形式)の変換 b(inary) t(ext) a(uto)
Linuxパーティションをマウントする(Windows)
ext2fsnt(2000/NT/XP)というソフトを使った。
linuxパーティションを、Windows上のドライブとして認識してくれる。
Filesystems HOWTO
http://www.linux.or.jp/JF/JFdocs/Filesystems-HOWTO.html
中の
6. Extended ファイルシステム (ext, ext2, ext3)
http://www.linux.or.jp/JF/JFdocs/Filesystems-HOWTO-6.html
の
6.10 Windows NT から ext2 にアクセスする方法 (ext2fsnt)
http://www.linux.or.jp/JF/JFdocs/Filesystems-HOWTO-6.html#ss6.10
にリンクがある、↓のページ
http://prdownloads.sourceforge.net/ext2fsd/
で、
http://prdownloads.sourceforge.net/ext2fsd/ext2fsnt.rar
をダウンロードする。
readme.txtに書かれている通り、インストールの手順は
readme.txtの一部
:
installation:
copy ext2.sys to your %systemroot%\system32\drivers directory
ext2.sysを(通常は)c:\windows\system32\drivers\にコピー
merge ext2.reg file
ext2.regをダブルクリックする
reboot to update driver information
Windowsを再起動
edit go.cmd to point to your Linux drive
go.cmdをメモ帳などで開いて編集。ダブルクリックすると起動してしまうので注意。
run go.cmd
go.cmdを保存した後、ダブルクリックで実行。
:
となる。
XP初心者なのでわからなかったけれど、.cmdってのはバッチファイルなのね、きっと。
デフォルト状態のgo.cmd
@echo off rem rem ext2 device should be registered using ext2.reg file rem kloader ext2 rem rem link linux partition to Win32 namespace rem you should EDIT line below to point to correct partition. rem rem dosdev /a E: \Device\Harddisk0\Partition2
これの最後の行を変える(もちろんremも外す)。 ←「rem」はコメントアウトってことなので
パーティションに割り当てたいドライブレター:E:
linuxパーディションのある物理ハードディスク:Harddisk0
割り当てたいlinuxパーティション:Partition2
という規則なんでしょうね。
# /dev/hdaの数え方は1から始まるのに、これは0から始まるってことなのかな。
# まあどちらにしろHDDは1台しかないので間違いようがないが。
私の場合は現在、ドライブ0内のパーティションは
1:C (Windows)
2:/boot (Linux)
3:swap (Linux)
4:/ (Linux)
となっていて、
/ → Y:ドライブ
/boot → Z:ドライブ
と割り当てたいので
dosdev /a Y: \Device\Harddisk0\Partition4
dosdev /a Z: \Device\Harddisk0\Partition2
とした(もちろんドライブレターは任意。ただしあまり若い記号にすると、CD-ROMやらリムーバブルドライブと重なってややこしくなるかもしれない)。保存してインストール手順を踏むと、
こんな感じにマウントしてくれる。
いちいちマウントするのがイヤなのでgo.cmdをスタートアップに登録し、起動時に自動的にマウントするようにした。
当たり前のことではありますが、ここに書かれていることに関して、私は何ら正確性・安全性その他の保証を致しません。
(一応断っておきますと、私はWindowsXPをインストールするのはこれが初めてです。またLinuxに関してはほぼ「何も知らない」状態です)
この資料、あるいはリンク先を見て行う全てのことに関して、自己責任でお願いします。