2013/02/09

VirtualBoxのAndroid 4.0 x86を縦置きにする。

Android-x86-4.4r2 の設定はこちら


VirtualBoxのAndroid4.0 x86をEclipseから使う」 の記事で宿題になっていた縦画面を調べてみた。

画面の回転

画面の回転は[F9]〜[F12]キーの長押しで発生させる事ができる。

キー
方向
F9
F10
F11
F12

但し、VirtualBox は回転したことは知らないのでそのまま。

つまりこういう事になる。


マウスも90度回転するのでモニタを縦にできる場合はこれて解決する。
また、ちゃんと回転イベントが発生しているようなのでテストにもちょうど良い。

普通の縦画面

縦置きできるモニタは常に有るわけでもないので普通に縦画面にできないか調べてみた。 現行のVirtualBox-4.2はモニタの回転をサポートしていない様子。
しかし、オプションで任意のVGA解像度を指定できるらしいのでこれを試す。

1. 仮想環境の設定ファイルをテキストエディタで開いて タグを追加する。
  • ファイルの場所は VirtualBox のディレクトリの "仮想環境名\仮想環境名.xml"
  • このときVirtualBoxは完全に終了させて置くこと。

<ExtraData>
   <ExtraDataItem name="CustomVideoMode1" value="640x800x32"/>
              :
</ExtraData>


2. 起動オプションで追加したVGAモードのコードを確認する。
  • GRUB の起動メニューで 「A」を押すと起動オプションが入力できるので「vga=ask」を追加して[Enter]。

  • するとこのような画面になるのでもう一度 [Enter]。

  • VGAモードの一覧が出るので追加したVGAモードを探してモードのコードをメモる。

3. GRUBの起動メニューに Portrait を追加する。
  • Androidをデバッグモードで起動し GRUB の menu.lst を編集する。
# mount -o remount,rw /mnt
# vi /mnt/grub/menu.lst
  • 起動メニューをコピペして 「vga=モード」 を追加する。
  • モードは 16進->10進 変換が必要。(360 -> 864)

4. 再起動して確認
  • Portrait が増えているはず。

  • 縦画面になれば成功。
  • Android側の orientation の認識も Portrait になります。縦横比で決まるのでしょう。


以上。

2013/01/05

VirtualBoxで物理HDDにOSをインストール

VirtualBoxの仮想環境を物理HDDに作成する方法のメモ。

試した環境は以下の通り。
  • ホストOS=FreeBSD
  • ゲストOS=WindowsXP

1. 空の物理HDDを用意する。


USB接続はディスクのフォーマットで失敗したのでSATAで接続。
FreeBSD固有の問題かもしれない。

2. 物理HDDを参照する仮想HDDを作成する。

一番重要。

sudo VBoxManage internalcommands createrawvmdk -filename RealHDD.vmdk -rawdisk /dev/ad1
/dev/ad1 は空のHDDのデバイス。
Windowsがホストの場合は \\.\PhysicalDrive1 とかになるらしい。

3. VirtualBoxの起動

RealHDD.vmdk を仮想HDDとして起動するだけ。
注意点は VirtualBox を一般ユーザで起動する場合に RealHDD.vmdk と /dev/ad1 にパーミッションを与えておくこと。

後は普通にOSのインストールが出来る。


 


因みに MBR 等もちゃんと書き込まれるのでこのHDDから物理マシンで起動もできる。
但し VirtualBoxでインストールした XP は起動途中で落ちた。
逆に物理マシンでインストールした XP は仮想マシンで起動ができる。
が、新しいハードウェアの検出が始まってしまうので物理/仮想での共有は非現実的かも。

