前のマシンの調子がどうもおかしくて、先日とうとうウィルススキャン中に暴走したあげくWindowsシステムファイルの一部が破損した。Windowsの修復セットアップで一応動くようになったものの、今のWEB開発の仕事にはスペック的にきついことだし、よい機会と思って九十九電機のTS-jade 915Gを買ってきた。
方針
仕事用にWindows XP Professionalと、趣味+SELinuxの勉強用にFedora Core 3と、Solarisの勉強用にSolaris10を入れてみる。あとは気が向いたらFreeBSDも入れてみるつもりで、パーティションはこんな風に切ってみた。
パーティション | サイズ | 用途 | ID | フォーマット | マウント | |
---|---|---|---|---|---|---|
基本領域1 | 10GB | WinXP | 07 | NTFS | C: | |
基本領域2 | 5GB | Solaris | bf | - | / | |
基本領域3 | 5GB | 未定 | - | 未 | 未定 | |
拡張領域 | 残り全部 | 拡張 | 03 | - | - | |
- | 論理領域1 | 100MB | FC3 | 93 | ext3 | /boot |
- | 論理領域2 | 20GB | WinXP | 07 | NTFS | C:\Program Files |
- | 論理領域3 | 20GB | WinXP | 07 | NTFS | C:\Documents and Settings |
- | 論理領域4 | 20GB | WinXP | 07 | NTFS | C:\Backup |
- | 論理領域5 | 2GB | FC3 | 92 | swap | (swap) |
- | 論理領域6 | 20GB | FC3 | 93 | ext3 | / |
- | 論理領域7 | 10GB | FC3 | 93 | ext3 | /home |
- | 論理領域8 | 1GB | Solaris | bf | swap | (swap) |
- | 論理領域9 | 5GB | Soraris | bf | - | /export/home |
データとシステムが別パーティションになっていないとどうも落ち着かないので、NTFSのマウント機能でWindowsについてもむりやり上のような感じにすることにする。
パーティション作成
Windowsのfdiskだと基本パーティションが1つしか作れないので、前に落として焼いてあったFC3のセットアップディスクでrescueモードで起動して、fdiskを使った。でも、今考えると、手元にKnoppixがあるんだからこれを使えばよかったのかもしれない。
さて、そういうわけでFC3のディスクでlinux rescue
と打って起動したのだけど、カーネルパニックが起きて止まってしまう。起きてる症状は大体 915P/Gへのインストール…にあるのと同じ感じ。マザーボードはMSI製/915G Neo2-Platinum。
調べてみたら915Gチップセットでは起こりがちな問題らしく、FedoraForum.orgに解決法が載っていた。起動時にカーネルにpci=nosort
と渡せばよいらしい。確かに、言われてみればスタックトレースではデバイスのソート中にパニック起こしてるからこうすりゃ良いんだろうね。
というわけで、めでたくコンソールを立ち上げてパーティションを切ってみた。
マザーボードのマニュアルが丁寧だったので比較的解決が早かった。MSIのマニュアルの丁寧さには感動。
WinXPのインストール
WinXPのインストールぐらい普通にやれば良さそうだけれど、今回はProgram FilesとDocuments and Settingsを別パーティションにしたいからちょっと一捻り必要だった。要するに、インストールする前にNTFSでフォーマットしてJunctionを作っておかないといけない。WinXPの回復コンソールにdiskpartコマンドがあると書いてあるので、これでいけるかと思ったけれど、回復コンソール版のdiskpartはassign操作ができないんだな〜。仕方がないので、こんな手順でやってみた。
- C:\に普通にWin XPをインストール。
- そのままではMSI 915G Neo2-PlatinumのオンボードのEthernetアダプタを認識してくれないので、本体付属のCDからドライバをセットアップ
- 同じく、本体付属のCD-R/DVD+RWマルチドライブのドライバと、ライティングソフトをセットアップ
- 自分好みの緊急用ブートCDをつくろう! を参考に、Bart's PE Builderを使って起動用CDを作る。これで、1CDで簡易WinXP環境が起動できる。
- 焼いたCDで起動して、コマンドプロンプトを起動
- 基本領域1に、ファイルシステムを維持するように指定してWInXPを再インストール。
別のマシンでBartPEの起動ディスクを作っておけば2回インストールする面倒さはないし、たぶん動作は問題ないのだけど。でも前掲の解説記事にもあるとおり、ディスクを使用するそのマシン自体で作ったディスクでないとライセンス上微妙な感じなので一応、こんな感じで作業してみた次第。
あと、もう一つの手段としては、BartPEのコマンドプロンプトからxcopy /H /S /Y /F
で、"C:\Program Files"を"論理領域2に、そのほか同様にコピーしてしまい、後から元のディレクトリを空にして、mountvol
を実行するというのもある。"C:\Program Files"や"C:\Documents and Settings"以下の一部のファイルはWindows自体が排他ロックを掛けているので普通にはコピーできないけれど、BartPEで起動した場合ならこれらのファイルは使っていないから、コピーしたり削除したりするのに何の支障もない。
こっちの方が再インストールの手間はかからないし移動不可能なファイルは対象内にはないからたぶんWinの動作に問題はない。私も実は最初そのようにしようと思った。ところが、コピー時に間違ってまだコピーしていないファイルを先に削除してしまったので、再インストールの手間を掛けることになったのだった。まぁ、インストーラーにきちんとやってもらった方が手動で配置するより安心だし、と合理化。
Fedora Core 3のインストール
こちらは、前に遭遇したカーネルパニックを避けるためにpci=nosort
をつけてインストーラーを起動すること、それから、ブートローダーの設定においてもカーネルパラメータにpci=nosort
をつけておくこと、以外特に難しいことはない。普通にインストールして、普通に起動した。
あとは、NTFSとオンボードのEthernetアダプタのドライバをインストールするだけ……なのだけど、これがうまくいかない。オンボードのMarvell Yukon 88E8053で、sk98lin smpに対応 @ やねのうえあたりを参考に、ドライバをインストールしてみるものの、カーネルと別ファイルでのドライバの構築には失敗するし(insmodに失敗しているらしい)、カーネルに組み込んで再構築してみてもチップを認識しないし。
仕方がないので、何かほかのボードを挿すかな〜と検討中