GNU/Linux >> Tutoriels Linux >  >> Linux

Masquage de l'état de la machine virtuelle du système d'exploitation invité

Il y a deux choses que vous devez faire pour masquer l'hyperviseur du système d'exploitation invité :

  • Masquer l'indicateur de fonctionnalité du processeur de l'hyperviseur.
  • Masquer les feuilles CPUID de l'hyperviseur.

Ni l'un ni l'autre ne peut être fait entièrement dans virt-manager; vous devrez éditer le XML de la machine virtuelle.

Par défaut, le CPU est défini sur "Hyperviseur par défaut" :

Cela se traduit par un "CPU virtuel QEMU version 2.5+"

Tout d'abord, vous devrez définir un type de CPU dans virt-manager. Le processeur virtuel QEMU par défaut ne peut pas voir son indicateur d'hyperviseur supprimé dans libvirt.

Pour de meilleures performances et fonctionnalités, vous devez simplement sélectionner "Copier la configuration du processeur hôte" et "Appliquer". Cela vous permettra d'utiliser la virtualisation imbriquée, en exécutant des machines virtuelles accélérées 64 bits à l'intérieur de cette machine virtuelle.

Il y aura maintenant une section CPU dans le XML de la machine virtuelle que vous pourrez modifier. Exécutez sudo virsh edit <vmname> . La section CPU ressemblera à ceci :

  <cpu mode='host-model' check='partial'>
    <model fallback='allow'/>
  </cpu>

Vous devez ajouter un élément pour supprimer la fonctionnalité de processeur de l'hyperviseur, ce qui lui donnera l'aspect suivant :

  <cpu mode='host-model' check='partial'>
    <model fallback='allow'/>
    <feature policy='disable' name='hypervisor'/>
  </cpu>

Maintenant, vous devez également désactiver les feuilles CPUID de l'hyperviseur. Cela permet à d'autres choses comme les pilotes NVIDIA de fonctionner.

Cela se fait en ajoutant un nouvel élément à l'intérieur du <features> élément.

Juste au-dessus :

  </features>

Vous devez ajouter :

  <kvm>
    <hidden state='on'/>
  </kvm>

Maintenant, arrêtez la machine virtuelle et redémarrez-la (un redémarrage n'est pas suffisant ; un arrêt complet est requis).

À ce stade, le Gestionnaire des tâches affiche :

Vous pouvez également exécuter systeminfo dans un PowerShell ou une invite de commande. En bas, si tout va bien, vous verrez toutes les réponses Oui dans la section Hyper-V :

Hyper-V Requirements:      VM Monitor Mode Extensions: Yes
                           Virtualization Enabled In Firmware: Yes
                           Second Level Address Translation: Yes
                           Data Execution Prevention Available: Yes

Maintenant, vous pouvez faire tout ce que vous vouliez faire.


Linux
  1. Comment vérifier si un système Linux est une machine physique ou virtuelle

  2. Comment vérifier si le système Linux s'exécute sur un système physique ou une machine virtuelle ?

  3. Exécutez Windows dans une machine virtuelle sous Linux pour les jeux

  4. Commande Linux pour savoir si la machine est physique ou virtuelle

  5. Durcissement de la machine de bureau Linux contre les personnes de ma famille

Microsoft Azure Series - Création d'une machine virtuelle Linux à partir d'un modèle

Microsoft Azure Series - Création d'une machine virtuelle Linux à partir d'une image personnalisée

Linux est-il un système d'exploitation ou un noyau ?

Comment renommer la machine virtuelle invitée KVM

Migrer la machine virtuelle de VMware ESXi vers Proxmox VE

Toutes les méthodes pour exécuter une machine virtuelle sur un système Linux