IMAGING : Intégrer des mises à jour dans une image

Depuis Windows Vista, Microsoft a profondément modifié la manière de déployer Windows en entreprise. Plusieurs éléments ont été remplacés tels que le format d’image RipRep vers .wim, d’autres ont persisté comme le programme Sysprep.exe et d’autres éléments sont apparus. C’est par exemple le cas de l’exécutable Dism.exe. L’objectif global de cette refonte consiste à rendre vos masters les plus évolutifs possibles.

C’est dans ce contexte que l’outil DISM (Deployment Image Servicing and Management) intervient. Il vous permet d’effectuer de nombreuses opérations sur vos images, qu’elles soient au format .WIM, au format .VHD ou bien sur le système d’exploitation courant. Le principal avantage de cet outil face à des solutions d’imagerie telles que Ghost réside dans le fait qu’il ne vous est pas nécessaire de déployer une image sur un système pour le mettre à jour. Il vous suffit simplement de le monter comme on a l’habitude de monter une image ISO !  Voici un petit aperçu des actions réalisables sur vos images :

  • Ajouts / modifications / Suppression de dossiers, fichiers et clés de registre
  • Changement des paramètres régionaux de votre image
  • Intégration de pilotes
  • Activation de fonctionnalités Windows (telles que .NET Framework 3.5, le MediaCenter, etc.)
  • Application d’un fichier de réponse pour une installation sans assistance
  • Intégration de mises à jour Windows
  • Installer des applications (Windows 8)

C’est évidemment cette dernière action qui nous intéresse plus 🙂

Ce tutoriel a pour objectif de vous présenter l’intégration des mises à jour dans un master : opération rapide à réaliser qui vous fera gagner beaucoup de temps lors de vos déploiements ultérieurs. Nous verrons également comment cette opération est implémentée dans SCCM 2012.

2. Mise en œuvre manuelle

2.1. Préparation de l’atelier

Dans un premier temps, nous allons préparer notre atelier. Cette étape consiste à créer une structure de dossier qui sera utilisée lors des opérations suivantes.

Nous allons donc créer un premier dossier nommé « Atelier« , puis créer 3 sous-dossiers : « Mount« , « Sources » et « Updates » :

Structure du dossier utilisée pour la mise à jour d'une image.
Structure du dossier utilisée pour la mise à jour d’une image.

 

 

 

 

 

 

 

 

  • Laissez le dossier « Mount » vide. Il sera utilisé pour monter l’image hors ligne
  • Copiez votre image .wim dans le dossier « Sources »

002

 

 

 

 

 

 

2.2. Télécharger les mises à jour hors ligne

Vous devrez disposer des sources des mises à jour à intégrer à votre master. Aujourd’hui, à ma connaissance, aucun outil Microsoft n’est capable de télécharger les mises à jour et de les stocker dans un dossier. Voici donc deux produits qui remplissent ce rôle :

–          WSUS Offline Update (lien vers le téléchargement : ici)

–          Windows Update Downloader (lien vers le téléchargement : ici)

Personnellement, je privilégie le premier produit car il permet d’obtenir les mises à jour depuis un serveur WSUS local. Les téléchargements sont donc plus rapides J

Je vous laisse parcourir la documentation de l’éditeur qui décrit parfaitement la procédure de téléchargement des mises à jour : ici

Note : il se peut que le produit ne s’entende pas avec le proxy de votre entreprise. Par conséquent, je vous conseille de la « bypasser » si vous en avez la possibilité.

Copiez les sources des mises à jour téléchargées dans le dossier « Updates » créé lors de l’étape précédente. Toutes les mises à jours doivent se trouver dans le même dossier.

Les mises à jour téléchargées sont placées dans le dossier "Updates".
Les mises à jour téléchargées sont placées dans le dossier « Updates ».

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.3. Monter l’image hors-ligne

Nous allons maintenant monter notre image Windows. Cette étape est indispensable avant de pouvoir réaliser n’importe quelle opération.

Comme énoncé en introduction, nous utilisons le programme dism.exe (fournit par défaut dans Windows 7 / 2008 R2 et ultérieurs.).

Dism.exe /mount-wim /wimfile:"d:\atelier\Sources\install.wim" /index:1 /Mountdir:"D:\atelier"
/mount-wim action à réaliser
/wimfile Chemin du fichier .wim à monter
/index Index de l’image stockée dans le fichier .wim à monter
/mountdir Chemin du dossier de montage

 

Cette commande permet de "monter" l'image dans un dossier.
Cette commande permet de « monter » l’image dans un dossier.

 

 

 

 

 

 

 

A partir de ce moment, vous êtes en mesure d’opérer des modifications de votre image

2.4. Injecter les mises à jour

C’est maintenant que tout se joue !

