A Qemu egy hardveres virtualizációs megoldás a Linux számára, amely lehetővé teszi a virtuális lemezre telepített teljes operációs rendszer emulálását. A VirGL egy OpenGL renderelő, amely hozzá lett adva a legújabb QEMU buildekhez, lehetővé teszi virtuális 3D-s grafikus kártya létrehozását a QEMU virtuális gépen belül.
Az Android-x86, QEMU és VirGL technológiák kombinációjának használatával teljes Android operációs rendszert indítunk és telepítünk egy virtuális gépbe.
Kompatibilitási megjegyzés: Ezt az útmutatót az Ubuntu 19 verzióval tesztelték.A 04 és az alábbi utasítások az Ubuntu 19 esetén működnek.04 vagy újabb verziók. A QEMU az Ubuntu régebbi verzióiban nem rendelkezik a VirGL támogatással. Szüksége van egy rendszermag-alapú virtuális gép (KVM) kompatibilis CPU-ra is. A legtöbb modern CPU támogatja a KVM-et, de az alábbi parancs futtatásával ellenőrizheti annak jelenlétét:
egrep -c '(vmx | svm)' / proc / cpuinfoBármely 0-nál nagyobb szám KVM-támogatást jelent. Ennek ellenére meg kell győződnie arról, hogy a virtualizáció engedélyezve van-e a BIOS-ban. További információ itt található.
Előfeltételek
Kezdjük a szükséges QEMU csomagok telepítésével és a felhasználónév hozzáadásával a KVM csoporthoz. Futtassa az alábbi parancsokat:
sudo apt install qemu qemu-kvmsudo adduser 'id -un' kvm
Indítsa újra a rendszert. Töltse le az Android-x86 ISO képet innen. Futtassa a következő parancsot egy virtuális merevlemez létrehozásához:
qemu-img create -f qcow2 androidx86_hda.img 10GA 10G-t tetszőleges számmal helyettesítheti, és ekkora virtuális lemezt hoz létre GB-ban.
Android-x86 QEMU telepítési útmutató
A QEMU virtuális gépen belüli Android-x86 élő képbe történő indításhoz hajtsa végre a következő parancsot:
qemu-system-x86_64 \-enable-kvm \
-m 2048 \
-smp 2 \
-cpu host \
-soundhw es1370 \
-eszköz virtio-egér-pci-eszköz virtio-billentyűzet-pci \
-soros mon: stdio \
-indító menü = be \
-net nic \
-net user, hostfwd = tcp :: 5555-: 22 \
-eszköz virtio-vga, virgl = on \
-kijelző gtk, gl = be \
-hda androidx86_hda.img
-cdrom android-x86_64-8.1-r3.iso
Figyelje meg a „hda” és „cdrom” argumentumokat. Győződjön meg arról, hogy megegyeznek-e a virtuális merevlemez és a letöltött Android-x86 iso image nevével. Ha ideig megfelelően követte az utasításokat, akkor egy új ablakot kell megjelenítenie:
Válassza ki a „Telepítés” bejegyzést, és várja meg, amíg a partíciós képernyő megjelenik.
Válassza a „Partíciók létrehozása / módosítása” lehetőséget, majd válassza a GPT lehetőséget „Igen”.
Figyelmen kívül hagyja a figyelmeztetést a következő képernyőn, csak nyomja meg bármelyik gombot a folytatáshoz. Megjelenik egy partíciókezelő.
Válassza az „Új” lehetőséget, majd folytassa a
Nyomja meg az „Írjon” opciót, majd a megerősítéshez írja be az „igen” szót. A partíciókezelőből való kilépéshez válassza a „Kilépés” lehetőséget. Válassza az „sda1” partíciót a következő képernyőn.
Válassza az „ext4” elemet a partíció formázásához, és kérésre válassza az „Igen” lehetőséget.
Válassza az „Igen” lehetőséget, amikor a GRUB rendszerindítóról kérdezi.
A következő képernyőn figyelmeztetést láthat az „MBR” formátumú konverzióról. Válassza az „Igen” lehetőséget.
Várja meg a telepítés befejezését.
Ne válasszon egyetlen lehetőséget sem, csak zárja be az ablakot a következő parancssorba:
Az Android-x86 most már teljesen telepítve van egy QEMU virtuális gépbe. Az újonnan telepített operációs rendszerbe történő indításhoz ugyanazt a hosszú parancsot fogjuk használni felülről, a „cdrom” argumentum mellőzésével.
qemu-system-x86_64 \-enable-kvm \
-m 2048 \
-smp 2 \
-cpu host \
-soundhw es1370 \
-eszköz virtio-egér-pci-eszköz virtio-billentyűzet-pci \
-soros mon: stdio \
-indító menü = be \
-net nic \
-net user, hostfwd = tcp :: 5555-: 22 \
-eszköz virtio-vga, virgl = on \
-kijelző gtk, gl = be \
-hda androidx86_hda.img
Megjelenik az Android indító logója, majd először futtassa a beállítási képernyőt.
Várja meg a telepítés befejezését.
Csak menjen végig a beállításon, hogy elérje a kezdőképernyőt. Az Android-x86 teljes beépített Play Store támogatással rendelkezik. Vegye figyelembe, hogy a futó virtuális gép megragadja az összes billentyűleütést és egéreseményt. A tartás feloldásához meg kell nyomnia
3D hardveres gyorsítás támogatás van jelen.
Fontos tudnivalók
- Bizonyos mértékben testreszabhatja a fent használt parancsot: a „-m” kapcsoló a RAM, a „-smp” a CPU magoké. Ha meg szeretné vizsgálni az összes lehetőséget, a Gentoo Wiki nagyon jó magyarázattal szolgál.
váltani fogja a teljes képernyős élményt. - Aktiválhatja az internetkapcsolatot az Android-x86-on belül, ha megérinti a „VirtWifi” opciót a „Wi-Fi” beállításokban.
- Nem minden fog működni a virtuális gépben, például a bluetooth-ban.
- A hardveres gyorsítás kompatibilitása és teljesítménye a számítógép grafikus kártyájától, illesztőprogramjaitól és a CPU lóerejétől függ.
- Az Android-x86 legújabb kiadása ingyenes formátumú Windows támogatással érkezik. Minimalizálhatja, maximalizálhatja, helyreállíthatja az ablakokat, és sarokra rögzítheti őket, akárcsak egy asztali operációs rendszer esetén.
- Az Android-x86 egy-két verzióval elmarad a jelenlegi Android-kiadástól. Ez azonban nem befolyásolja az alkalmazások és játékok futtatásának képességét.
- A QEMU virtuális gépben található Android-x86 nem biztos, hogy simán vitorla. Időnként véletlenszerű összeomlásokra és erő bezárására számíthat.
Az alkalmazások kompatibilitásának javítása az Android-x86 alkalmazásban
Egyes androidos alkalmazások megtagadhatják az x86 architektúrával való együttműködést. Az Android-x86 tartalmaz egy kompatibilitási könyvtárat, amely nagyban segít, de előfordulhat, hogy bizonyos alkalmazásokkal kapcsolatos problémákat talál. A kompatibilitási réteg engedélyezéséhez kapcsolja a „natív híd” elemet a rendszerbeállításokban.
Végül egy kis problémát kell még megoldanunk. Az Android-x86 virtuális gép felbontása. Ha alacsony szintű számítógépes hardverrel rendelkezik, azt javasoljuk, hogy futtassa az Android ablakos módban az alapértelmezett felbontást (tiltsa le a „Zoom To Fit” lehetőséget a „View” menüben). Ha rendelkezik képes hardverrel, az alábbi utasítások követésével növelheti a felbontást.
Az Android-x86 telepítés felbontásának megváltoztatása a QEMU virtuális gépben (VM)
FIGYELMEZTETÉS: Az alábbiakban említett összes parancs az Android-x86 virtuális gép telepítéséhez hajlandó végrehajtani (vendég). NE próbálja futtatni ezeket a parancsokat az Ubuntu telepítésében (gazdagép).
Az Android virtuális gép felbontásának végleges megváltoztatásához futtatnunk kell néhány parancsot a futó virtuális gép példányunkon belül elindított terminálon. Az Android-x86 tartalmaz egy terminálemulátor alkalmazást, indítsa el, és futtassa egyesével a következő parancsokat (engedélyezze a root hozzáférést, amikor a rendszer kéri):
sumount / dev / block / sda1 / mnt
vi / mnt / grub / menu.lst
nyomja meg amint meglátja a szövegfájlt a szerkesztési mód elindításához. Az első bejegyzésben adja meg a kívánt felbontást „video = widthxheight” formátumban, az alábbi képernyőképen látható módon:
A fájl mentéséhez először nyomja meg
Indítsa újra az Android virtuális gépet. A kívánt felbontást most állította be. Ablakos módban némi kivágást láthat, ha a virtuális gép felbontása megegyezik a monitor felbontásával, mivel az ablak címsora és a szegélyek helyet foglalnak. Ennek kijavításához engedélyeznie kell a „Zoom To Fit” lehetőséget, amint az az alábbi képernyőképen látható:
Ha a teljes képernyőt a gombbal kapcsolja be
Kirakat
Ez a cikk azt állítja, hogy 3D-s Android-játékokat futtat Linux alatt, bűncselekmény lenne, ha nem tartalmaz semmilyen felvételt. Tehát itt van néhány játékfelvétel a SuperTuxKart-ról, amely teljes sebességgel fut a QEMU virtuális gépen belül az Ubuntu 19-tel.04 házigazdaként. A játékot billentyűzet nyílbillentyűkkel irányítom, de maga a játék Android-x86 virtuális gépen fut. Az alábbi GIF felgyorsul, és minősége romlik az átalakítás során:
Ezzel lezárul a hosszú poszt. Ha Android alkalmazásokat és játékokat szeretne futtatni asztali PC-n, ez a módszer sokkal jobb, mint őrült adatvédelmi irányelvekkel rendelkező harmadik féltől származó emulátorok használata, ráadásul nem igényli a rendszerpartíciókkal való beavatkozást a kettős rendszerindításhoz.