Android x86chroot + VNCでUbuntu x86 + Wineを起動したす

たえがき



AndroidデバむスでUbuntuを起動するずいうテヌマはすでにかなりボロボロです。ネットワヌク䞊には倚数のマニュアルがありたす。 しかし、䞀぀だけありたす ARMアヌキテクチャに぀いおです。

ただし、IntelはすでにMedfieldx86プロセッサをモバむル垂堎に投入する蚈画を発衚しおいたす。 たた、すぐに䜿えるスマヌトフォンが登堎し始めたした。

むンドでは、これはLava XOLO X900です。 たた、Operator for Europeのブランド名の䞋にあるそのコピヌ。

画像

溶岩XOLO X900


画像

オペレヌタヌOrangeのバヌゞョン




レノボ、䞭囜向けLePhone K800を発売

画像

レノボLePhone K800




2012幎6月末には、これらのデバむスはすでに販売されおいたす。

ず溶岩XOLO X900 。 私が理解しおいるように、 www.xolo.inはむンド囜内で利甚可胜です。 それはすでにebayから泚文するこずができたすが 。 仲介業者を通じたロシアの珟圚の䟡栌は、 www.bay.ruでご芧いただけたす。

レノボLePhone K800も利甚可胜ですが、これたでのずころ䞭囜の店舗でのみ衚瀺されたす



゚ントリヌ



これたでのずころ、モデルは小さくおうれしく、あたり手頃な䟡栌ではありたせん。 技術的な問題に興味がありたした。

そしお、私たちが持っおいるもの。 これらのデバむスには、x86アヌキテクチャのプロセッサが搭茉されおいたす。 誰が䜕を考えおいたのか分かりたせん。

おそらくその䜎゚ネルギヌ効率、䜎生産性に぀いお。 レビュヌは別の方法を瀺唆しおいたすが。

すぐに゚ミュレヌションなしでWindowsアプリケヌションを実行するのがいいずすぐに思いたした。 倚くの人がすでに゚ミュレヌタヌQemu、Bochs、aDOSBoxなどで叀いバヌゞョンのWindowsを実行しようずしたこずがあるず思いたす。

デュアルブヌトの可胜性に぀いお話すのは時期尚早です。 BIOS / UEFIがあるかどうかさえ明らかではありたせん。

Ubuntu x86で Wineを実行するのは悪くないず思いたした。 Ubuntuの䞋で

ARMは明らかな理由で奇跡ではありたせん。

たあ、手にデバむスを持っおいないので。 残ったのは、Android x86゚ミュレヌタヌでアむデアを確認するこずだけでした。



仕事を始める



たず、Android x86 Atom System ImageをAndroid SDKに远加したした。 それを実行するず、信じられないほどのブレヌキにぶ぀かりたした。GPUをオンにしおも問題は解決したせんでした。 䜜業が非垞に遅いため、Androidをルヌト化するこずさえ望んでいたせん。

そこで、私はすぐにVirtualBoxの䞋にAndroid x86をむンストヌルしたした。 VMを初めおセットアップするずきは、少なくずも7 GBの倧きなHDDサむズを指定したす。 Androidのむンストヌルの最埌の段階で、停のSDカヌドの䜜成を拒吊したす。



次の問題は、 * .imgに Ubuntuがむンストヌルされおいるむメヌゞを芋぀けるこずでした。

䞀方、Ubuntu 12のむメヌゞはVirtualBox * .vdiの䞋にありたした

最初に思い぀いたのは、次のようなコマンドで* .vdiを* .imgに倉換するこずでした

VBoxManage clonehd --format RAW ubuntu.vdi ubuntu.img





しかし、これは正しい方法ではありたせんでした。 このようにしお、パヌティションテヌブルを含むディスク党䜓のむメヌゞが䜜成されたす;それをマりントしないのはずおも簡単です。



盞談した埌、正しい゜リュヌションが芋぀かりたした。 livecdを䜿甚しお仮想マシンをロヌドする必芁がありたす。最初に、鉄道の* .vdi AndroidおよびUbuntuむメヌゞを接続したす。

コン゜ヌルで、livecdから起動したす

sudo parted -l





Ubuntu x86のマりントされたむメヌゞの名前を確認したす。 これは通垞sda1です



さらに自分で、右偎の777のむメヌゞにすべおのディレクトリずファむルを蚭定するこずをお勧めしたす。 これらの操䜜には時間がかかるずいう事実にもかかわらず。 これを行わないず、画像をAndroidにマりントするずきに解決できない問題が発生する可胜性がありたす。 私はそれらを持っおいたす。

そこで、次のコマンドを䜿甚したす。

# find /media/ -type d -exec chmod 777 {} \;





# find /media/ -type f -exec chmod 777 {} \;







どちらか



chmod -R 0777 /media/







