Ubuntu9.10にWindows 7を導入する手順
私のiPhoneはいわゆる新ブートRom搭載なのでTethered Jailbroken状態にある。再起動する度に母艦からbrackraInやSnowBreeze等でロードする必要がある。普段はUbuntu機を持ち歩いているので、出先でリブートが掛かるとリロード出来ずにiPhoneが使いものにならなくなってしまう。
なのでWindows 7を入れてデュアルブートにしてみた。WindowsにUbuntuを入れる場合は正常にブートローダが構築されるが、逆にUbuntuにWIndowsを入れた場合は起動時に複数のOSを選択出来るようにブートローダ(ここではGRUB2)を再インストールしなくてはならない。
- UbuntuでWIndows用のパーティションを作り、NTFSにフォーマットする。
- ついでにデバイスとパーティションナンバーも確認しておく。
- 作ったパーティションにWIndowsをインストール。
- Ubuntu Desktop LIVE CDからUbuntu Desktopを起動する。
- GRUB2を再インストールする。
○必要なもの
- CD/DVDドライブ
- Ubuntu Desktop LIVE CD
0. 準備
Terminalを開いて
grub-install -v
GRUBのVersionを確認する。Ubuntu 9.10はデフォルトでGRUB 1.97~beta4なので、一応バックアップをとっておく。
sudo cp /etc/default/grub /etc/default/grub.old sudo cp -R /etc/grub.d /etc/grub.d.old sudo cp -R /boot/grub /boot/grub.old
- ここで一度GRUB 0.97に戻しておくと安定するかもしれないが、どちらでもいいと思う。なので以下は任意。
GRUBをパージ
sudo apt-get purge grub2 grub-pc
ここでブートローダー不在のワーニングが出るのでGRUB 0.97をインストール&menu.lstの作成
sudo apt-get install grub sudo update-grub
Ubuntuが入っているデバイスを/dev/sdaとして、(パーティションナンバーは含めない)
sudo grub-install /dev/sda
1. GPartedでパーティションを作成
今回使用したハードディスクは60GBだったので5GBをスワップ用のロジカルドライブ、30GBをUbuntu、25GBをWinsows用に割り当てることにした。
BIOS画面でブートデバイス選択に入り、適切なドライブを選択して"Try Ubuntu without any change to your computer"。System>Administration下のGPartedでパーティションを構築する。各割り当て領域が大き過ぎず小さすぎないように慎重にやる。
2. Disk UtilityでNTFSにフォーマット
Windowsを入れるパーティションはNTFSのファイルシステムを使用するのであらかじめNTFSにフォーマットしておく。
3. 1.か2.のどちらかでLinux,Windowsのデバイス名を確認しておく。
ex)/dev/sda5 /dev/sdb1 など
4. Windowsをインストールする
Ubuntu LIVE CDと同様にWindows 7を起動する。Custom Installを選び1.-3.で作成したWIndows用のパーティションにインストールする。
5. GRUB2の再インストール
Windowsが正常に起動することを確認したら、もう一度Ubuntu Desktop LIVE CDから起動し、Terminalを開いて、Ubuntuが入っているデバイス(/dev/sdXYとする)をマウントする。
sudo mount /dev/sdXY /mnt
UbuntuをrootとしてGRUB2を再インストール(後ろの/dev/sdXにはパーティションナンバーを含まない)
sudo grub-install --root-directory=/mnt /dev/sdX
アンマウントする
sudo umount /mnt
sudo update-grub
ハードディスク内に入っているOSを自動的に探してGRUB2に登録する。こんな感じになるはず
Generating grub.cfg ... Found Debian background: Varun_Pramanik_GRUB2.png Found linux image: /boot/vmlinuz-2.6.31-20-generic Found initrd image: /boot/initrd.img-2.6.31-20-generic Found memtest86+ image: /boot/memtest86+.bin Found Windows 7 (loader) on /dev/sda2 done
6. 仕上げ
再起動してもまだブート画面はGRUB 0.97のままだと思うので、ここ等を参考にGRUB2にチェインロードしていく。といっても起動させるUbuntuパーティションの先頭にある"root"を"uuid"に変えるだけで出来ると思う。後はUbuntuに戻って
sudo upgrade-from-grub-legacy sudo update-grub
で終了。
- 参考サイトまとめ
http://ubuntuforums.org/showthread.php?t=1195275
How To Install GRUB 2 On Ubuntu 9.04
GParted -- A free application for graphically managing disk device partitions
http://www.gnu.org/software/grub/grub-2.en.html