Erich Stefan Boleyn氏の手で開発されたGRUBは、現在GNUプロジェクトの一部になっている。最新のプロダクション版はGRUB 0.9xで、GRUB Legacyとも呼ばれている。2002年、開発者たちの関心がGRUB 2に移ったことでこのGRUB Legacyコードへの機能追加はストップしたが、今でも定期的にパッチやバグフィックスが提供されている。GRUB 2はまだ開発バージョンなので、大半のディストリビューションは依然としてGRUB Legacyに頼っている。
GRUBはどのオペレーティングシステム(OS)にも依存していない。フリーソフトウェア財団(Free Software Foundation)のMultiboot Specificationに準拠して書かれているため、ほとんどすべてのOSをブートできる。事実、2つ以上のOSをハードディスクにインストールすれば、1台のコンピュータで複数のOSのブートが可能になる。以下に、GRUBの機能を示す。
- 動的コンフィグレーション。ユーザはブート時に設定やパラメータを変更可能。
- 複数の実行ファイル形式およびハードディスクのファイルシステムに対応。
- GUIとCLIのどちらのインタフェースでも、ブート対象のOSを選択可能。
Linux環境で(カーネルのブートを別にして)よく実行されるGRUBのタスクの1つに、LinuxとMicrosoft Windowsのデュアルブート化がある。デュアルブートシステムを作り上げる一般的なパターンは、まずWindowsをインストール(まだインストールしていない場合)し、その後、別のハードディスクまたは空いているパーティションにLinuxをインストールするというものだ。ほとんどのLinuxディストリビューションは、Windowsインストール環境の存在を検知して、オープンソースのブートローダ(GRUB、LILOなど)のインストール作業とLinux/Windowsのデュアルブート設定を自動的に行ったうえでWindowsのブートローダの置き換えまでやってくれる。
GRUBのインストール
GRUBを使用する大半のLinuxディストリビューションには、すぐに使える状態でGRUBがインストールされている。デフォルトでGRUBがインストールされていないディストリビューションでは、パッケージシステムにGRUBが入っていることが多いので、手動インストールを始める前に、まずはそこをチェックしてほしい。
すでに別のブートローダがインストールされている場合は、そのブートローダでサポートされていないOSを使おうとするのでない限り、わざわざGRUBに入れ換える必要はない。
GRUBのインストール途中に問題が起こった場合は、マシンが起動しなくなる恐れがある。何をしようとしているのかわからない人は、問題発生時に表示される指示をプライマリハードディスク(/dev/hda、SCSIやSATAハードディスクの場合は/dev/sda)に対して適用すべきではない。それよりも、最初にUSBドライブかフロッピーディスクドライブで試してみることだ。
GRUBを手動でインストールするには、GNUのWebサイトからGRUBをダウンロードし、それがLegacy版であることを確認する。パッケージを入手したら、以下のコマンドによって展開、ビルド、インストールを行う。
tar -xzvf grub-0.9x.tar.gz cd grub-0.9x ./configure make sudo make install
最後の行でsudoコマンドを使っているのは、rootユーザによる実行が必要なためだ。すべてうまく行けば、GRUBがインストールされ、使える状態になる。ビルドやインストールの途中で問題が起きた場合は、参照先としてGRUBのFAQやGRUB wikiが役に立つ。