物理HDDにすると高速になるかと思ったが固定サイズの仮想HDDと XP の起動時間は変わらなかった。あんまりメリットないかも(^^;



2012/12/20

VirtualBoxのAndroid4.0 x86をEclipseから使う

速い新PCでAndroidアプリを始めてみただのだがやっぱり開発用エミュレータが重い!
みんなどんなPCで開発やってんだ?

と言うわけで VirtualBox の Android/4.0 x86 を開発用に使えないかと調査したら何とかなったので手順をメモ。


1. VirtualBox の仮想マシン準備


OS: Linux/Other Linux

MEM: 1G (512MでもOK)

VIDEO: 16M

NET(重要): 
 - ホストオンリーアダプタ
 - VirualBox Host-Only Ethernet Adapter
 - ブリッジアダプタでも動作確認。OS側でブリッジ作成不要。
 - PCnet-FAST III
VirualBox Host-Only Ethernet Adapter をブリッジ接続して固定IPを割振っておく



ストレージ:
 - 仮想HDD 1G (SSDなら可変/HDDなら固定)
 - CD はここから android-x86-4.0-RC2-eeepc.iso を落してマウント


2. Android 4.0 のインストール

インストーラにしたがうだけなので省略。
途中 /system の Write 権の設定のみデフォルトで無く Yes を選択する。

CD を抜いて再起動。
再起動したら Debug mode を選択。

コンソール画面にて init.sh を書き換え。
# vi /system/etc/init.sh
一番最後の行をコメントアウトして固定IPの設定を追加。

[ -e /sys/class/net/eth0 ] && start dhcpcd_eth0:eth0
#[ -e /sys/class/net/eth0 ] && start dhcpcd_eth0:eth0
netcfg eth0 up
ifconfig eth0 xxx.xxx.xxx.xxx                         ←固定IP
route add default gw xxx.xxx.xxx.yyy dev eth0    ←ルータIP
setprop net.dns1 xxx.xxx.xxx.zzz                    ←DNS IP
通常モードで再起動。

カーソルが消えちゃう場合は「マウス統合の無効化」を選択。


3. adb の準備

Android が起動している状態でDOS窓から adb を接続。
> c:\<AndroidSDK>\platform-tools\adb connect xxx.xxx.xxx.xxx
Android を再起動した場合は一旦切断。
> c:\<AndroidSDK>\platform-tools\adb disconnect xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxxはAndroidの固定IP。


4. Eclipseからの起動

adb が接続された状態で Eclipse からAndroidアプリの実行を行うとデバイスの選択画面になるので VirtualBox を選択する。


一瞬で VirtualBox 上の Android にアプリが起動する \(^o^)/


5. TODO:

縦画面ってどうすれば良いんだろ?->「VirtualBoxのAndroid 4.0 x86を縦置きにする




参考にさせて頂いたサイト:
- http://d.hatena.ne.jp/goriponsoft/20110212/1297510921
- http://d.hatena.ne.jp/hiratake55/20090107/1231316875



2012/07/07

VirtualBoxで固定IP

Windows7 の VirtualBox から Windows Server を固定IPで使う方法を 調べたのだが有りがちな割にはきれいにまとまっているサイトが 無い。
しょうがないので自分で忘備録を書く。

1. VMの設定でネットワークをブリッジアダプタにする。

2. ついでにアダプタタイプを Intel PRO に替える。
(Win2008ではPCnetは認識しなかった。)

3. VirtualBox のネットワークとホストOSのネットワークを選んで「ブリッジ接続」する。

4. ブリッジ接続が作られる。

5. 後はゲストOSのネットワークを固定IPに設定するだけ。

6. 他のPCからちゃんと ping が通ればOK。 $ ping 192.168.0.100 PING 192.168.0.100 (192.168.0.100): 56 data bytes 64 bytes from 192.168.0.100: icmp_seq=0 ttl=128 time=1.162 ms 64 bytes from 192.168.0.100: icmp_seq=1 ttl=128 time=1.264 ms 64 bytes from 192.168.0.100: icmp_seq=2 ttl=128 time=1.128 ms 64 bytes from 192.168.0.100: icmp_seq=3 ttl=128 time=1.102 ms ^C --- 192.168.0.100 ping statistics --- 4 packets transmitted, 4 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 1.102/1.164/1.264/0.062 ms

以上。



プロフィール
20年勤めた会社がリーマンショックで消滅、紆余曲折を経て現在はフリーランスのSE。 失業をきっかけにこのブログを始める。

サイト内検索

登録
RSS/2.0

カテゴリ

最近の投稿【VirtualBox】

リンク

アーカイブ