Maneira conveniente de ativar / desativar o Hyper-V no Windows 8

76

Eu realmente gosto do suporte ao Hyper-V no Windows 8, no entanto, há algumas situações em que preciso desativar o Hyper-V para executar alguns aplicativos que não gostam de ser executados, mesmo na partição raiz do ambiente virtualizado .
O que tenho feito atualmente é desativar o recurso completamente da caixa de diálogo "Adicionar ou remover recursos do Windows" e reiniciar, ativando-o novamente quando necessário.
Gostaria de saber se existe alguma maneira melhor de fazer isso, pode até ser um atalho no qual eu poderia clicar duas vezes e realmente adicionar ou remover o recurso para mim e reiniciar (acho que isso pode ser possível com um script do PowerShell).

Fredy Treboux
fonte
O método que você está usando é o melhor e único método suportado.
Ramhound
11
@ Ramhound Você pode usar o dism.exe para ativar os recursos na linha de comando. É assim que automatizamos a instalação do .NET 3.5 no Windows 8, por exemplo. Em teoria, você também pode desativar os recursos dessa maneira, mas eu não tentei.
Mark Allen

Respostas:

66

Isenção de responsabilidade : eu não fiz isso para remover um recurso, E como uma advertência final, provavelmente haverá uma série de atualizações do Windows Update para instalar sempre que você ativá-lo novamente.

Dito isto, em um prompt de comando elevado:

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

e

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

Aqui está a aparência do comando enable no meu PC, que já possui o Hyper-V ativado e em execução:

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

Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação Versão: 6.2.9200.16384

Versão da imagem: 6.2.9200.16384

Ativando recurso (s) [========================== 100.0% ================ ==========] A operação foi concluída com sucesso.

Ao ativar o recurso, pois é o Hyper-V, ele pode solicitar que você reinicie e execute o comando novamente. Isso parece vagamente familiar. Você pode ter que reiniciar duas vezes, em outras palavras. Mas talvez não faça isso com você, pois essa máquina já tinha o Hyper-V ativado antes.

Mark Allen
fonte
Obrigado !, funcionou como um encanto. Ele foi reiniciado duas vezes, mas não acho que haja um caminho além disso. Além disso, pode-se argumentar que não é uma grande melhoria em relação à tela de recursos do Windows, mas uma vez deixada na área de trabalho ou presa à tela inicial, certamente é para pessoas preguiçosas como eu.
Fredy Treboux
Certo! Estou feliz que funcionou. Sim, normalmente o material da linha de comando é usado para configurar as máquinas inicialmente; portanto, se você precisar instalar o .NET 3.5, AND Hyper-V e um monte de outras coisas, poderá fazê-lo automaticamente.
Mark Allen
11
Você pode usar /NoRestartem uma configuração não interativa (ao chamar de um script).
krlmlr
A resposta abaixo bcdedité muito mais rápida e é a única coisa necessária (você ainda precisa reiniciar, não importa o quê). É o que faço sempre que preciso mudar para o VMWare.
user276648
@ user276648 Isso pressupõe que o Hyper-V esteja instalado, após o que com certeza, talvez. Eu só postei a resposta que sabia.
Mark Allen
82

Esta é uma resposta antiga, mas por uma questão de integridade e porque eu sabia que havia uma maneira melhor do que o resultado principal.

Em um prompt de comando elevado:

bcdedit /set hypervisorlaunchtype off

desativar o hypervisor e:

bcdedit /set hypervisorlaunchtype auto

para reativá-lo (valor padrão).

Claro que ainda requer reinicialização.

Dim
fonte
11
Este é o caminho a seguir se você desenvolver aplicativos do Windows Phone em um microsoft surface pro 3 (portanto, precisará do hyper-v), mas deseja que o modo de espera conectado funcione sempre que não estiver desenvolvendo ativamente (no final de 2014, o modo de espera conectado é não suportado quando o hypervisor está em execução).
Chris
Apenas para postar uma atualização, como vim aqui, procurando os comandos acima novamente (para executar o VM Ware Player temporariamente) - o Windows 10 suporta Hyper-V e Connected Standby ao mesmo tempo na Visualização técnica e posso apenas assumir que manterá o recurso até a RTM. Parece funcionar bem na pré-visualização do meu Surface Pro 3 até agora.
Dan Harris
Isso me salvou de tanta frustração. O Hyper-V não gosta do meu driver de vídeo e a dell tem atualizações bloqueadas, então não posso usar os drivers atualizados da Intel. Tenho que desativar o Hyper-V se não quiser executar vários monitores.
precisa saber é o seguinte
10

Você pode criar duas entradas de inicialização para decidir iniciar o sistema operacional com ou sem o Hyper-V.

  1. Digite o seguinte no prompt de comando:
bcdedit /copy {default} /d "No Hypervisor"
  1. Diz:
"The entry was successfully copied to {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}."
  1. Em seguida, digite o seguinte comando:
