Restauration de Windows 2008 Server avec Norton Ghost 2003
Symptôme
Après la restauration (réussie) d’une image valide Ghost d’un serveur Windows 2008 Server, vous obtenez un message d’erreur (voir ci-dessous).
Cause
Il semblerait que Norton Ghost 2003 ne parvienne pas à réécrire correctement les identifiants de la partition de boot de Windows 2008, ce qui entraine l’erreur ci-dessus lors du démarrage du serveur.
Résolution
Afin de résoudre ce problème, il faut démarrer avec le CD d’installation de Windows 2008 Server.
Si l’enregistrement bcdedit pointe vers un Windows 2008 R2 (par exemple en vhd) utilisant hyper-v, il est possible que le message d’erreur ci-dessous apparaisse lors du démarrage d’une machine virtuelle:
Il faut alors modifier l’entrée bcdedit correspondant à Windows 2008 (R2) de manière a redémarrer automatiquement hyper-v.
Saisir la commande suivante sous Windows 2008 (R2) dans une invite de commande (en administrateur):
bcdedit /set hypervisorlaunchtype auto
Redémarrer ensuite Windows 2008 (R2). Hyper-v est à nouveau actif
Beaucoup de blog expliquent déjà comment installer un système d’exploitation dans un fichier vhd.
Cependant, si le système d’exploitation “maître” n’est pas installé dans un VHD est que celui-ci doit être réinstallé (par exemple, Windows 7 RC à réinstaller, et 2008 R2 dans un VHD), son entrée bcdedit sera supprimée et il va falloir le réintégrer.
Ce post explique comment redéclarer l’enregistrement bcdedit d’un Windows 2008 R2 en vhd après une réinstallation du système d’exploitation “maitre” (Windows 7):
Depuis le système d'exploitation opérationnel (dans mon cas Windows 7 RTM), lancer la commande
diskpart
puis, en fonction de l'emplacement du fichier .vhd correspondant à l'OS à rattacher, saisir les commandes suivantes:
select vdisk file=d:\dossier\fichier.vhd
attach vdisk
exit
Le contenu du vhd doit désormais être visible depuis l'explorateur de fichier.
Maintenant que le vdisk est monté, il est nécessaire de l'ajouter (le déclarer) dans le bcdedit.
On commence par créer une nouvelle entrée dans le boot en dupliquant l'entrée courante:
bcdedit /copy {current} /d "Nom du système d'exploitation à afficher au boot"
effectuer un copier/coller du CLSID correspondant à cette entrée. (éventuellement relancer la commande bcdedit de manière à réafficher le CLSID)
enfin, saisir
bcdedit /set {le CLSID} device vhd=[d:]\dossier\fichier.vhd
bcdedit /set {le CLSID} osdevice vhd=[d:]\dossier\fichier.vhd
bcdedit /set {le CLSID} detecthal on
ou {le CLSID} est à remplacer par le CLSID copié ci-dessus.
Attention: les crochets autour de la lettre du disque ([d:]) sont obligatoires.
Il est maintenant possible de redémarrer la machine. La nouvelle entrée apparaitra dans le menu.
Attention: si le .vhd héberge un Windows 2008 (R2) avec hyper-v, une étape supplémentaire sera nécessaire. Voir mon post "réactivation d’hyper-v dans bcdedit"