マルチブート(デュアルブート)環境の構築 | ~magi mode~ver3.10

~magi mode~ver3.10

マジックの練習は辞めて今はパソコンばかりいじっている。
アニメ好きだがオシャレも好き。
二次元と三次元の両立を図る日々。
最近トレーニングにもハマってる。

~マルチブート環境の構築~


マルチブート環境を作るにあたって僕が参考にした記事はこちら↓

http://wikiwiki.jp/disklessfun/?multipleboot

詳しく書かれていてとてもすばらしい記事です。

しかしそちらに書いてあることをここに移したのでは何の意味もありませんので、基本的に同じことは書きません。
ただPC初心者であった僕がそのページを見て理解し辛かったことを、これから初めてマルチブートをする初心者向けに難しいことを端折ったりして説明したいと思います。

まず覚えておくと話がスムーズに理解できるように覚えて置きたい単語を書き記します。


○覚えて置きたい単語○


ブートローダ
OSを呼び出すためのプログラムです。

後述する「ブートセクタ」と呼ばれる場所にインストールされます。
種類は様々で有名なのは「GRUB」「LILO」「NTLDR」「MBM」など他にも結構あります。
最近のものだとLinuxはGRUBと呼ばれるブートローダで、WindowsはNTLDRが多いのではないでしょうか。


ブートセクタ
ブートローダをインストールする場所です。

「MBR」と「PBR」と呼ばれるブートセクタ(セクタって言葉は「場所」って意味だと思えば良いかと)があります。

MBR(マスターブートレコード)
ブートセクタの1つでハードディスクドライブの先頭セクタのこと。
MBRはハードディスクに1つしかありません(先頭セクタですからね)。

先に説明した「ブートローダ」は基本的にはここにインストールされます。

また、次項で説明するPBRを呼び出すことが仕事です

PBR(パーティションブートレコード)
これはパーティションの先頭に作られるブートセクタ。
MBRと違ってOSの数だけ存在し、OSの入っている各パーティションに作られます。
MBRからこのPBRを経てOSが起動するわけです。

つまり「MBR→PBR→OS起動」というのがOS起動の手順なのですが、普通はMBRとPBRはひと繋がりとして1つのブートローダがインストールされるので、PBRの存在を意識することはありません。(ひと繋がりというと語弊があるかもしれませんが、重要な部分ではないので説明しません)

これは見た目には「MBR→OS起動」となり、1つのブートローダからOSが起動するので「1段階ブート方式」です。

 

ところでLinuxではOSのインストール時またはOS上でファイルをいじって意図的にMBRではなくPBRにブートローダを詰め込む(と言ってもインストール先を変更するだけ)ことができます。

こうすることでMBRが空くので他のブートローダがインストールできます。これが「2段階ブート方式」ということです。

参考URLの管理人さんはすべてこのOSの呼び込み方で統一すべきだと言ってるわけです。
詳しくは参考URLを確認してください。確かにメリットが多いです。


とりあえずこれだけ覚えてれば十分かと思います。




○一般的なマルチブートの方法○(読み飛ばしても構いません)

さて、大抵の人はWindowsからPCを始めたと思いますがWindowsから始めた人が仮にLinuxを導入してマルチブートにするには、「パーティションを分けてそのままLinuxをインストールすると良い」と言われます。
これはWindowsの後にLinuxをインストールすることによって、ブートローダにLinuxのGRUBという高機能なブートローダが使用されるためです。GRUBが使われることによってブートセクタでOSの選択ができるようになります。

しかしLinuxの後にWindowsがインストールされると、マルチブートに適さないWindows用のブートローダがブートセクタにインストールされてしまいます。これが「Windowsの後にLinuxをインストールすべき」と言われてる理由です。
だから初心者は確かにこの方法を使うと楽にマルチブート環境が構築できるわけです。(実際にはもうちょっと作業が必要ですが今回の話の趣旨とは関係ないので省略します)
が、この方法ではデメリットもあります。
しかしそれも参考URLで確認してください。僕が話すのはマルチブートについての良し悪しではなくて、マルチブート環境の構築方法ですからね。




○2段階ブート方式の作成○

今回説明するマルチブートの方法には「2段階ブート方式」と呼ばれる手法を採用します。
インストールした全てのOSの起動までの手順を2段階に統一します。
参考URLを見ればわかりますが、こちらの方がメリットが大きいのです。

先に説明しましたがMBRとPBRにそれぞれブートローダをインストールして「MBR→PBR→OS起動」という手順でOSを起動するのが2段階ブート方式というものです。
しかし基本的に全てのOSは「MBR(&PBR)→OS」という1段階です。
言葉だけでは分かり辛いのでこの2つのブートローダとブートセクタの位置を図で表します。

クオリティの低い絵で申し訳ないですが、こうなっています。
上がWindows起動までの様子、下がLinuxです。
ブートセクタとブートローダの位置づけがわかりましたか?
2段階ブート方式にするにはこのMBRとPBRを分けることでできるというわけです。
具体的には図に書いてあるGRUBというブートローダをPBRにインストールし、MBRには別のブートローダをインストールします。

(余談ですがWindowsインストール後、Linuxをインストールするだけの1段階ブート方式だと、上記図のGRUBが読み込まれたところでWindowsXPやLinuxを選択することになります)