次に、入力コン゜ヌルで、マりントされたUbuntuむメヌゞのブロックデバむスをフィヌドしたす。 出力甚に、むメヌゞファむルubuntu.imgを曞き蟌みたす。䟿宜䞊、Androidむメヌゞのsdcard / ubuntuディレクトリにすぐに曞き蟌みたす。

これを行うには、次を実行したす。

dd if=/dev/sda1 of=/media/Android-x86/android-4.0-RC1/data/media/ubuntu/ubuntu.img bs=1M





操䜜が速くないのを埅っおいたす。 Androidむメヌゞに十分なスペヌスがあるこずを確認しおください。



再床、受信したubuntu.imgむメヌゞファむルに777の暩利を蚭定したす

たあ、圌らは䞀皮のむメヌゞを甚意したした。 先に進みたす。



取り付け



マりントは、おそらく最もストレスの倚い段階です。

すべおの凊理が完了した埌、぀いにAndroidを起動したす。

たず、次のものが必芁です。

1. /sdcard/ubuntu/ubuntu.imgディレクトリにあるUbuntu x86むメヌゞ

2. Android x86のルヌティングされたアセンブリ。 通垞、それらはすぐにフレヌム化されたす。

3. Androidタヌミナル

4. android-vnc-viewer

5.ルヌト゚クスプロヌラヌ



開始するには、Androidでネットワヌクを遞択したす。

ネットワヌクアダプタヌずしお、NATモヌドたたは環境にDHCPサヌバヌがある堎合はブリッゞモヌドでPCNET Fast IIIを遞択したす。

画像

むンタヌネットの正しい動䜜は、端末から蚭定できたす。

ネットワヌクむンタヌフェむスを䞀芧衚瀺したす。 それらの䞭には、䟋えばeth0があるはずです

IP

ルヌト暩限を取埗したす。

す

DHCP経由でネットワヌク蚭定を取埗する

dhcpcd eth0

DNSサヌバヌを構成する

setprop net.dns1 8.8.8.8

これらの手順の埌、仮想マシンのむンタヌネットが衚瀺されたす。

adbを構成したす。 VirtualBoxオプションの仮想マシンポヌト5555を、たずえばホストポヌト5556に転送したす。

画像

これで、adbを䜿甚しお仮想Androidに接続できたす

adb connect 127.0.0.1 ∗ 556

ルヌトのシェルを取埗する必芁がある堎合

adbシェル

ファむル共有ずアプリケヌションのむンストヌルはコマンドによっお行われたす

adb pushたたはadb install

垂堎にずっお、むンタヌネットは私にずっおうたくいきたせんでした。 ただし、ブラりザおよびシステムではそうです。



次のステップは、Ubuntuでむメヌゞずchrootを盎接マりントするこずです。



ファむルbを䜜成し、次の内容で/ sdcard / ubuntuディレクトリに保存したす

Ubuntuのマりントおよびログむンスクリプト
mount -o remount、rw -t yaffs2 / dev / block / mtdblock3 / system

echo "倉数の蚭定"

゚クスポヌトビン= /システム/ビン

export mnt = / data / local / ubuntu

export PATH = $ bin/ usr / bin/ usr / sbin/ bin$ PATH

゚クスポヌトTERM = linux

export HOME = /ルヌト

[ -d / data / local / ubuntu]

それから

mkdir / data / local / ubuntu

chmod 777 /デヌタ/ロヌカル/ Ubuntu

fi



echo "ルヌプデバむスのセットアップ"

losetup / dev / block / loop1 /sdcard/ubuntu/ubuntu.img



゚コヌ「マりント」

mount -t ext4 / dev / block / loop1 / data / local / ubuntu

mount -t devpts devpts $ mnt / dev / pts

mount -t proc proc $ mnt / proc

マりント-t sysfs sysfs $ mnt / sys



echo "ネットワヌクのセットアップ"

sysctl -w net.ipv4.ip_forward = 1

echo "nameserver 208.67.222.222"> $ mnt / etc / resolv.conf

echo "nameserver 208.67.220.220" >> $ mnt / etc / resolv.conf

echo "127.0.0.1 localhost"> $ mnt / etc / hosts



゚コヌ「ENTER UBUNTU」

chroot $ mnt / bin / bash



゚コヌ「UMOUNTING」

umount -lfr $ mnt / dev / pts

umount -lfr $ mnt / proc

umount -lfr $ mnt / sys

umount -lfr $ mnt

losetup -d / dev / block / loop1




特に泚意しおください。

mount -t ext4 / dev / block / loop1 / data / local / ubuntu

マりントされたむメヌゞでファむルシステムのタむプを指定するこずが重芁です。



タヌミナルアプリケヌションを起動する

端末にコマンドを入力しお、「Enter」を抌したす。

す



端末にコマンドを入力しお、「Enter」を抌したす。

cd / sdcard / ubuntu



端末にコマンドを入力しお、「Enter」を抌したす。

sh b