Dism.exe /Image:"D:\atelier\mount" /add-package /packagepath:"D:\atelier\sources\Updates"
/image Chemin de l’image à mettre à jour
/add-package Action à réaliser sur l’image
/packagepath:<path> Chemin des mises à jour. Toutes les mises à jour présentes dans ce   dossier (et pas les sous-dossiers) seront incluses

 

Cette commande permet d'injecter les mises à jour dans l'image montée.
Cette commande permet d’injecter les mises à jour dans l’image montée.

 

 

 

 

 

 

 

 

 

 

 

 

Remarquez qu’il est possible que certaines mises à jour ne soient pas importables, malgré le fait qu’elles soient compatibles. Par conséquent cette opération de mise à jour de master doit être couplée à une mise à jour post déploiement. En d’autres termes :

–          Dism.Exe fait les ¾ du travail

–          WSUS ou Windows Update complète l’opération lors du déploiement

2.5. Démonter l’image en enregistrant les modifications

Maintenant que votre image est mise à jour, il ne vous reste plus qu’à démonter l’image en enregistrant les modifications :

Dism.exe /unmount-wim /Mountdir:"D:\atelier\Mount" /commit
/unmout-wim Action à réaliser
/mount-dir:<path> Chemin de l’image à démonter
/commit Enregistrer les modifications opérées (à opposer à /discard pour   ignorer toutes les opérations réalisées depuis le montage)

 

Cette commande permet de démonter l'image en enregistrant les modifications.
Cette commande permet de démonter l’image en enregistrant les modifications.

 

 

 

 

 

 

 

3. Mise en œuvre dans SCCM 2012

Lorsque vous bénéficiez du produit SCCM 2012, cette fonctionnalité est aussi présente et peut être automatisée. Le but du jeu étant évidemment de faire en sorte que vos postes de travail sortent du banc de déploiement avec un niveau de patch le plus avancé possible.

Il est important d’apporter une petite nuance à « automatisée ». En effet, SCCM automatise le processus d’intégration. Cependant vous devrez déclencher l’action manuellement (suite au Thuesday Patch par exemple).

3.1. Prés-requis à la maintenance d’images automatisée

Notons que cette fonctionnalité est couplée à la gestion des mises à jour dans SCCM. Par conséquent, vous devrez configurer un point de gestion des mises à jour, puis configurer votre point de mise à jour afin qu’il synchronise les mises à jour pour les OS que vous déploierez et les classifications que vous souhaitez. Pourquoi ? Tout simplement parce que SCCM utilise son catalogue de mises à jour comme source pour la maintenance des images. De surcroît, il ne vous est pas possible de spécifier des sources alternatives. Par contre, rien ne vous empêche d’utiliser la procédure manuelle décrite dans le chapitre précédent pour réaliser l’opération.

Configurez le point de mises à jour logicielles en ajoutant les mises à jour pour les OS que vous déploierez
Configurez le point de mises à jour logicielles en ajoutant les mises à jour pour les OS que vous déploierez

 

 

 

 

 

 

 

 

 

 

 

 

 

3.2. Planification de la maintenance

Depuis la console SCCM, ouvrez le workspace « bibliothèque de logiciels« , « Systèmes d’exploitation » puis « Images  du système d’exploitation« .

Dans le panneau central, sélectionnez l’image que vous souhaitez mettre à jour, puis dans la barre supérieure cliquez sur « Planifier les mises à jour« .

007

 

 

 

 

 

 

 

 

 

 

 

Sélectionnez toutes les mises à jour à intégrer dans votre image puis cliquez sur « suivant ».

Planifiez la réalisation de l’opération.

Je vous conseille de laisser les deux options cochées par défaut :

  • « Continuer en cas d’erreur ». Certaines mises à jour ne peuvent pas être intégrer hors ligne. Elles génèrent donc une erreur d’intégration et peuvent bloquer les processus lorsque cette case n’est pas cochée.
  • « Mettre à jour les points de distribution avec l’image ». Cochez cette case si vous ne souhaitez pas générer des erreurs de déploiement de type : « hash content missmatch ».

Cliquez sur suivant, puis terminez l’assistant.

Vous pouvez suivre le déroulement de l’opération à l’aide du fichier de logs présent à l’emplacement suivant :

\\<SCCMServer>\<SMS_SiteCode>\logs\OfflineServicingMgr.log