GRUBのPBRへのインストール方法は簡単で、OSのインストール時に「拡張」や「高度な設定」でインストール位置を変えれば良いのです。あるいはインストール後もGRUBの機能を使用してPBRにインストールすることも可能です。
例えば
http://wikiwiki.jp/disklessfun/?usbboot#dual-stages-type
の作業6の「2段階ブートの場合、」ってところにも書いてあります。他にGRUBインストール用のCDやFDを作ったり、各自でやりやすい方法を調べてください。

ここまでの作業を図で表すと、
~magi mode~ver3.10-boot順番2
こうなります。MBRが空っぽなのがわかりますね。
実際に試したことはないですがこれでは起動できません。(ただしWindowsの後にLinuxをインストールする方法ではWindows用のMBRがあります)

そこでフリーソフトのMBR用ブートローダをインストールします。
インストールするブートローダには「MBM(マルチブートマネージャー)」を使います。
名の通りマルチブートに適したブートローダで、驚くほど高機能です。
もちろん他のブートローダも使えますがそれはここでは説明しません。
さて、肝心のインストール方法はまずMBMのインストールCDを作ります
方法は他にもOS上でインストールしたりインストールUSBを作る方法があります。
しかしOS上でインストールするのは初心者にはちょっと難しいかもしれませんし、USBから起動できないPCもあるので、一番汎用性のありそうなインストールCDを作ります。インストールCDを作っておくのは後々便利になります。(OSが入っているHDDに後からWindowsをインストールすると勝手にMBRをWindows用のものに上書きしたりするので)



○MBMをインストールしよう○

用意するものはMBMとFDイメージをisoイメージに変換するソフト。それとCDに焼くためのソフトとCDです。
MBMはこちらで↓
MBM
http://www.vector.co.jp/soft/dos/util/se035596.htmll

FDイメージをisoイメージに変換するソフトはこちら(変換ソフトはこれでなくても適当なもので良いです)↓
fdtoiso
http://www.geocities.co.jp/SiliconValley-Cupertino/3686/fdtoiso.html

CDに焼くためのソフトはこちら↓
ImgBurn
http://www.altech-ads.com/product/10001086.htm

MBMをダウンロードしたら解凍して、中のBINフォルダに入ります。MBM0.39であれば中にMBM.144というプログラムがあるはずです。
それを変換ソフトでisoイメージに変換します。
そしてCDに焼きます。これでインストールCDの完成です。

最後にこれを使ってMBRにMBMをインストールするだけです。
CDを入れてPCを起動します。すると英語がズラズラでてくると思います。
あ、初歩的なことですが、あらかじめPCがCDから起動するように設定しておかなければなりませんよ。
PCによって違いますが、起動時にキーボードの「F12」とか「Delete」とかキーを押すことによって、どこから起動するか設定できます。それは各々のPCによって違うので調べてください。

次にMBMが選択肢を聞いてきます。(1~5のどれか入力してくださいみたいな)
3番が「Install boot manager」となっているはずです。
キーボードの3を入力してEnter。

次にインストールする場所を聞いてきます。(0~3を入力してくださいみたいな)
キーボードの0を入力します。これはハードディスクの一番初めの場所、MBRにあたります。

最後に「本当にインストールしますか?」という意味合いで「<y/n>=」と表示されるのでキーボードのyを入力してEnter。
これは「Yes or No ?」という質問に対して「Yes」と答えたわけです。

これで作業は完了です。
図にするまでも無いと思うので図は書きませんが、Linuxが2段階ブート方式になりました。
起動するとOS(パーティション)選択画面で出てくるはずです。MBMが正常に起動している証拠です。
2つ目以降のOSを入れるときはブートローダはPBRにインストールすることをお忘れ無く。
もし間違ってMBRにインストールしてもMBMをCDから再インストールすれば良いことですが。
少なくともWindowsをインストールするとMBRが勝手に上書きされるので、MBMを再インストールすることになるでしょう。

また、Windowsをインストールする場合はインストールするパーティションをアクティブにする必要があるとかどうのこうの、面倒くさいことがあります。これはMBMを使用してできますが、ここでは説明しませんので他のページで調べて下さい。

この方法でOSをインストールし、OS起動までの順序を絵で表すと、
~magi mode~ver3.10-boot順番3
このようにインストールした全てのOSが2段階になります。




○まとめ○

さて、長々と書きましたがマルチブート環境の作り方を端折って簡単にまとめると。

・先にOSが入っているならパーティションを分割する。

・分割したパーティションにOSをインストールする。Linuxをインストールする場合は、インストール時の設定でブートローダをPBRにインストールする。(OSインストール後でもブートローダのインストール先の変更は可能)
・MBMをインストールする。

という行程だけでマルチブート環境ができます。
先にWindowsが入っている場合でも、あとから入れる場合でも同じです。
ただし、この端折った方法をなぞるだけでマルチブートはできますが、きちんと理論を学んだ方が身のためだと思います。最初に挙げたURLで勉強してください。

なお、ここまで書き記したものは独学で学んだものであり、誰かに確認をとったものでもありません。
語弊などがあるかもしれませんので、その辺はご理解お願いします。

以上でマルチブート環境の構築に関する説明を終わります。

 

(2017/6/22に当記事の語弊をいくつか修正しました)