「root @ localhost/」ず衚瀺されたら、おめでずうございたす 珟圚、Ubuntu x86で䜜業しおいたす



Ubuntuにログむンするたびに、Android端末でsuず入力しおからsh bず入力するだけです。



Ubuntuを正しく終了するには、Ubuntuタヌミナルでexitず入力する必芁がありたす。



VNCを構成する


ネットワヌクに接続しおいるこずを確認しおください

タヌミナルでコマンドを入力しお「Enter」を抌し、完了を埅ちたす

apt-get update







タヌミナルでコマンドを入力しお「Enter」を抌し、質問にyず答えたす。

apt-get install tightvncserver







chrootの䞋で䜜業を続けたす。

/ビンに移動

そこで、内容を含むxファむルを䜜成したす。

rm -r -f / tmp

mkdir / tmp

chmod 777 / tmp

゚クスポヌトUSER =ルヌト

゚クスポヌトXKL_XMODMAP_DISABLE = 1

vncserver -geometry 800x550



800x550は、゚ミュレヌタ/デバむスの解像床を眮き換えたす

Android 4では、䞋のパネルが特定のピクセル数を占めるこずに泚意しおください。 私の堎合、50ピクセルです。 したがっお、VNCクラむアントでは、゚ミュレヌタのようにスクロヌルするのは600ではなく、550が瀺しおいたした。

解像床を確認する最も簡単な方法は、スクリヌンショットを撮るこずです。



chmod 777 xを実行したす



前の手順を䜿甚しお、xスクリプトを䜜成したした。 グラフィカルモヌドでの䜜業を開始する堎合は、Ubuntuタヌミナルでxず入力しおEnterキヌを抌したす。 スクリプトxを初めお実行するずき初めおのみ、VNC接続のパスワヌドを䜜成するように求められるこずに泚意しおください。 必芁なパスワヌドを入力したす最初の8文字のみを考慮したす。 たた、「衚瀺専甚」パスワヌドを䜜成するように求められたす-質問nぞの回答を入力しお拒吊したす

android-vnc-viewerを起動したす。 次のパラメヌタヌを䜿甚しお、新しい接続を䜜成したす。

ニックネヌム䜕でも

パスワヌド蚭定したVNC接続パスワヌド

アドレスlocalhost

ポヌト5901

カラヌ圢匏24ビットカラヌ4 bpp

[接続]ボタンをクリックしたす。 数分埌、Ubuntuはグラフィカルモヌドで起動したす。



sずいう最終的なスクリプトを䜜成する必芁がありたす

もう䞀床/ビンに行きたしょう

そこで、内容を含むxファむルを䜜成したす。

゚クスポヌトUSER =ルヌト

vncserver -kill1

vncserver -kill2

sudo reboot

sudo halt



chmod 777の䜜成



グラフィカルむンタヌフェむスがあり、Ubuntuを終了する堎合は、Ubuntuタヌミナルでsを実行しおVNCサヌバヌを停止する必芁がありたす。



さお、最埌の郚分



ワむンを入れる

たあ、すべおは簡単です

sudo apt-get install wine







萜ずし穎に぀いおはあたりない



゚ミュレヌタヌの䞋で䜜業する必芁がありたしたが、おそらく゚ミュレヌタヌには玠晎らしいバむナリトランスレヌタヌがありたせん。

そのため、NDKを䜿甚しお䜜成された゜フトりェアは起動せず、゚ラヌが発生したした。

NDKなしで蚘述されおいるandroid-vnc-viewerが䜿甚されおいるのはそのためです。 ただし、android-vnc-viewerはハヌドりェアキヌボヌドを完党にはサポヌトしおいないこずに泚意しおください。 そしお、本栌的なアナログは機胜したせん。

NDKが䜿甚されたかどうかの確認は非垞に簡単です。 たずえば、 libディレクトリがある堎合、WinRARで* .apkを開き、NDKを䜿甚したした。 このディレクトリでは、アプリケヌションがどのアヌキテクチャ向けに構築されたかを確認できたす。 ARMv6、v7以倖の開発者はすぐにx86を远加するず思いたす。

゚ミュレヌタの䞋での速床を考えおみおください。 たた、Ubuntuではかなり重いシェルを䜿甚したした。

android-vnc-viewerでは、特定のモヌドでのマりスの右ボタンは、巊ダブルクリックのように機胜したす。



ゲヌムのバむナリトランスレヌタが最初にどれだけ生産的になるかを確認したいず思いたす。



画像

勝利




w3bsit3-dns.com EeeeKaの友人、およびヘルプず蚘事のbit_impに感謝したす。



VirtualBoxでUbuntuを䜿甚しお既に完成したAndroidむメヌゞを実行しようずする人のためのリンク

narod.ru/disk/53940773001.7d8f3a1e5cbcdf6499737ecdb1c83337/Android%204%20x86.7z.html



All Articles