Como faço para converter um vhd em um arquivo wim?

21

Acabei de configurar e sysprepped uma nova VM agradável, agora eu preciso convertê-lo para um wim muito rápido, para fazer o upload para o meu servidor sccm. Por alguma razão, não consigo alterar as propriedades da VM para inicializar a partir de um nic legado para pxe, que é como costumo capturar minhas imagens usando o sccm. O VMM altera as configurações de volta, mesmo que seja bem-sucedido.

De qualquer forma, a primeira página do google foi terrível para isso, com exceção de um script .ps1 de terceiros no site da MS, mas estou usando o 2012r2, devo fazer isso nativamente, certo?

MDMoore313
fonte

Respostas:

27

Absolutamente, vamos postar uma resposta prim e adequada para o Google. Esta é uma execução simples do Powershell com 2 comandos, usando o dismmódulo. O dism pode ser copiado para versões anteriores do Windows, desde que você tenha a versão apropriada da estrutura de gerenciamento do Windows.

Primeiro, monte o vhd usando

Mount-WindowsImage -ImagePath C:\VHDs\BigHomies.vhdx -Path C:\VHDMount -Index 1

Em seguida, capture-o em um wim com

New-WindowsImage -CapturePath C:\VHDMount -Name Win7Image -ImagePath C:\CapturedWIMs\Win7.wim -Description "Yet another Windows 7 Image" -Verify

E deixe fazer isso é coisa. Quando terminar, você pode desmontar o vhd e descartar as alterações usando:

Dismount-WindowsImage -Path C:\VHDMount -Discard
MDMoore313
fonte
1
Correção no segundo comando: -ImagePath deve especificar o caminho completo para o arquivo WIM (por exemplo, C: \ CapturedWIMs \ NewWinImage.wim), enquanto -Name é o nome da imagem dentro do arquivo WIM (por exemplo, NewWinImage, mas não possui relação ao nome do arquivo WIM). A execução do comando originalmente publicado resulta em "New-WindowsImage: Access is denied". (presumivelmente porque o comando tenta tratar o diretório C: \ CapturedWIMs como um arquivo).
Jakub Berezanski
Análise interessante, o exemplo do technet também parece concordar com você. Vou atualizá-lo, apesar de ter rasgado isso diretamente do meu prompt do PowerShell, lol.
precisa saber é o seguinte
1
+1 esta resposta realmente me ajudou!
21415 Joshua McKinnon
Certifique-se de executar a versão x64 do powershell (se estiver nas janelas x64) e execute com privilégios de administrador. Deixar de executar um desses resultará em vários erros. Veja serverfault.com/questions/700839/…
aggieNick02 12/12/16
1
@ClearBoth sob o New-WindowsImagecomando? Gostaria de saber se o vhdx está em uso ou não pode ser bloqueado.
precisa saber é o seguinte
3

Se, por algum motivo, o Powershell não for uma opção - não se desespere!

No Windows 7 ou posterior, você pode montar o .vhd via gerenciamento de disco ( link )

Depois de montado, você pode usar o imagex.exe para capturar o .wim ( link do technet )

Vlad274
fonte