web-dev-qa-db-fra.com

Activer/Désactiver Hyper-V dans Windows 8

J'aime beaucoup le support Hyper-V dans Windows 8, cependant, il existe des situations dans lesquelles je dois désactiver Hyper-V pour pouvoir exécuter des applications qui n'aiment pas être exécutées même dans la partition racine de l'environnement virtualisé. .
Ce que je suis en train de faire, c’est de désactiver complètement la fonctionnalité à partir de la boîte de dialogue "Ajouter ou supprimer des fonctionnalités de Windows" et de la redémarrer, en la réactivant si nécessaire.
J'aimerais savoir s’il existe une meilleure façon de le faire, mais c’est même un raccourci qui me permettrait de double-cliquer et d’ajouter ou de supprimer la fonctionnalité pour moi et de la relancer (je suppose cela peut être possible avec un script PowerShell).

74
Fredy Treboux

Clause de non-responsabilité : Je ne l’ai pas fait pour supprimer une fonctionnalité ET, dernier avertissement, il y aura probablement une multitude de mises à jour Windows Update à installer chaque fois que vous l’activez à nouveau.

Cela dit, à partir d'une invite de commande élevée:

dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

et

dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

Voici à quoi ressemble la commande enable sur mon PC sur lequel Hyper-V est déjà activé et en cours d'exécution:

> dism/Online/enable-feature: Microsoft-Hyper-V/All

Outil de gestion et de maintenance des images de déploiement Version: 6.2.9200.16384

Version de l'image: 6.2.9200.16384

Activation de fonctionnalité (s) [=========================== 100.0% =============== ==========] L'opération s'est terminée avec succès.

Lors de l'activation de la fonctionnalité puisqu'il s'agit d'Hyper-V, il peut vous demander de redémarrer et de relancer la commande. Cela semble vaguement familier. En d'autres termes, vous pourriez devoir redémarrer deux fois. Mais peut-être que cela ne vous le fera pas puisque Hyper-V était déjà activé sur cette machine.

62
Mark Allen

C'est une vieille réponse, mais par souci d'exhaustivité et parce que je savais qu'il y avait une meilleure façon que le meilleur résultat.

A partir d'une invite de commande élevée:

bcdedit /set hypervisorlaunchtype off

désactiver l'hyperviseur, et:

bcdedit /set hypervisorlaunchtype auto

pour le réactiver (valeur par défaut).

Bien sûr, il faut toujours redémarrer.

76
Dim

Vous pouvez créer deux entrées de démarrage pour choisir de démarrer le système d'exploitation avec ou sans Hyper-V.

  1. Tapez ce qui suit dans l'invite de commande:
bcdedit /copy {default} /d "No Hypervisor"
  1. Ça dit:
"The entry was successfully copied to {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}."
  1. Puis tapez la commande suivante:
bcdedit /set {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} hypervisorlaunchtype off
8
Maks
  • Appuyez sur la touche Windows et tapez «fonctionnalités Windows»
  • Appuyez sur la combinaison touches Windows + W pour faire apparaître le panneau Paramètres Windows de l'écran de démarrage.
  • Cliquez sur Activer ou désactiver des fonctionnalités Windows
  • Lorsque la boîte de dialogue Activer ou désactiver des fonctionnalités Windows apparaît, recherchez Hyper-V et désélectionnez-le.
  • Cliquez sur OK
  • Redémarrez votre ordinateur lorsque vous y êtes invité
  • Installer VMware Workstation
  • Activer à nouveau Hyper-V via la boîte de dialogue Activer ou désactiver des fonctionnalités Windows
  • Redémarrez votre ordinateur

Pour Windows 10:

  • Appuyez sur la touche Windows
  • Tapez "Activer ou désactiver les fonctionnalités Windows"
  • Décochez la case en regard de Hyper-V
  • Sélectionnez OK
  • Sélectionnez Redémarrer maintenant
7
alex

Vous pouvez utiliser Hyper-V Switch qui utilise essentiellement la méthode bcdedit déjà décrite ici, mais y ajoute une interface graphique simple en un clic. Il vous indique l'état de la configuration actuelle, vous permet d'activer ou de désactiver Hyper-V et redémarre l'ordinateur. J'ai créé ce petit outil et il fonctionne sur mon ordinateur Windows 10.

3
ygoe

Powershell est également possible, en utilisant DISM encapsulé en tant que cmdlets PS, et on peut lire les paramètres avant de procéder à la modification.

//Test
PS> Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

//Turn off
PS> Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

//Turn on
PS> Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V –All

Refs

  1. Powershell a vu dans cet article de 2014-03 qui résume toutes les options, http://www.eightforums.com/tutorials/42041-hyper-v-enable-disable-windows-8-a.html ; MS Doc parle de l'option Get-WindowsOptionalFeature, http://technet.Microsoft.com/en-us/library/hh852173.aspx
  2. Le fichier BECD (Boot Entry Config Data Edit) peut également lire (/ exporter) les paramètres, par http://technet.Microsoft.com/en-us/library/cc709667%28v=ws.10%29.aspx et autres documents Doc http://msdn.Microsoft.com/en-us/library/windows/hardware/ff542202%28v=vs.85%29.aspx
3
AnneTheAgile

J'ai créé un script PowerShell pour aider à activer/désactiver Hyper-V. Cela vérifie l'état pour ne pas redémarrer si vous êtes déjà dans l'état souhaité:

param([string]$state='Off')
'Set Hyper-V ' + $state
$lines = bcdedit
ForEach($line in $lines) {
    $pos = $line.IndexOf(' ')
    If($pos -gt 0) {
        $Prompt = $line.Substring(0, $pos)
        $curstate = $line.Substring($pos).Trim()
        If($Prompt -eq 'hypervisorlaunchtype') {
            '[' + $Prompt + '] = [' + $curstate + ']'
            If($curstate -ne $state) {
                'Setting hypervisorlauchtype to ' + $state
                $result = bcdedit /set hypervisorlaunchtype $state
                'Result = [' + $result + ']'
                If($result -eq 'The operation completed successfully.') {
                    'Restarting in two seconds'
                    Start-Sleep -s 2
                    Restart-Computer
                } Else {
                    'Error setting state'
                    Start-Sleep -s 5
                }
            } Else {
                'Hypervisor launch type is already ' + $state
                Start-Sleep -s 5
            }
        }
    } 
}

Créez ensuite deux raccourcis sur votre bureau. Cible "Hyper-V désactivé":

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe C:\Scripts\SetHyper-V.ps1 -state Off

et cible "Hyper-V sur":

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe C:\Scripts\SetHyper-V.ps1 -state Auto`
1
Don Wilson