<SCCMServer> Nom du serveur SCCM
<SMS_SiteCode> Partage du site SCCM (par exemple : SMS_MLB

4. Conclusion

L’outil DISM vous permet de mettre à jour vos images sans devoir les régénérer.

Vous pouvez réaliser cette opération de manière manuelle, ou planifier son exécution lorsque vous bénéficiez de SCCM 2012.

 

 

12 réflexions au sujet de “IMAGING : Intégrer des mises à jour dans une image

  1. Salut !
    Merci pour le tuto, il m’aura bien servi 🙂
    Cependant, je crois que tu as fait deux fautes au lignes de commandes :

    Dism.exe /mount-wim /wimfile: »d:\atelier\Sources\install.wim » /index:1 /Mountdir: »D:\atelier\Updates »

    Il ne faudrait pas mettre D:\atelier\Mount au lieu de Updates ?

    Dism.exe /Image: »D:\atelier\mount » /add-package /packagepath: »D:\atelier\sources »

    Et la, D:\atelier\Updates et pas sources ?

    En tout cas, merci et bravo 🙂

  2. Hey !
    Après avoir réussi avec succès (je n’ai pas essayé, mais je n’ai pas eu d’erreurs durant la procédure) le windows 7 pro, je m’attaquais au home premium. Et la, quand je fais la commande afin de démonter l’image, j’ai un message « Vous n’avez pas l’autorisation de monter et modifier cette image ». Je précise que cmd est lancé en admin…
    Sais tu quoi faire ?

    Merci,

  3. Monter l’image hors-ligne, ligne de commande erronée, mettre : Dism.exe /mount-wim /wimfile:D:\atelier\Sources\install.wim /index:1 /Mountdir:D:\atelier\Mount

    Injecter les mises à jour, ligne de commande erronée, mettre : Dism.exe /Image:D:\atelier\mount » /add-package /packagepath:D:\atelier\\Updates

    Merci pour ton tuto.

  4. Cela serait t’il possible de faire une tuto genre et de la monté sur youtube en francais il y a pas grand chose et il me semble que ca serait tellement bien ! Si jamais vous le faites écrivez moi…. ou de mettre une version de se windows avec les mises à jour intégrer de 2015 Genre que l’on peut télécharger, ca reste légal si on ne met pas les mises à jour et à vrai dire c’est pas donné à tout le monde de faire c’est ligne de commande… Qu’en pensé vous ? astucienpc@gmail.com

  5. Bonjour,
    Tout d’abord merci pour ce tuto.
    Malheureusement je rencontre un souci, en effet je parviens a ajouter les mises à jour dans l’image, etc., mais le souci c’est que lorsque je déploie mon image avec MDT, a la fin du processus si je vais voir dans panneau de configuration, je vois que toutes les mises a jour sont en échec et donc pas installé.
    Aurais-tu une idée ou une piste que je pourrais creuser ?
    D’avance merci.
    Bien à toi,

  6. Bonjour.
    Dès le début du tuto, il est question de « Copier l’image .wim dans le dossier « Sources » »
    Je n’ai pas de fichiers .wim mais ISO. Vous auriez la possibilité de détailler la manipulation a réaliser dans ce cas-ci?
    Est-ce que je dois trouver un logiciel capable de convertir mes ISO en WIM?
    Merci 🙂

  7. A l’étape « 2.5. Démonter l’image en enregistrant les modifications »
    J’ai le message d’erreur n° 0xc1420122
    L’image montée n’a pas pu être validée car l’image dans le fichier wim a été modifiée après avoir été montée.
    (>_>) Bah c’était le but de la manœuvre de monter, modifier, et démonter cette image donc..
    Je vais recommencer, j’ai certainement du louper quelque chose!

  8. Finalement j’arrive à effectuer toutes les étapes, mais une fois l’étape 2.5 faite « Démonter l’image en enregistrant les modifications », l’iso ne change pas beaucoup de taille et quand je teste une installation avec celle-ci, les mises à jours pourtant normalement intégrées a l’iso ce télécharges avec windows update et s’installe comme si je n’avais rien modifié..
    Je pense que l’iso devrait normalement faire 10 ou 15 Go si les mises à jours s’y trouvaient vraiment.

  9. J’ai compris une de mes erreurs.
    Quand on monte une image pour la modifier, la référence « /index:1 » correspond au numéro de la version de windows présente dans l’iso sur laquelle on travaille.
    Moi j’utilise une iso de Windows 7 Aio qui contient plusieurs versions de Windows 7 (familiale, pro, starter etc..)
    Quand j’installe Windows 7 avec cette iso, j’installe la version Home Premium 64x qui correspond à l’index n°6 (et donc pas la n°1).
    J’ai donc ajouté les mises à jours dans mon iso sans trop problèmes.

    Malheureusement, vers la fin de l’installation, j’ai le message d’erreur suivant qui s’affiche :
    Windows could not configure one or more system components. To install Windows, restart the computer and then restart the installation.

    Apres le redémarrage, pendant que « Le programme d’installation démarre les services » j’ai le second message d’erreur suivant:

    The computer restarted unexpectedly or encountered an unexpected error. Windows installation cannot proceed. To install Windows, click « OK » to restart the computer, and then restart the installation.

    Je redémarre et ça tombe toujours sur ce second message :-/
    Je suppose que je dois mettre de mauvaises mises à jours dans mon iso, mais allez savoir laquelle!

Laisser un commentaire