bcdedit /set {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} hypervisorlaunchtype off
Maks
fonte
Eu já vi isso agora e parece bom! Mas ainda não tive tempo de tentar eu mesmo.
Fredy Treboux
3
Apenas uma observação: se no Windows 10, você precisa usar o {current}. Basta executar o bcdedit para verificar. Além disso, ele não quer funcionar no PowerShell, para quem já tentou.
dotbat 28/09
11
No PowerShell, você precisa usar aspas para o ID. Por exemplo:bcdedit /set "{current}" hypervisorlaunchtype off
kishkin 04/04
Esta é a resposta mais elegante até agora, na minha opinião. Outra dica é que você pode manter a Shifttecla pressionada ao clicar Start -> Power button -> Restart, o que permitirá que você escolha se deseja inicializar com / sem o Hyper-V ativado antes que o computador reinicie. Isso é especialmente útil quando alguma forma de "inicialização rápida" está ativada no BIOS e é quase impossível pressionar a tecla "enter BIOS" antes que o carregador de inicialização do Windows assuma o controle.
Ben Johnson
melhor resposta até agora
Tien Dinh
8
  • Pressione a tecla Windows e digite "recursos do Windows"
  • Pressione a combinação Windows Key + W para abrir o painel Configurações do Windows na tela Iniciar.
  • Clique em Ativar ou desativar recursos do Windows
  • Quando a caixa de diálogo Ativar ou desativar os recursos do Windows aparecer, procure o Hyper-V e desmarque-o
  • Clique OK
  • Reinicie o computador quando solicitado
  • Instale a estação de trabalho VMware
  • Ative o Hyper-V novamente na caixa de diálogo Ativar ou desativar recursos do Windows
  • Reinicie o seu computador

Para o Windows 10:

  • Pressione a tecla Windows
  • Digite "Ativar ou desativar recursos do Windows"
  • Desmarque a caixa de seleção ao lado de Hyper-V
  • Selecione OK
  • Selecione Reiniciar agora
alex
fonte
Eu instalei o vs2013 no w8.1 e, aparentemente, ele instalou o hyper v, fazendo o meu vbox não funcionar. Obrigado por uma boa resposta permanente.
MvcCmsJon
4

O PowerShell também é possível, usando o DISM agrupado como cmdlets PS, e é possível ler as configurações primeiro antes de fazer a alteração.

//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. O Powershell viu neste post de 2014-03 que resume todas as opções, http://www.eightforums.com/tutorials/42041-hyper-v-enable-disable-windows-8-a.html ; O MS Doc informa sobre a opção Get-WindowsOptionalFeature, http://technet.microsoft.com/en-us/library/hh852173.aspx
  2. A edição de dados de configuração da entrada de inicialização (BECD) também pode ler configurações (/ exportar), de http://technet.microsoft.com/en-us/library/cc709667%28v=ws.10%29.aspx e outros documentos http : //msdn.microsoft.com/en-us/library/windows/hardware/ff542202%28v=vs.85%29.aspx
AnneTheAgile
fonte
3

Você pode usar o Hyper-V Switch que basicamente emprega o método bcdedit já descrito aqui, mas coloca uma GUI simples com um clique sobre ele. Ele mostra o estado atual da configuração e permite ativar ou desativar o Hyper-V e também reinicializa o computador. Eu fiz essa pequena ferramenta e funciona no meu computador com Windows 10.

ygoe
fonte
1

Criei um script do PowerShell para ajudar a ativar / desativar o Hyper-V. Isso verifica o estado para que você não reinicie se já estiver no estado desejado:

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
            }
        }
    } 
}

Em seguida, crie dois atalhos no destino "Hyper-V Off" da área de trabalho:

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

e destino "Hyper-V On":

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe C:\Scripts\SetHyper-V.ps1 -state Auto`
Don Wilson
fonte
0
  1. No console do Windows (cmd) com direitos de administrador:

Limpeza e manutenção doméstica do Windows Component Store (WinSxS)

Dism /Online /Cleanup-Image /RestoreHealth
Dism.exe /online /Cleanup-Image /StartComponentCleanup

Analisa arquivos do sistema e restaura, se necessário

sfc /scannow

(De acordo com https://ugetfix.com/ask/how-to-disable-hyper-v-in-windows-10/ )

  1. Desativar a inicialização automática do hipervisor na configuração de inicialização
bcdedit /set {current} hypervisorlaunchtype off

(Fonte: https://blogs.technet.microsoft.com/gmarchetti/2008/12/07/turning-hyper-v-on-and-off/ )

  1. Windows PowerShell (com privilégios administrativos):
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

(Fontes: https://ugetfix.com/ask/how-to-disable-hyper-v-in-windows-10/ e https://support.microsoft.com/en-us/help/3204980/virtualization- aplicativos-não-trabalham-juntos-com-hyper-v-device-g )

  1. Ativar ou desativar os recursos do Windows -> Hyper-V todos desmarcados

( https://support.microsoft.com/en-us/help/3204980/virtualization-applications-do-not-work-together-with-hyper-v-device-g )

  1. Este PC, Propriedades, Gerenciador de dispositivos, Dispositivos do sistema e remove o Hyper-V também.

Para garantir a integridade, alguns problemas de virtualização estão relacionados aos recursos de segurança do Device Guard e Credential Guard:

  1. mmc.exe, adicione snap-in Diretiva de Computador Local em Configuração do Computador / Modelos Administrativos / Sistema / Guarda de Dispositivo / Ativar Segurança Baseada em Virtualização

  2. Isolamento do núcleo em Configurações / Atualização e segurança / Segurança do Windows / Segurança do dispositivo / Isolamento do núcleo

(Ref: https://support.microsoft.com/en-us/help/3204980/virtualization-applications-do-not-work-together-with-hyper-v-device-g

https://www.tenforums.com/tutorials/68913-enable-disable-device-guard-windows-10-a.html ; https://blogs.technet.microsoft.com/ash/2016/03/02/windows-10-device-guard-and-credential-guard-demystified/

https://weblogs.asp.net/dixin/run-hyper-v-and-vmware-virtual-machines-on-windows-10

https://www.dell.com/support/article/lu/fr/lubsd1/sln304974/windows-10-enterprise-security-credential-guard-and-device-guard?lang=en ...)

Jose Manuel Gomez Alvarez
fonte