Upgrade Windows 2008 vers Windows 2008 R2

Si vous avez du temps à passer, une bonne solution est de mettre à jour des serveurs tournant sous Windows 2008 (64 Bits), vers la même version, mais en Windows 2008 R2 (64 Bits).

Programme des festivités

Mise à jour de deux machines hébergeant un environnement VMWare Server 2.0.
La mise à jour au niveau des machines virtuelles d’un contrôleur de domaine et d’un serveur Exchange 2007.
Début des opérations, avec une machine « physique ». Je découvrirais que le disque C: doit avoir 10,6 Go de libre pour faire la mise à jour. Après un nettoyage, la mise à jour débute. Un long processus, 2-3 redémarrages et nous voilà avec la machine à jour.

Seconde machine, la mise à jour du contrôleur de domaine en machine virtuelle. Aucun problème d’espace disque.

Reste à faire la mise à jour de la « forest » et du domaine. Seule avertissement, avoir installé sur les contrôleurs de domaine tournant sous Windows 2000, le service Pack 4.

Les commandes à lancer sont

  • D:\support\adprep\adprep /forestprep (Ou D représente le DVD de Windows 2008 R2)
  • D:\support\adprep\adprep /domainprep

La mise à jour sera aussi longue, mais se passera sans aucun problème.

Vient le tour du serveur où se trouve Microsoft Exchange 2007. Petit problème, l’assistant m’annonce que pour mettre le Windows 2008 à jour, il me faudra … désinstaller Exchange 2007. La solution que j’ai retenue sera, lorsque cela sera vraiment nécessaire, d’installer un nouveau Windows 2008 R2, d’y installer un Exchange 2007 (voir 2010 ?) et de transférer les boites d’un serveur à l’autre.

Pas de grande nouveautés, un changement de design plus proche de Windows 7, quelques améliorations au niveau de l’interface des outils et autres assistant.

J’étais plus étonné que mise à jour se soit passé sans problème, aussi bien pour les applications Microsoft, que pour les applications tiers. La base identique n’y est bien sûr pas étrangère.

J’ai par la même occasion passer un produit que nous commercialisons, d’une machine 2003 32 bits vers un 64 bits sous Windows 2008 R2. Mais via une nouvelle installation. Installations rapide sans soucis … excepté l’oubli de l’activation du .NET Framework 3.5.1 dans Windows pour l’application.

La dernière machine physique devrait suivre d’ici quelques jours.

D:\support\adprep\adprep /forestprep

[0x80070534] No mapping between account names and security IDs was done.

SQL Server 2008

Voici le message qui m’a occupé pendant une bonne journée : « Error 0x80070534, No mapping between account names and security IDs was done ».

Après des recherches, des tentatives infructueuses, j’ai fini par trouver la raison de cette erreur. Cela se passait lors de l’installation d’Office Communication Server 2007 R2 sous Windows 2008 64 bits en virtualisé.

Cette erreur est provoquée par Microsoft SQL Server et peut se produire avec les versions 2000, 2005, 2008. Version express et complète.

La raison est « simple », lorsqu’on installe un Windows, un identifiant unique est généré par machine. Cet identifiant est généré dès qu’on rentre dans l’interface graphique de l’installation (Dès le premier redémarrage donc).

Cet identifiant unique est donc copié si on vient à faire des Ghost ou des images virtuelles pré-configuré. Si pour la plupart des applications, cela ne pose pas de problème, pour SQL, le problème empêche de créer le lien entre les login utilisés et où ils le sont.

Pour information, un contrôleur de domaine et les contrôleurs de domaine secondaire ont eu un même numéro de système. D’où le fait qu’il est déconseillé (en plus des problèmes de sécurité) d’installer un SQL sur un contrôleur de domaine primaire et secondaire.

Il faut savoir que cet identifiant n’est pratiquement jamais modifié. L’ajout ou la suppression de la machine d’un domaine ne le modifie pas par exemple.

Quelle solution donc si on souhaite continué à utiliser Ghost ou des images virtuelles pré-configuré ?

Utilisé l’utilitaire newSID permettant de généré et de modifier le System ID de façon automatique. Il est disponible dans la section sysinternals de Microsoft sous NewSID.

La procédure la plus propre est :

  • Installer Windows
  • Installer les softwares ne devant pas être identifié sous le domaine explicitement.
  • Faire la copie Ghost ou du disque Virtuelle.
  • Lancer/installer la copie
  • Lancer l’utilitaire newSID
  • Ajouter la machine dans le domaine
  • L’utilisé normalement

De cette manière, vous ne soufrerez plus de ce problème de SID.