Démarrage de Windows 7 sur un disque dur virtuel à l'aide d'un clone VHD du lecteur système

8

Cela ne semble pas être un problème trop difficile et, après plusieurs obstacles, je suis affolant. Mais je ne peux pas vraiment y arriver.

J'utilise Windows 7 dans la boutique de développement. Je veux commencer à utiliser VS2010 pour travailler sur des choses qui ne seront pas publiées pendant un certain temps. Mon patron n'a dit aucun code bêta sur la machine de production, mais je pouvais exécuter VS2010 pour ce projet SI je pouvais le faire dans un environnement isolé, comme un PC virtuel.

Eh bien, j'ai déjà utilisé la version bêta et RC de Win7 sur les VPC, et c'était très lent à cause de l'environnement VPC. Mais tout le monde a chanté les louanges de la capacité de démarrage sur VHD de Windows 7, où seul le disque est virtualisé, et vous êtes en fait en train de fonctionner sur le matériel. Censé être un peu plus lent, mais loin de la pénalité de vitesse du VPC.

J'ai passé pas mal de temps à installer tout comme je le veux. J'ai donc pensé, je vais juste cloner mon lecteur système à l'aide de Disk2VHD, et démarrer à partir de cela, puis installer VS2010 sur cela. (Je conserve la plupart de mes données utilisateur, y compris tous mes projets, dans une partition séparée, de sorte que cela ne devrait pas être dupliqué et serait toujours disponible.)

Eh bien, j'ai eu quelques difficultés avec cela, principalement en raison du fait que j'utilisais une ancienne version de Disk2VHD - (obtenez la dernière version si vous voulez l'essayer.) Mais je l'ai finalement fait démarrer. (Scott Hanselman a un bon article de blog sur le démarrage en VHD).

Mais ce n'était pas exactement ce que j'attendais ou espérais. Ce à quoi je m'attendais, c'était que le disque dur virtuel devienne le lecteur C: et que le lecteur C: (physique) d'origine soit soit caché soit monté sous une autre lettre, et donc isolé et protégé de tout changement.

Ce que vous obtenez en réalité, c'est que le disque dur virtuel devient le lecteur D: ET que vous démarrez à partir du lecteur D: MAIS votre lecteur C: d'origine est toujours là. Ce qui est en quelque sorte correct SAUF que le registre sur le disque dur virtuel est un clone du registre sur le lecteur C: et comprend de nombreuses références codées en dur à C :. Ainsi, le résultat est que certaines choses viennent de (et modifient) D: (le VHD), mais certaines choses proviennent de (et modifient) C :. (Si vous ouvrez une invite cmd et faites un SET pour regarder vos variables d'environnement, vous verrez un mélange de chemins D: \ et C: \.) Donc je n'ai pas vraiment un environnement isolé. Plus important encore,% ProgramFiles% est toujours défini sur C: \ Program Files.

Ce dont j'ai vraiment besoin, c'est d'un outil qui puisse accéder aux fichiers de registre sur le VHD monté en tant que fichiers, pas en tant qu'entrées de registre, et faire une recherche globale et remplacer sur toutes les chaînes C: \ in à D :. Je n'ai pas trouvé un tel programme. (J'ai essayé de le faire avec un programme appelé remplacement du registre, mais, même lors de l'exécution en tant qu'administrateur, il existe certaines entrées que le registre ne vous permet pas de modifier.)

Quelqu'un en connaît-il un? Ou toute autre solution à mon problème (autre que de partir de zéro avec un VHD propre et d'installer Win7 et tous mes programmes dessus)?

daveh551
la source

Réponses:

5

Avis de non-responsabilité: je n'ai effectué aucun démarrage à partir de VHD ou de ce correctif susmentionné

Reportez - vous à ce KB article. Assurez-vous de changer votre lecteur système actuel en quelque chose de différent. Vous pouvez également désaffecter cette lettre de lecteur pour une isolation supplémentaire.

prestomation
la source
Merci. Cet article (sur la modification des noms des sous-clés HKLM \ MountedDevices) a fait l'affaire. J'ai utilisé Registry Replacer pour charger le registre système du VHD, y ai apporté les modifications, puis lorsque j'ai démarré sur le VHD, c'était mon nouveau lecteur C:, ce que je voulais.
daveh551
Heureux que cela a fonctionné, et agréable à savoir pour référence future.
prestomation
0

Travaille pour moi. Je suppose que si nous nettoyons la clé de registre avant de capturer le disque dur virtuel, il ne sera peut-être pas nécessaire de modifier les sous-clés HKLM \ MountedDevices. Pas encore testé;)


la source