低スペックPCの再活用にAndroidどうでしょう?【その2:マルチブート環境構築編】

公開日:  最終更新日:2014/04/08

android向けGoogleアプリ

(画像はここから)

前回の記事、低スペックPCの再活用にAndroidどうでしょう?【その1:インストール編】の続きです。使用環境などはコチラで確認して下さい。

今回は前回インストールしたAndroid-x86と、WindowsやUbuntuなどの既存OSをGRUB2からマルチブートする設定方法を解説します。
また、予期せぬ異常でGRUB2を再インストール・修復する場合も同じ対処となりますので、よろしければご参考までに♪

以下のサイトを参考にさせていただきましたm(_ _)m


Ubuntu の LiveCD を使用して grub を再インストールする [nanashinonozomi.com]
Ubuntu Grub2 その1 – Grub2の再インストール – Ubuntu kledgeb
(Ubuntu 9.10) Grub2の設定 (r271-635)
(Linux)GRUB2でのマルチブート設定方法 : 3流プログラマのメモ書き
How To Dual-Boot Android-x86 And Ubuntu (With GRUB 2) ~ Web Upd8: Ubuntu / Linux blog


GRUB・GRUB2の編集

GRUBの場合

Android-x86のインストール時にGRUBを導入した(GRUB2を使わない)場合、Windowsとのデュアルブートであれば設定できているはず。
もし「設定し忘れた!」とかでWindowsの起動項目がない場合はライブCDなどでmenu.lstを直接編集して下さい。/boot/grub/にあります。

title	 Microsoft Windows XP Professional	
root	 (hd0,0)	
makeactive	
chainloader	+1

こんな感じで追記します。
title“は自分の分かりやすい名前で。”root“はWindowsがインストールされているパーテションを指定します。”(hd0,0)“とは「0番目のハードディスクの第一パーテション」を指しています。
環境に合わせて変更して下さい。

Android-x86のインストールからやり直してもいいでしょう。

GRUB2の場合

最近のUbuntuなどインストールしている場合は標準のブートローダーがGRUB2になっていると思います。
編集方法としては2つあります。


      ①設定ファイルの直接編集(難易度:高)
      ②Grub Customizer を使ってGUIで編集(難易度:低)

①でもできますがヘタすると起動しなくなります。
一応大まかな流れを言うと、


  1. /etc/grub.d/40_customに起動したいOSを追記
  2. ターミナルからupdate-grub
  3. を実行

  4. 設置ファイルの/boot/grub/grub.cfgが更新される(自動)

1.の追記例はこんな感じ。Windows7の場合ですが。

### リカバリ領域の起動 ###
menuentry 'Windows Recovery Environment (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-(英数字の羅列①)' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  (英数字の羅列①)
    else
      search --no-floppy --fs-uuid --set=root (英数字の羅列①)
    fi
    drivemap -s (hd0) ${root}
    chainloader +1
}

### Windows7の起動 ###
menuentry 'Windows 7 (loader) (on /dev/sda2)' --class windows --class os $menuentry_id_option 'osprober-chain-(英数字の羅列②)' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos2'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  (英数字の羅列②)
    else
      search --no-floppy --fs-uuid --set=root (英数字の羅列②)
    fi
    chainloader +1
}

menuentry“は分かりやすい名前で。”set root=’hd0,msdos1′“は「0番目のハードディスクの1番目のパーテション」を指しています。パーテションの指定に0番目はありません。
if“以下は分かりません(笑)
コレはwin7とLubuntuのデュアルブート環境でGRUB2のインストール時に勝手に生成されたものです。

これでもできますが、②の「Grub Customizer」を使った方がカンタン・安全です。
インストール方法はターミナルからだと、

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

PPAにppa:danielrichter2007/grub-customizerを追加して「ソフトウェアセンター」や「Synaptic」からもインストールできます。

起動するとこんな感じ。
Grub Customizer_起動画面

「List Configuration」タブを開いている状態です。既に登録済みの項目が並んでいます。
ここから各項目を編集・削除、並び替えをすることができます。

「General Settings」ではどの項目をデフォルト起動にするかとか、起動するまでの時間など設定できます。
Grub Customizer_General Settings

「Appearance Settings」では”見た目”の変更ができます。
Grub Customizer_Appearance Settings

「List Configuration」の画面で上にある「+」ボタンで新しい項目を追加することができます。
Grub Customizer_Entry editor
Grub Customizer_Entry editor_Source

「Options」は”other”で大丈夫です。(と言うか使い方分かりません)
「Source」で起動するOSの指定を記述します。
android-x86-4.0-RC2-asus_laptop.isoをインストールした場合はこんな感じ。

set root=(hd0,3)
linux	/android-4.0-RC2/kernel quiet root=/dev/ram0 androidboot.hardware=asus_laptop video=-16 SRC=/android-4.0-RC2
initrd	/android-4.0-RC2/initrd.img

set root=(hd0,3)“でインストールしたパーティションを指定。
参考サイトによると、

In the video above, I’ve installed Android-x86 on “sda6”, so I’ve replaced “(hd0,0)” with “(hd0,6)” – hd0 means the first hard disk (“sda”) and “6” is the partition and comes from “sda6”.

Hard disk naming starts with 0 so basically, sda is “hd0”, sdb is “hd1” and so on. Counting partitions doesn’t start with 0, so if you’ve installed Android x86 on let’s say “sda5”, you’d use “(hd0,5).

Once you make these changes, save the file.

Android-x86のインストール先がsda1なら(hd0,1)、sda2なら(hd0,2)となります。
Android-x86のバージョンに応じて、kernelinitrd.imgのパス及びファイル名を変更しましょう。
「androidboot.hardware=」の名称が何になるかは、ライブCD(USB)の中にあるsyslinux.cfgを見れば分かります。
同じような記述があるはずです。

編集・追記が終わったら画面上にある「Save」をして終了します。

GRUB2の再インストール方法

GRUB2が起動しないなど異常があった場合の対処方法です。

既にインストール済みのUbuntuがあれば同じバージョンのライブCD(USB)を用意します。
ライブCD(USB)からハードディスク内の設定ファイルを修正する方法もありますが、そもそも何処を直していいか分からない場合、GRUB2を再インストールした方が手っ取り早いです。

作業手順は以下のようになります。


  1. ライブCD(USB)から起動
  2. ターミナルからGRUB2の再インストール
  3. 起動項目の編集・追記(上記参照)
  4. sudo update-grubでGRUB2の更新

2.のGRUB2のインストールは以下のようなコマンドで。

sudo grub-install --root-directory=/media/lubuntu/◯◯◯/ /dev/sda

Ubuntuがインストールされているパーテションをマウント、パスを確認して”–root-directory=“の後に記述。
ブートローダーのインストール先を指定(この場合は”/dev/sda“)。

ここまでで元のUbuntuは起動できます。
起動項目の編集・追記は後からでもできますし。

以上でWindows、Ubuntu、Android-x86のマルチブート環境が構築できました。
お疲れ様でしたm(_ _)m

前回の記事:低スペックPCの再活用にAndroidどうでしょう?【その1:インストール編】
次回の記事:低スペックPCの再活用にAndroidどうでしょう?【その3:必須アプリ導入・日本語環境構築編】

[milliard]
  • サイト内検索

  • カテゴリ


  • スポンサードリンク



PAGE TOP ↑