Puppy Linix と Android-x86 をUSBメモリからデュアルブートする方法

公開日:  最終更新日:2014/05/29

USBデュアルブート_PuppyLinux&android-x86

この記事はサポートが終了する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作成方法

作業の流れは以下のようになります。

  • OSのイメージファイルの入手
  • LiveUSBの作成 × 2回
  • LiveUSBからインストール先のUSBメモリにインストール × 2回
  • GRUB(ブートローダー)の設定
  • 最終的にデュアルブートできる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]などのファンクション・キーを押していると、ブート・デバイスを選択できます。

    Puppy LinuxをUNetbootinから起動

    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」の使い方 – パソコントラブルと自己解決

    Puppy_GParted01
    今回の環境の場合、最後に刺したUSBメモリは「sdc」なのでコレを選択します。

    Puppy_GParted02
    今回はWindowsからもデータが読めるようにパーティションを2つに分けました。

    ・第一パーティション<FAT32>:データ保存用
    ・第二パーティション<ext4>:Puppy・Android-x86インストール用

    USBメモリのパーティションを分けた場合、Windowsでは先頭のパーティションしか認識しません。また認識できるファイルシステムはFATかNTFSとなります。
    ※一般的に市販されているUSBメモリやSDカードは通常FAT32でフォーマットされています。

    インストール用の第二パーティションはFATでもext3でも構いません。ほぼ好みの問題です(厳密には違います!)。
    また、Android-x86をインストールする際に「boot」フラグが必要になるので、予め設定しておきます。

    準備ができたらPuppyをインストールします。
    デスクトップ上の「インストール」または「メニュー → セットアップ → Puppyをインストール」でインストーラが起動します。

    Puppy_install01
    「Frugalインストーラを実行(推奨)」を選択。
    次に「どこにPuppyをインストールするか」を聞かれます。

    Puppy_frugalインストーラ01
    今回の場合は「sdc2」を選択して「OK」。
    「追加SFSもコピー」するかどうか聞かれます。

    Puppy_frugalインストーラ02
    「goffice-precise_571.sfs」があると後でOfficeアプリであるLibreOfficeをインストールできるようになります。必要に応じて選択し「OK」。

    次はGRUB(ブートローダー)のインストールです。

    Puppy_frugalインストーラ03
    「Grub4DosConfig」を選択。次の画面でインストール先を選択します。今回の場合は「sdc」です。
    GRUBの設定ファイルは第一パーティションに生成されます。

    Puppy_frugalインストーラ04
    Puppy_frugalインストーラ05
    GRUB起動時に選択する各OSのタイトルを編集できます。予めインストールされているOSも検出されています。ここで使用しているPCには内蔵HDDにLubuntu13.10がインストールされているので下に「Ubuntu13.10(sda1)」の表記があります。
    編集後(後からでも編集できます)「OK」。次に再度確認画面が出るので「OK」。GRUBのインストールが終わると次の画面になります。

    Puppy_frugalインストーラ07
    元からGRUBがインストールされている場合は、以前のmenu.lst(GRUBの設定ファイル)は別名で保存されます。
    最後に「セッションを保存しますか?」と聞かれますが、今後このLiveUSBを使う必要がなければそのまま「終了」します。

    以上でPuppyのインストールは終了です。一旦PCの電源を落とします。「メニュー → シャットダウン → コンピュータの電源を切る」で終了できます。セッションの保存をするかどうか聞かれますが、前述のとおり必要に応じて選択して下さい。

    Android-x86 をUSBメモリにインストール

    前述で使用した2つのUSB[A][B]を抜き、Android-x86のLiveUSB[C]を挿してPCを起動します。

    GRUB_Android_Live01
    試しにAndroid-x86を使ってみたいなら一番上の「Default」か2番目の「Live CD」を、インストールするなら一番下の「Installation」を選択します。この時点でUSBメモリ[A]を挿入しても大丈夫です。

    GRUB_Android_Live02
    インストール先を選択します。USBメモリ[A]が表示されない場合は、一番下の「Detect devices」を選択すると再度読み込みます。
    ここではUSBメモリ[A]が「sdc」として認識されています。第一パーティションが「sdc1」、第二パーティションが「sdc2」となっています。
    「sdc2」を選択します。

    GRUB_Android_Live03
    選択したパーティションをフォーマットするかどうか聞かれます。
    ここでは既にPuppyをインストールしてあるので「Do not format」を選択します。

    GRUB_Android_Live04
    GRUBをインストールするかどうか聞かれますが、既にPuppyからインストールしたGRUBがあるので「Skip」します。
    後ほどAndroid-x86を起動できるようにPuppyからGRUBを編集します。

    GRUB_Android_Live05
    Androidのシステム領域を読み書きできるようにするか聞かれます。「Yes」ならroot化される・・・はずですが、今回の環境ではroot化されませんでした。原因は分かりません。普通に使用する分には問題ありません。


    【2014年4月9日追記】
    root化の設定は「Setting」からできますね・・・ 追加記事はコチラ。
    PC(仮想マシン)にAndroidをインストールしてKindleも読めるぞ!って話


    GRUB_Android_Live06
    インストールが終了すると、Android-x86(LiveUSBではなくインストールした方)を起動するか、PCを再起動するか聞かれます。
    このまま電源をOFFにしても構いません。

    以上でAndroid-x86のインストールは終了です。

    ※インストール余談※

    OSのインストールというと既存のハードディスク(パーティション)をフォーマットして行うイメージがありますが、PuppyもAndroid-x86も実は必要なファイルをコピーしているだけです。従って既存のOSがあるパーティション上にインストールしても元の環境に影響はありません。
    ブートローダーをインストールしてしまうと既存OSが起動できなくなる可能性はありますが、後からでも修復できます。
    安全策をとるならブートローダーはインストールせず、後で既存のブートローダーを設定した方がいいですね。

    GRUBの設定方法

    デュアルブートのためのGRUBの設定はPuppy上から行います。
    USBメモリ[A]からPCを起動します。

    Grub4DOS01
    まだ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を再起動します。

    Grub4DOS03_Added

    Android-x86を起動する項目が追加されています。
    起動しなければ再度Puppyを起動し、「menu.lst」を見直して下さい。

    以上で、PuppyとAndroid-x86のデュアルブートUSBの完成です。
    お疲れ様でしたm(_ _)m

    [milliard]
    • サイト内検索

    • カテゴリ


    • スポンサードリンク



    PAGE TOP ↑