Puppy Linix と Android-x86 をUSBメモリからデュアルブートする方法
この記事はサポートが終了するWindowsXP(公式アナウンス)から軽量Linuxへの乗り換えを検討中の方へ向けて書いています。
僕自身Linuxの知識が高いとは言えませんが、極力初心者向けに解説していきます。故に本文も冗長に感じるところもあるかもしれませんが、「目次」から必要な部分だけつまみ読みしていただければ幸いですm(_ _)m
USBメモリにOSをインストールする利点
メリットとしては、
- 内蔵HDDの既存OS(Windowsなど)の環境を壊さない
- 個人データ・設定などをUSBメモリにそのまま保存できる
- 使用するPC環境を選ばない(相性にもよる)
- 内蔵HDDが無くても起動できる
などが挙げられます。LiveCDではデータを保存できませんし、光学ドライブの無いPCもあります。USBポートが無いPCは稀でしょう。
強いてデメリットを言えば、内蔵HDDにインストールすることに比べると読み書きの速度が劣るくらいでしょうか。とは言え、上述のメリットで挙げた有用性、利便性を考えれば試す価値は十分でしょう。転送速度の早いUSBメモリを使えばある程度改善できますしね。あとは使用するPCのスペック次第です。
「Linuxを試してみたい」という場合にはベストの選択と言えます。
使ってみて良かったら内蔵HDDにインストールすればいいでしょう。
OSに Puppy Linux と Android-x86 を選んだ理由
汎用性、特にハードウェア(内蔵無線LANやカメラなど)の認識率で言えば Ubuntuになりますが、昨今のUbuntuではOS自体が重く WindowsXP のプリインストール機程度のスペックだと快適とは言えません。Ubuntuの派生ディストリビューションであるLubuntuならUbuntuより軽量で、認識率はもちろん、UI(ユーザーインターフェース、簡単に言えば見た目や操作性)も似ているので一番とっつきやすいかもしれません。
僕は Windows7 Starter(XPより重くて使いにくい)がプリインストールされたネットブックにLubuntuをクリーンインストールして使っています。Lubuntuのインストールについてはまた別の機会に書こうと思います。
Puppy Linuxの利点
Puppy Linux(以下Puppy)についてはWikipediaをご覧下さい。
Puppyを選ぶ理由としては、
- OS自体が軽い
- 日本語化されたバージョンがあり、ネット上での情報が多くトラブルに対処しやすい
- 対応するアプリケーションが増えた
などが挙げられます。
OSの軽さについては、多くのLinuxディストリビューションの中でも最軽量の部類に入るでしょう。軽さの理由はWiki参照、簡単に言えば「起動時にRAMへシステムを読み込み利用する仕組み」だからです。
日本語化されたバージョンはパピーリナックス日本語フォーラムで入手できます。
また今回取り上げる パピーリナックス Precise-571JP ではUbuntuをベースにしているので、使えるアプリも増えています。(ちなみにPreciseとはUbuntu12.04のコードネームであるPrecise Pangolinが由来となっています。)
Ubuntuで採用されているdebパッケージがそのまま使えるのはいいですね(使えないものもありますが)。
Puppyのインストールについては過去記事にもありますのでご参考までに。
◆Puppy Linux ~軽量Linuxで低スペックPCを再活用~
◆Puppy Linux – 内蔵ハードディスクにインストール後のGRUB2の設定方法
Android-x86の利点
公式サイトとWikipediaによる解説はコチラ。
◆Android-x86 – Porting Android to x86(公式サイト)
◆Android-x86 – Wikipedia
過去記事も合わせてご覧下さい。
◆低スペックPCの再活用にAndroidどうでしょう?【その1:インストール編】
◆低スペックPCの再活用にAndroidどうでしょう?【その2:マルチブート環境構築編】
◆低スペックPCの再活用にAndroidどうでしょう?【その3:必須アプリ導入・日本語環境構築編】
Android-x86を使う理由としては、
- スマホのスペックに合わせたOSなので軽い(PCとの相性にもよる)
- 普段スマホで使用しているのでとっつきやすい(iPhoneなど他OSは除く)
- アプリケーションが豊富
- アプリ間やスマホとの連携に優れる
などが挙げられます。
個人的には” PCでKindle が読める “ところが一番の理由です。
OSのバージョンが4.xになってから汎用性が高くなったように感じます。それ以前はPCの環境によって起動できないことが多々ありました。
普段使っているスマホがAndroidであれば、同じGoogleアカウントで利用できますし、使い慣れたアプリを同じように使うことができます(タッチかマウスかの操作感の違いはあります)。
デメリットとしては他のOSと違い、インストールされたパーティション(・・・の中のAndroid-x86のフォルダ)以外のファイルの読み書きができないことですが、データのやりとりはGoogleドライブなどのクラウドストレージを使うなり、PCとの連携ならAirDroidのような便利なアプリもあるので特に不便はないでしょう。
デュアルブートUSB作成方法
作業の流れは以下のようになります。
最終的にデュアルブートできるUSBメモリを[A]、PuppyのLive起動用USBメモリを[B]、Android-x86のLive起動用USBメモリを[C]とします。3つあれば作業はしやすいですが、[B]から[A]にPuppyをインストールした後に、[B]でAndroid-x86のLiveUSBを作ればUSBメモリは2つで足ります。
USBメモリが無くても、余ってるmicroSDカードをmicroSD⇔USB変換アダプタに刺して使うこともできます。100円ショップでも売っています。
また、VMware Playerなどの仮想マシンを使えば[A]のUSBメモリ1つで済みます。この記事中でもスクリーンショット取得のために使用しています。
イメージファイルの入手
今回使用する各イメージファイルはコチラです。
・precise-571JP.iso ← ダウンロードはコチラから
・android-x86-4.3-20130725.iso ← ダウンロードはコチラから
後述しますがAndroid-x86についてはPCとの相性もありますのでLiveUSB(またはLiveCD)でバージョンを試してみて下さい。僕が試してみた限りではOSのバージョンが4.x以降なら変わらないように感じます。
LiveUSBの作成
UNetbootinを使います(過去記事参照)。
◆UNetbootin – Homepage and Downloads(公式サイト)
公式サイトからダウンロード、インストールして下さい。
各OSのイメージファイルを使い、PuppyのLiveUSB[B]とAndroid-x86のLiveUSB[C]を作ります。
Puppy Linux をUSBメモリにインストール
USBメモリ[B]をPCに刺し、USBメモリから起動します。
※PCによって異なりますが、BIOS/UEFIの初期画面が表示されているうちに[F2]や[F8][F10][F12]などのファンクション・キーを押していると、ブート・デバイスを選択できます。
1番目の「Default」か2番目の「Precise Puppy 5.7.1JP」を選択して、PuppyをLive起動させます。
起動後にPuppyの設定ウィンドウが開きますが、ここでは特に設定する必要はありません。
Puppy起動後、USBメモリ[A]を挿します。デスクトップの下の方に「sdc」として表示(マウント)されるはずです。内蔵HDDが「sda」、PuppyのLiveUSBが「sdb」、最後に刺したUSBメモリが「sdc」になっていると思います。
「sdc」などの名称は環境によって異なりますので、ROX-Filer(ファイルマネージャ)で中身を確認して下さい。
デュアルブートUSBメモリを作る準備をします。
左下の「メニュー」(もしくは何もないところで右クリック)から「システム → GParted」を起動します。
GPartedの使い方についてはコチラが参考になります。
◆「GParted」の使い方 – パソコントラブルと自己解決
今回の環境の場合、最後に刺したUSBメモリは「sdc」なのでコレを選択します。
今回はWindowsからもデータが読めるようにパーティションを2つに分けました。
・第一パーティション<FAT32>:データ保存用
・第二パーティション<ext4>:Puppy・Android-x86インストール用
USBメモリのパーティションを分けた場合、Windowsでは先頭のパーティションしか認識しません。また認識できるファイルシステムはFATかNTFSとなります。
※一般的に市販されているUSBメモリやSDカードは通常FAT32でフォーマットされています。
インストール用の第二パーティションはFATでもext3でも構いません。ほぼ好みの問題です(厳密には違います!)。
また、Android-x86をインストールする際に「boot」フラグが必要になるので、予め設定しておきます。
準備ができたらPuppyをインストールします。
デスクトップ上の「インストール」または「メニュー → セットアップ → Puppyをインストール」でインストーラが起動します。
「Frugalインストーラを実行(推奨)」を選択。
次に「どこにPuppyをインストールするか」を聞かれます。
今回の場合は「sdc2」を選択して「OK」。
「追加SFSもコピー」するかどうか聞かれます。
「goffice-precise_571.sfs」があると後でOfficeアプリであるLibreOfficeをインストールできるようになります。必要に応じて選択し「OK」。
次はGRUB(ブートローダー)のインストールです。
「Grub4DosConfig」を選択。次の画面でインストール先を選択します。今回の場合は「sdc」です。
GRUBの設定ファイルは第一パーティションに生成されます。
GRUB起動時に選択する各OSのタイトルを編集できます。予めインストールされているOSも検出されています。ここで使用しているPCには内蔵HDDにLubuntu13.10がインストールされているので下に「Ubuntu13.10(sda1)」の表記があります。
編集後(後からでも編集できます)「OK」。次に再度確認画面が出るので「OK」。GRUBのインストールが終わると次の画面になります。
元からGRUBがインストールされている場合は、以前のmenu.lst(GRUBの設定ファイル)は別名で保存されます。
最後に「セッションを保存しますか?」と聞かれますが、今後このLiveUSBを使う必要がなければそのまま「終了」します。
以上でPuppyのインストールは終了です。一旦PCの電源を落とします。「メニュー → シャットダウン → コンピュータの電源を切る」で終了できます。セッションの保存をするかどうか聞かれますが、前述のとおり必要に応じて選択して下さい。
Android-x86 をUSBメモリにインストール
前述で使用した2つのUSB[A][B]を抜き、Android-x86のLiveUSB[C]を挿してPCを起動します。
試しにAndroid-x86を使ってみたいなら一番上の「Default」か2番目の「Live CD」を、インストールするなら一番下の「Installation」を選択します。この時点でUSBメモリ[A]を挿入しても大丈夫です。
インストール先を選択します。USBメモリ[A]が表示されない場合は、一番下の「Detect devices」を選択すると再度読み込みます。
ここではUSBメモリ[A]が「sdc」として認識されています。第一パーティションが「sdc1」、第二パーティションが「sdc2」となっています。
「sdc2」を選択します。
選択したパーティションをフォーマットするかどうか聞かれます。
ここでは既にPuppyをインストールしてあるので「Do not format」を選択します。
GRUBをインストールするかどうか聞かれますが、既にPuppyからインストールしたGRUBがあるので「Skip」します。
後ほどAndroid-x86を起動できるようにPuppyからGRUBを編集します。
Androidのシステム領域を読み書きできるようにするか聞かれます。「Yes」ならroot化される・・・はずですが、今回の環境ではroot化されませんでした。原因は分かりません。普通に使用する分には問題ありません。
【2014年4月9日追記】
root化の設定は「Setting」からできますね・・・ 追加記事はコチラ。
◆PC(仮想マシン)にAndroidをインストールしてKindleも読めるぞ!って話
インストールが終了すると、Android-x86(LiveUSBではなくインストールした方)を起動するか、PCを再起動するか聞かれます。
このまま電源をOFFにしても構いません。
以上でAndroid-x86のインストールは終了です。
※インストール余談※
OSのインストールというと既存のハードディスク(パーティション)をフォーマットして行うイメージがありますが、PuppyもAndroid-x86も実は必要なファイルをコピーしているだけです。従って既存のOSがあるパーティション上にインストールしても元の環境に影響はありません。
ブートローダーをインストールしてしまうと既存OSが起動できなくなる可能性はありますが、後からでも修復できます。
安全策をとるならブートローダーはインストールせず、後で既存のブートローダーを設定した方がいいですね。
GRUBの設定方法
デュアルブートのためのGRUBの設定はPuppy上から行います。
USBメモリ[A]からPCを起動します。
まだAndroid-x86の設定はしていないので、ここではPuppy(と既存OS)しか起動できません。
Puppy起動後、GRUBを再インストールして設定するなら「メニュー → システム → Grub4Dosブートローダの設定」から最後に「menu.lstを編集」で、既存のGRUBを編集するならUSBメモリ[A]の第一パーティション(おそらく「sdb1」になっていると思います)にある「menu.lst」を直接編集します。「menu.lst」をクリックすれば自動的にテキストエディタである「Leafpad」が起動します。
編集後はこのようになりました。
# menu.lst produced by grub4dosconfig-v1.9.1 color blue/cyan yellow/blue white/black cyan/black #splashimage=/splash.xpm timeout 10 default 0 # Frugal installed Puppy title Puppy precise 5.7.1JP find --set-root --ignore-floppies --ignore-cd /precise/initrd.gz kernel /precise/vmlinuz psubdir=precise pmedia=usbflash pfix=fsck initrd /precise/initrd.gz # Android-x86起動追記 ここから---- title Android-4.3-test root (hd0,1) kernel /android-4.3-test/kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 video=-16 SRC=/android-4.3-test initrd /android-4.3-test/initrd.img title Android-4.3-test (Debug mode) root (hd0,1) kernel /android-4.3-test/kernel root=/dev/ram0 androidboot.hardware=android_x86 video=-16 DEBUG=1 SRC=/android-4.3-test initrd /android-4.3-test/initrd.img # ----ここまで # Windows # this entry searches Windows on the HDD and boot it up title Windows\nBoot up Windows if installed errorcheck off find --set-root --ignore-floppies --ignore-cd /bootmgr chainloader /bootmgr find --set-root --ignore-floppies --ignore-cd /ntldr chainloader /ntldr find --set-root --ignore-floppies --ignore-cd /io.sys chainloader /io.sys errorcheck on # Advanced Menu title Advanced menu configfile /menu-advanced.lst commandline
追記した記述はAndroid-x86のLiveUSBにある「syslinux.cfg」を参考にしています。
もしくは一旦Android-x86を別のUSBメモリにGRUBごとインストールした後、その「menu.lst」を見ると参考になります。
以下は別の機会にAndroid-x86_4.2をインストールした時の「menu.lst」です。
default=0 timeout=6 splashimage=/grub/android-x86.xpm.gz root (hd0,0) title Android-x86 4.2-test kernel /android-4.2-test/kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 video=-16 SRC=/android-4.2-test initrd /android-4.2-test/initrd.img title Android-x86 4.2-test (Debug mode) kernel /android-4.2-test/kernel root=/dev/ram0 androidboot.hardware=android_x86 video=-16 DEBUG=1 SRC=/android-4.2-test initrd /android-4.2-test/initrd.img
前述の「menu.lst」にも同じように追記しました。
異なる点はブートメニュータイトル下にある「root (hd0,1)」の部分です。これはAndroid-x86のrootがUSBメモリの2番目のパーティションにあることを指定しています。単一パーティションであれば必要ありません。敢えて書くなら「root (hd0,0)」となります。
編集後、保存して「Leafpad」を終了し、PCを再起動します。
Android-x86を起動する項目が追加されています。
起動しなければ再度Puppyを起動し、「menu.lst」を見直して下さい。
以上で、PuppyとAndroid-x86のデュアルブートUSBの完成です。
お疲れ様でしたm(_ _)m