Comment convertir un VHD en fichier WIM?

21

Je viens de configurer et de préparer sysprep une nouvelle machine virtuelle sympa, maintenant je dois la convertir en wim très rapidement, pour la télécharger sur mon serveur sccm. Pour une raison quelconque, je ne peux pas modifier les propriétés de la machine virtuelle pour démarrer à partir d'un nic hérité pour pxe, c'est ainsi que je capture habituellement mes images à l'aide de sccm. VMM modifie simplement les paramètres tout de suite, même s'il indique succès.

Quoi qu'il en soit, la première page de Google a été terrible pour cela, à l'exception d'un script .ps1 tiers sur le site Web de MS, mais j'utilise 2012r2, je devrais pouvoir le faire de manière native, non?

MDMoore313
la source

Réponses:

27

Absolument, affichons une réponse correcte et appropriée pour Google. Il s'agit d'une simple exécution de 2 commandes Powershell, utilisant le dismmodule. Le démontage peut être copié dans des versions antérieures de Windows, à condition que vous disposiez de la version appropriée du cadre de gestion de Windows.

Tout d'abord, montez le VHD à l'aide de

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

Ensuite, capturez-le dans un wim avec

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

Et laisse faire ça. Lorsque vous avez terminé, vous pouvez démonter le vhd et annuler toutes les modifications en utilisant:

Dismount-WindowsImage -Path C:\VHDMount -Discard
MDMoore313
la source
1
Correction de la deuxième commande: -ImagePath doit spécifier le chemin d'accès complet au fichier WIM (par exemple C: \ CapturedWIMs \ NewWinImage.wim), tandis que -Name est le nom de l'image à l'intérieur du fichier WIM (par exemple NewWinImage, mais n'a pas de réel par rapport au nom de fichier WIM). L'exécution de la commande initialement publiée entraîne «New-WindowsImage: l'accès est refusé». (probablement parce que la commande tente de traiter le répertoire C: \ CapturedWIMs comme un fichier).
Jakub Berezanski
Analyse intéressante, l'exemple de technet semble également d'accord avec vous. Je vais le mettre à jour, même si je l'ai déchiré directement de mon invite de PowerShell lol.
MDMoore313
1
+1 cette réponse m'a vraiment aidé!
Joshua McKinnon
Assurez-vous d'exécuter la version x64 de powershell (si sur Windows x64) et de l'exécuter avec les privilèges d'administrateur. Ne pas le faire entraînera diverses erreurs. Voir serverfault.com/questions/700839/…
aggieNick02
1
@ClearBoth sur la New-WindowsImagecommande? Je me demande si le vhdx est en cours d'utilisation, ou sinon ne peut pas être verrouillé.
MDMoore313
3

Si, pour une raison quelconque, Powershell n'est pas une option - ne désespérez pas!

Dans Windows 7 ou version ultérieure, vous pouvez monter le .vhd via la gestion des disques ( lien )

Une fois qu'il est monté, vous pouvez utiliser imagex.exe pour capturer le .wim ( lien technet )

Vlad274
la source