Qemu er en maskinvarevirtualiseringsløsning for Linux som muliggjør emulering av et helt operativsystem installert på en virtuell disk. VirGL er en OpenGL-renderer lagt til nylig QEMU-bygg, den lar deg lage et virtuelt 3D-kompatibelt grafikkort inne i QEMU virtuell maskin.
Ved å bruke en kombinasjon av Android-x86, QEMU og VirGL-teknologier, vil vi starte og installere komplett Android OS på en virtuell maskin.
Et kompatibilitetsmerknad: Denne guiden er testet med Ubuntu 19.04 og instruksjonene nedenfor fungerer for Ubuntu 19.04 eller nyere versjoner. QEMU i eldre versjoner av Ubuntu mangler VirGL-støtte. Du må også ha en Kernel-basert Virtual Machine (KVM) kompatibel CPU på systemet ditt. De fleste moderne prosessorer har støtte for KVM, men du kan kontrollere tilstedeværelsen ved å kjøre kommandoen nedenfor:
egrep -c '(vmx | svm)' / proc / cpuinfoEthvert tall som er større enn 0 innebærer KVM-støtte. Du må fremdeles sørge for at virtualisering er aktivert i BIOS. Mer informasjon finner du her.
Forutsetninger
Vi starter med å installere nødvendige QEMU-pakker og legge til brukernavn i KVM-gruppen. Kjør kommandoer nedenfor:
sudo apt installer qemu qemu-kvmsudo adduser 'id -un' kvm
Start systemet på nytt. Last ned Android-x86 ISO-bilde herfra. Kjør følgende kommando for å lage en virtuell harddisk:
qemu-img opprett -f qcow2 androidx86_hda.bilde 10GDu kan erstatte 10G med hvilket som helst nummer, og det vil opprette en virtuell disk av den størrelsen i GB.
Android-x86 QEMU Installasjon Walkthrough
For å starte et levende bilde av Android-x86 inne i en QEMU virtuell maskin, utfør kommando:
qemu-system-x86_64 \-aktivere-kvm \
-m 2048 \
-smp 2 \
-cpu vert \
-soundhw es1370 \
-enhet virtio-mus-pci -enhet virtio-tastatur-pci \
-seriell mon: stdio \
-oppstartsmeny = på \
-netto nic \
-nettbruker, hostfwd = tcp :: 5555-: 22 \
-enhet virtio-vga, virgl = on \
-vis gtk, gl = on \
-hda androidx86_hda.img \
-cdrom android-x86_64-8.1-r3.iso
Legg merke til argumentene “hda” og “cdrom”. Du må sørge for at de samsvarer med navnene på den virtuelle harddisken og det nedlastede Android-x86 iso-bildet. Hvis du har fulgt instruksjonene riktig opp til her, bør du se et nytt vindu-popup:
Velg "Installasjon" og vent til partisjoneringsskjermen kommer opp.
Velg "Opprett / modifiser partisjoner", og deretter GPT for å være "Ja".
Ignorer advarselen på neste skjermbilde, bare trykk på hvilken som helst tast for å fortsette. Du vil se en partisjonssjef.
Velg "Ny" og fortsett deretter med å trykke på
Trykk på “Skriv” -alternativet og skriv deretter “ja” for å bekrefte. Velg alternativet "Avslutt" for å avslutte partisjonsbehandling. Velg "sda1" -partisjon på neste skjerm.
Velg “ext4” for å formatere partisjonen, og velg “Ja” -alternativet når du blir bedt om det.
Velg "Ja" når du blir bedt om GRUB-opplasteren.
På neste skjerm kan du se en advarsel om konvertering til “MBR”. Velg “Ja”.
Vent til installasjonen er ferdig.
Ikke velg noe alternativ, bare lukk vinduet på følgende melding:
Android-x86 er nå fullstendig installert i en QEMU virtuell maskin. For å starte opp i nylig installert operativsystem, vil vi bruke den samme lange kommandoen ovenfra mens vi utelater “cdrom” -argumentet.
qemu-system-x86_64 \-aktivere-kvm \
-m 2048 \
-smp 2 \
-cpu vert \
-soundhw es1370 \
-enhet virtio-mus-pci -enhet virtio-tastatur-pci \
-seriell mon: stdio \
-oppstartsmeny = på \
-netto nic \
-nettbruker, hostfwd = tcp :: 5555-: 22 \
-enhet virtio-vga, virgl = on \
-vis gtk, gl = on \
-hda androidx86_hda.img
Du vil se Android-oppstartslogoen og deretter først kjøre oppsettskjermen.
Vent til installasjonen er ferdig.
Bare gå gjennom oppsettet for å komme til startskjermen. Android-x86 har full innebygd Play Store-støtte. Merk at den virtuelle maskinen som kjører, vil ta tak i alle tastetrykk og mushendelser. For å frigjøre sperringen, må du trykke
Støtte for 3D-maskinvareakselerasjon er til stede.
Viktige ting du bør vite
- Du kan tilpasse kommandoen vi har brukt ovenfor til en viss grad: "-m" -bryteren er for RAM, "-smp" -bryteren er for CPU-kjerner. Hvis du vil utforske alle alternativene, har Gentoo Wiki en ganske god forklaring.
vil bytte fordypende fullskjermopplevelse. - Du kan aktivere internettforbindelse i Android-x86 ved å trykke på “VirtWifi” -alternativet i “Wi-Fi” -innstillingene.
- Ikke alt fungerer i virtuell maskin, bluetooth for eksempel.
- Kompatibilitet og ytelse for maskinvareakselerasjon vil avhenge av PC-ens grafikkort, drivere og CPU-hestekrefter.
- Den siste utgivelsen av Android-x86 leveres med støtte for gratisformatvinduer. Du kan minimere, maksimere, gjenopprette vinduer og feste dem til hjørner, akkurat som du ville gjort på et stasjonært operativsystem.
- Android-x86 henger etter nåværende Android-utgivelse med en versjon eller to. Det vil imidlertid ikke påvirke din evne til å kjøre apper og spill.
- Android-x86 i QEMU virtuell maskin er kanskje ikke et 100% glatt seil. Du kan forvente noen tilfeldige krasj og kraft stenger nå og da.
Forbedring av appkompatibilitet i Android-x86
Noen Android-apper kan nekte å jobbe med x86-arkitektur. Android-x86 inkluderer et kompatibilitetsbibliotek som hjelper veldig, men du kan fremdeles finne problemer med visse apper. For å aktivere kompatibilitetslaget, bytt "native bridge" i systeminnstillingene.
Til slutt har vi et lite problem som ennå ikke er løst. Oppløsning på Android-x86 virtuell maskin. Hvis du har low-end PC-maskinvare, vil jeg foreslå at du bare kjører Android i vindusmodus med standardoppløsningen (deaktiver "Zoom To Fit" i "View" -menyen). Hvis du har kompatibel maskinvare, kan du øke oppløsningen ved å følge instruksjonene nedenfor.
Endring av oppløsning på Android-x86-installasjon i QEMU Virtual Machine (VM)
ADVARSEL: All kommandoen nevnt nedenfor er ment å utføres i Android-x86 VM-installasjon (gjest). IKKE prøv å kjøre disse kommandoene i Ubuntu-installasjonen (vert).
For å endre oppløsningen til Android VM permanent, må vi kjøre noen kommandoer i en terminal som er lansert i vår kjørende VM-forekomst. Android-x86 kommer med en terminalemulator-app, start den og kjør følgende kommandoer en etter en (tillat root-tilgang når du blir bedt om det):
sumontere / dev / blokk / sda1 / mnt
vi / mnt / grub / menu.første
trykk når du ser tekstfilen for å starte redigeringsmodus. I den første oppføringen legger du til ønsket oppløsning i “video = widthxheight” -format, som vist på skjermbildet nedenfor:
For å lagre filen, trykk først
Start Android VM på nytt. Ønsket oppløsning er satt nå. Du kan se noe klipping i vindusmodus hvis VM-oppløsningen er lik skjermoppløsningen, da vinduetittellinjen og kantene tar litt plass. For å fikse dette, må du aktivere "Zoom To Fit", som vist på skjermbildet nedenfor:
Hvis du bytter til fullskjerm ved å trykke på
Vise frem
Denne artikkelen hevder å kjøre 3D Android-spill i Linux, det ville være en forbrytelse å ikke inkludere noen opptak. Så her er noen spillopptak av SuperTuxKart som kjører i full fart inne i QEMU virtuell maskin med Ubuntu 19.04 som programleder. Jeg kontrollerer spillet med piltastene på tastaturet, men selve spillet kjører i Android-x86 VM. GIF nedenfor er raskere og har mistet kvaliteten under konvertering:
Dette avslutter det lange innlegget. Hvis du liker å kjøre Android-apper og -spill på stasjonær PC, er denne metoden mye bedre enn å bruke tredjepartsemulatorer som har sprø personvernregler, pluss at det ikke krever at du blander deg med systempartisjoner for en dobbel oppstart.