ユーザ用ツール

サイト用ツール


android:android_x86:qemu

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

android:android_x86:qemu [2020/05/19 06:52] (現在)
ともやん 作成
ライン 1: ライン 1:
 +====== QEMU で Android x86 8.1-r1 を動かす ======
 +
 +===== Android x86 の入手 =====
 +[[http://​www.android-x86.org/​|Android-x86 - Porting Android to x86]] の [[http://​www.android-x86.org/​download|Download]] より [[https://​osdn.net/​projects/​android-x86/​releases/​|Download File List - Android-x86 - OSDN]] へ行き [[https://​osdn.net/​dl/​android-x86/​android-x86_64-8.1-r1.iso|android-x86_64-8.1-r1.iso]] をダウンロードする。\\
 +<WRAP prewrap 100%>
 +<​code>​
 +$ curl -OL https://​osdn.net/​dl/​android-x86/​android-x86_64-8.1-r1.iso
 +$ sha256sum android-x86_64-8.1-r1.iso ​
 +3f85f3b8d5a01884c5cd1ad490eb170b7f84f26af96b720d64510b56dc596e09 ​ android-x86-8.1-r1.iso
 +</​code>​
 +</​WRAP>​
 +
 +===== 仮想ディスクイメージを準備 =====
 +<WRAP prewrap 100%>
 +<​code>​
 +$ sudo qemu-img create -f qcow2 /​var/​lib/​libvirt/​images/​android_x86_10GB.qcow2 10G
 +Formatting '/​var/​lib/​libvirt/​android_x86_1GB.qcow2',​ fmt=qcow2 size=10737418240 cluster_size=65536 lazy_refcounts=off refcount_bits=16
 +</​code>​
 +</​WRAP>​
 +
 +===== 仮想マシンの定義 =====
 +<​code>​
 +$ vi android_x86_64.xml
 +</​code>​
 +<WRAP prewrap 100%>
 +<file xml android_x86_64.xml>​
 +<domain type='​kvm'>​
 +  <​name>​android_x86_64</​name>​
 +  <​uuid>​1cc67cd9-ef1d-41a8-a877-20c37e0b8fbf</​uuid>​
 +  <​metadata>​
 +    <​libosinfo:​libosinfo xmlns:​libosinfo="​http://​libosinfo.org/​xmlns/​libvirt/​domain/​1.0">​
 +      <​libosinfo:​os id="​http://​android-x86.org/​android-x86/​8.1"/>​
 +    </​libosinfo:​libosinfo>​
 +  </​metadata>​
 +  <memory unit='​KiB'>​2097152</​memory>​
 +  <​currentMemory unit='​KiB'>​2097152</​currentMemory>​
 +  <vcpu placement='​static'>​1</​vcpu>​
 +  <os>
 +    <type arch='​x86_64'​ machine='​pc-i440fx-3.0'>​hvm</​type>​
 +  </os>
 +  <​features>​
 +    <​acpi/>​
 +    <​apic/>​
 +    <vmport state='​off'/>​
 +  </​features>​
 +  <cpu mode='​host-model'​ check='​partial'>​
 +    <model fallback='​allow'/>​
 +  </​cpu>​
 +  <clock offset='​utc'>​
 +    <timer name='​rtc'​ tickpolicy='​catchup'/>​
 +    <timer name='​pit'​ tickpolicy='​delay'/>​
 +    <timer name='​hpet'​ present='​no'/>​
 +  </​clock>​
 +  <​on_poweroff>​destroy</​on_poweroff>​
 +  <​on_reboot>​restart</​on_reboot>​
 +  <​on_crash>​destroy</​on_crash>​
 +  <pm>
 +    <​suspend-to-mem enabled='​no'/>​
 +    <​suspend-to-disk enabled='​no'/>​
 +  </pm>
 +  <​devices>​
 +    <​emulator>/​usr/​bin/​qemu-kvm</​emulator>​
 +    <disk type='​file'​ device='​disk'>​
 +      <driver name='​qemu'​ type='​qcow2'/>​
 +      <source file='/​var/​lib/​libvirt/​images/​android_x86_10GB.qcow2'/>​
 +      <target dev='​hda'​ bus='​ide'/>​
 +      <boot order='​2'/>​
 +      <address type='​drive'​ controller='​0'​ bus='​0'​ target='​0'​ unit='​0'/>​
 +    </​disk>​
 +    <disk type='​file'​ device='​cdrom'>​
 +      <driver name='​qemu'​ type='​raw'/>​
 +      <source file='/​home/​tomoyan/​android-x86_64-8.1-r1.iso'/>​
 +      <target dev='​hdb'​ bus='​ide'/>​
 +      <​readonly/>​
 +      <boot order='​1'/>​
 +      <address type='​drive'​ controller='​0'​ bus='​0'​ target='​0'​ unit='​1'/>​
 +    </​disk>​
 +    <​controller type='​usb'​ index='​0'​ model='​ich9-ehci1'>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x05'​ function='​0x7'/>​
 +    </​controller>​
 +    <​controller type='​usb'​ index='​0'​ model='​ich9-uhci1'>​
 +      <master startport='​0'/>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x05'​ function='​0x0'​ multifunction='​on'/>​
 +    </​controller>​
 +    <​controller type='​usb'​ index='​0'​ model='​ich9-uhci2'>​
 +      <master startport='​2'/>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x05'​ function='​0x1'/>​
 +    </​controller>​
 +    <​controller type='​usb'​ index='​0'​ model='​ich9-uhci3'>​
 +      <master startport='​4'/>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x05'​ function='​0x2'/>​
 +    </​controller>​
 +    <​controller type='​pci'​ index='​0'​ model='​pci-root'/>​
 +    <​controller type='​ide'​ index='​0'>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x01'​ function='​0x1'/>​
 +    </​controller>​
 +    <​interface type='​bridge'>​
 +      <mac address='​52:​54:​00:​72:​67:​7f'/>​
 +      <source bridge='​br0'/>​
 +      <model type='​e1000'/>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x03'​ function='​0x0'/>​
 +    </​interface>​
 +    <serial type='​pty'>​
 +      <target type='​isa-serial'​ port='​0'>​
 +        <model name='​isa-serial'/>​
 +      </​target>​
 +    </​serial>​
 +    <console type='​pty'>​
 +      <target type='​serial'​ port='​0'/>​
 +    </​console>​
 +    <input type='​tablet'​ bus='​usb'>​
 +      <address type='​usb'​ bus='​0'​ port='​1'/>​
 +    </​input>​
 +    <input type='​mouse'​ bus='​ps2'/>​
 +    <input type='​keyboard'​ bus='​ps2'/>​
 +    <​graphics type='​spice'​ autoport='​yes'>​
 +      <listen type='​address'/>​
 +      <image compression='​off'/>​
 +    </​graphics>​
 +    <sound model='​es1370'>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x04'​ function='​0x0'/>​
 +    </​sound>​
 +    <​video>​
 +      <model type='​qxl'​ ram='​65536'​ vram='​65536'​ vgamem='​16384'​ heads='​1'​ primary='​yes'/>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x02'​ function='​0x0'/>​
 +    </​video>​
 +    <​redirdev bus='​usb'​ type='​spicevmc'>​
 +      <address type='​usb'​ bus='​0'​ port='​2'/>​
 +    </​redirdev>​
 +    <​redirdev bus='​usb'​ type='​spicevmc'>​
 +      <address type='​usb'​ bus='​0'​ port='​3'/>​
 +    </​redirdev>​
 +    <​memballoon model='​virtio'>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x06'​ function='​0x0'/>​
 +    </​memballoon>​
 +  </​devices>​
 +</​domain>​
 +</​file>​
 +ネットワークインターフェースのモデルは e1000 を選んでブリッジ br0 へ接続する。\\
 +<code xml>
 +    <​interface type='​bridge'>​
 +      <mac address='​52:​54:​00:​72:​67:​7f'/>​
 +      <source bridge='​br0'/>​
 +      <model type='​e1000'/>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x03'​ function='​0x0'/>​
 +    </​interface>​
 +</​code>​
 +マウスの動きを良くする為に USB タブレットを追加する。\\
 +<code xml>
 +    <input type='​tablet'​ bus='​usb'>​
 +      <address type='​usb'​ bus='​0'​ port='​1'/>​
 +    </​input>​
 +</​code>​
 +サウンドは es1370 を選ぶ。\\
 +<code xml>
 +    <sound model='​es1370'>​
 +      <address type='​pci'​ domain='​0x0000'​ bus='​0x00'​ slot='​0x04'​ function='​0x0'/>​
 +    </​sound>​
 +</​code>​
 +</​WRAP>​
 +<​code>​
 +$ sudo virsh define android_x86_64.xml
 +ドメイン android_x86_64 が android_x86_64.xml から定義されました
 +</​code>​
 +
 +===== インストール =====
 +「Installation - Install Android-x86 to harddisk」選択して Enter を押す。\\
 +{{:​android:​android_x86_001.png?​600|Installation CD 8.1-r1}}\\ \\
 +↓下矢印キーを1回押すと「Create/​Modify partitions」を選択できるので Enter を押す。\\
 +{{:​android:​android_x86_002.png?​600|Choose Partition}}\\ \\
 +GPT にはしないので <No> のまま Enter を押す。\\
 +{{:​android:​android_x86_003.png?​600|Confirm}}\\ \\
 +[ New ] を選択して Enter を押す。\\
 +{{:​android:​android_x86_004.png?​600|cfdisk (util-linux-ng) - New}}\\ \\
 +[Primary] を選択して Enter を押す。\\
 +{{:​android:​android_x86_005.png?​600|cfdisk (util-linux-ng) - Primary}}}\\ \\
 +Size (in MB): 10734 を入力して Enter を押す。\\
 +{{:​android:​android_x86_006.png?​600|cfdisk (util-linux-ng) - 10734}}\\ \\
 +[ Bootable ] を選択して Enter を押す。\\
 +{{:​android:​android_x86_007.png?​600|cfdisk (util-linux-ng) - Bootable}}\\ \\
 +[ Write ] を選択して Enter を押す。\\
 +{{:​android:​android_x86_008.png?​600|cfdisk (util-linux-ng) - Write}}\\ \\
 +yes を入力して Enter を押す。\\
 +{{:​android:​android_x86_009.png?​600|cfdisk (util-linux-ng) - yes}}\\ \\
 +[ Quit ] を選択して Enter を押す。\\
 +{{:​android:​android_x86_010.png?​600|cfdisk (util-linux-ng) - Quit}}\\ \\
 +sda1 が選択された状態で < OK > を選択して Enter を押す。\\
 +{{:​android:​android_x86_011.png?​600|Choose Partition - sda1}}\\ \\
 +ext4 を選択し < OK > を選択して Enter を押す。\\
 +{{:​android:​android_x86_012.png?​600|Choose filesystem - ext4}}\\ \\
 +< Yes > を選択して Enter を押す。\\
 +{{:​android:​android_x86_013.png?​600|Confirm - format sda1 to ext4}}\\ \\
 +< Yes > を選択して Enter を押す。\\
 +{{:​android:​android_x86_014.png?​600|Confirm - Install GRUB}}\\ \\
 +< Yes > を選択して Enter を押す。\\
 +{{:​android:​android_x86_015.png?​600|Question - /system directory as read-write}}\\ \\
 +Android-x86 のインストールが始まる。\\
 +{{:​android:​android_x86_016.png?​600|Installing Android-x86 to sda1}}\\ \\
 +Reboot 選択し < OK > を選択して Enter を押す。\\
 +{{:​android:​android_x86_017.png?​600|Congratulations!}}\\ \\
 +ハードディスクから「Android-x86 8.1-r1」を起動する。\\
 +{{:​android:​android_x86_018.png?​600|GRUB}}\\ \\
 +Android-x86 が起動するのを待つ。\\
 +{{:​android:​android_x86_019.png?​600|Android 起動中}}\\ \\
 +「Hi there」の画面で ENGLISH (UNITED STATES) をクリックして日本語を選択する。\\
 +{{:​android:​android_x86_020.png?​600|Hi there}}\\ \\
 +「ようこそ」に変わったら [開始] を押す。\\
 +{{:​android:​android_x86_021.png?​600|ようこそ}}\\ \\
 +「アップデートを確認中...」でアップデート確認が終るのを待つ。\\
 +{{:​android:​android_x86_022.png?​600|アップデートを確認中}}\\ \\
 +「アプリとデータのコピー」で「データのコピー」か「新規としてセットアップ」するかをお好みで好きな方を選択する。\\
 +{{:​android:​android_x86_023.png?​600|アプリとデータのコピー}}\\ \\
 +「Google ログイン」で自分の Google アカウントでログインする。\\
 +{{:​android:​android_x86_024.png?​600|Google アカウント ログイン}}\\ \\
 +「ホームアプリの選択」で「Launcher3」を選択し「常時」をクリックする。\\
 +{{:​android:​android_x86_025.png?​600|ホームアプリの選択}}\\ \\
 +「Android x86 8.1-r1」が使えるようになる。\\
 +{{:​android:​android_x86_026.png?​600|Android x86 8.1-r1}}\\ \\
 +
 +===== システムログを見る =====
 +<​code>​
 +$ logcat | less
 +</​code>​
  
android/android_x86/qemu.txt · 最終更新: 2020/05/19 06:52 by ともやん