Qemu est une solution de virtualisation matérielle pour Linux qui permet l'émulation d'un système d'exploitation entier installé sur un disque virtuel. Virgl est un rendu OpenGL ajouté aux constructions QEMU récentes, il vous permet de créer une carte graphique virtuelle capable en 3D dans la machine virtuelle Qemu.
En utilisant une combinaison de technologies Android-X86, Qemu et Virgl, nous démarrerons et installerons le système d'exploitation Android complet dans une machine virtuelle.
Une note de compatibilité: ce guide a été testé avec Ubuntu 19.04 et les instructions ci-dessous fonctionneront pour Ubuntu 19.04 ou versions plus récentes. Qemu dans les versions plus anciennes d'Ubuntu manque de soutien Virgl. Vous devez également avoir un processeur compatible Virtual Machine (KVM) basé sur le noyau sur votre système. La plupart des CPU modernes ont une prise en charge de KVM, mais vous pouvez vérifier sa présence en exécutant la commande ci-dessous:
Egrep -C '(vmx | svm)' / proc / cpuinfo
Tout nombre supérieur à 0 implique le support KVM. Vous devez toujours vous assurer que la virtualisation est activée dans le BIOS. Plus d'informations peuvent être trouvées ici.
Conditions préalables
Nous allons commencer par installer des packages QEMU requis et ajouter un nom d'utilisateur au groupe KVM. Exécuter les commandes ci-dessous:
sudo apt install qemu qemu-kvm
sudo addUser 'id -un' kvm
Redémarrez votre système. Téléchargez l'image ISO Android-X86 à partir d'ici. Exécutez la commande suivante pour créer un disque dur virtuel:
Qemu-iMg Create -F QCOW2 AndroidX86_HDA.IMG 10G
Vous pouvez remplacer 10g par n'importe quel nombre et il créera un disque virtuel de cette taille en GB.
Procédure d'installation Android-X86 QEMU
Pour démarrer dans l'image en direct d'Android-X86 dans une machine virtuelle Qemu, exécutez la commande:
Qemu-system-x86_64 \
-activer-kvm \
-M 2048 \
-SMP 2 \
-hôte du processeur \
-Soundhw es1370 \
-dispositif Virtio-Mouse-PCI -vice Virtio-Keyboard-PCI \
-Serial lun: stdio \
-Menu de démarrage = sur \
-net nic \
-utilisateur net, hostfwd = tcp :: 5555-: 22 \
-dispositif virtio-vga, virgl = on \
-Afficher gtk, gl = sur \
-HDA AndroidX86_HDA.img \
-CDROM Android-X86_64-8.1-R3.ISO
Remarquez les arguments «HDA» et «CDROM». Vous devez vous assurer qu'ils correspondent aux noms du disque dur virtuel et téléchargé l'image ISO Android-X86. Si vous avez suivi correctement les instructions jusqu'à ici, vous devriez voir une nouvelle fenêtre contextuelle:
Sélectionnez l'entrée «Installation» et attendez que l'écran de partitionnement apparaisse.
Choisissez «Créer / modifier les partitions», puis GPT pour être «oui».
Ignorez l'avertissement sur l'écran suivant, appuyez simplement sur n'importe quelle touche pour continuer. Vous verrez un gestionnaire de partition.
Sélectionnez «Nouveau», puis continuez à appuyer sur la clé pour les quatre invites suivantes. Vous n'avez rien à spécifier dans les invites. Une fois terminé, vous verrez un système de fichiers nouvellement créé dans le gestionnaire de partition, comme indiqué dans la capture d'écran ci-dessous:
Appuyez sur l'option «Écrire», puis tapez «Oui» pour confirmer. Sélectionnez l'option «Quit» pour quitter le gestionnaire de partition. Choisissez la partition «SDA1» sur l'écran suivant.
Sélectionnez «EXT4» pour formater la partition et sélectionner l'option «Oui» lorsque vous avez invité.
Choisissez «Oui» lorsque vous êtes invité à Grub Boot Loader.
Sur l'écran suivant, vous pouvez voir un avertissement de conversion en «MBR». Sélectionnez «Oui».
Attendez la fin de l'installation.
Ne sélectionnez aucune option, fermez simplement la fenêtre à l'invite suivante:
Android-X86 est désormais entièrement installé dans une machine virtuelle Qemu. Pour démarrer dans un système d'exploitation nouvellement installé, nous utiliserons la même longue commande de haut en haut tout en omettant un argument «CDROM».
Qemu-system-x86_64 \
-activer-kvm \
-M 2048 \
-SMP 2 \
-hôte du processeur \
-Soundhw es1370 \
-dispositif Virtio-Mouse-PCI -vice Virtio-Keyboard-PCI \
-Serial lun: stdio \
-Menu de démarrage = sur \
-net nic \
-utilisateur net, hostfwd = tcp :: 5555-: 22 \
-dispositif virtio-vga, virgl = on \
-Afficher gtk, gl = sur \
-HDA AndroidX86_HDA.IMG
Vous verrez le logo de démarrage Android, puis exécutez d'abord l'écran de configuration.
Attendez la fin de l'installation.
Parcourez simplement la configuration pour arriver à l'écran d'accueil. Android-X86 a un support complet du magasin de lecture intégré. Notez que la machine virtuelle en cours d'exécution saisira tous les coups de touche et les événements de la souris. Pour libérer la prise, vous devrez appuyer sur la combinaison des touches.
La prise en charge d'accélération matérielle 3D est présente.
Des choses importantes que vous devriez savoir
Amélioration de la compatibilité des applications dans Android-X86
Certaines applications Android peuvent refuser de travailler avec une architecture x86. Android-X86 comprend une bibliothèque de compatibilité qui aide grandement, mais vous pouvez toujours trouver des problèmes avec certaines applications. Pour activer le calque de compatibilité, bascule «pont natif» dans les paramètres du système.
Enfin, nous avons un petit problème à résoudre. Résolution de la machine virtuelle Android-X86. Si vous avez du matériel PC bas de gamme, je vous suggère d'exécuter Android en mode fenêt. Si vous avez du matériel capable, vous pouvez augmenter la résolution en suivant les instructions ci-dessous.
Modification de la résolution de l'installation Android-X86 dans Qemu Virtual Machine (VM)
AVERTISSEMENT: Toutes les commandes mentionnées ci-dessous sont destinées à être exécutées dans une installation VM Android-X86 (invité). N'essayez pas d'exécuter ces commandes dans votre installation Ubuntu (hôte).
Pour modifier en permanence la résolution de la machine virtuelle Android, nous devons exécuter certaines commandes dans un terminal lancé à l'intérieur de notre instance de machine virtuelle en cours d'exécution. Android-X86 est livré avec une application d'émulation de terminal, le lancez et exécutez les commandes suivantes une par une (permettez l'accès root lorsque vous êtes invité):
su
mont / dev / block / sda1 / mnt
vi / mnt / grub / menu.qui
Presse Une fois que vous voyez le fichier texte pour commencer le mode d'édition. Dans la première entrée, ajoutez la résolution souhaitée au format «Video = widthxheight», comme indiqué dans la capture d'écran ci-dessous:
Pour enregistrer le fichier, appuyez d'abord sur la touche, puis tapez ": wq" sans devis, puis appuyez sur la touche. Exécutez la commande ci-dessous pour déferler en toute sécurité notre point de montage.
umount / mnt
Redémarrez la machine virtuelle Android. La résolution souhaitée est définie maintenant. Vous pouvez voir un peu de coupure en mode fenêt. Pour résoudre ce problème, vous devrez permettre à «Zoom de s'adapter», comme indiqué dans la capture d'écran ci-dessous:
Si vous basculez plein écran en appuyant, il n'y aura pas de coupure. Pour confirmer la résolution correcte, accédez à l'application «Dev Tools», puis sélectionnez l'option «Configuration». La hauteur sera légèrement moins car la hauteur de la barre de navigation en bas est déduite de la hauteur de résolution.
Cet article prétend exécuter des jeux Android 3D à Linux, ce serait un crime de ne pas inclure de séquences. Voici donc quelques images de gameplay de SuperTuxkart fonctionnant à pleine vitesse à l'intérieur de la machine virtuelle Qemu avec Ubuntu 19.04 en tant qu'hôte. Je contrôle le jeu avec des touches de flèches de clavier, mais le jeu lui-même fonctionne dans Android-X86 VM. GIF ci-dessous est accéléré et a perdu la qualité pendant la conversion:
Cela conclut le long post. Si vous aimez exécuter des applications et des jeux Android sur le PC de bureau, cette méthode est bien meilleure que d'utiliser des émulateurs tiers ayant des politiques de confidentialité folles, et cela ne vous oblige pas à vous mêler de partitions système pour une double démarrage.