Bonjour, chers habitants de Habr !
L'objectif de cet article est de rédiger un petit aperçu des possibilités de déploiement de différents systèmes via WDS (Services de Déploiement Windows).
L'article fournira des instructions rapides pour le déploiement de Windows 7 x64, Windows XP x86, Ubuntu x64 et l'ajout d'outils utiles au démarrage réseau tels que Memtest et Gparted.
L'histoire se déroulera dans l'ordre des idées qui me viennent à l'esprit. Tout a commencé avec Microsoft...
Et maintenant, l'histoire elle-même :
Il n'y a pas si longtemps, j'ai eu l'idée judicieuse de déployer des systèmes au travail à l'aide de WDS. Si quelqu'un fait le travail à notre place, c'est agréable. Et si, en plus, nous apprenons quelque chose de nouveau, c'est doublement agréable. Je ne vais pas m'attarder sur la description de l'installation du rôle WDS - Microsoft résume tout à Suivant-Suivant-Suivant, et il y a des montagnes d'articles sur ce sujet. Je vais brièvement parler de la gestion des images Windows en mettant l'accent sur les points qui m'ont posé problème. Les systèmes non-Microsoft seront décrits plus en détail (c'est la raison d'être de cet article).
Commençons.
Le serveur, qui agira en tant que stockage d'images et coordinateur des actions, fonctionne sous Windows Server 2008 R2. Pour un fonctionnement correct de ce service, des rôles tels que DHCP et DNS sont nécessaires. Et AD - pour joindre les machines au domaine. (Ces rôles n'ont pas besoin d'être sur la même machine, ils peuvent être répartis dans toute la structure. L'essentiel est qu'ils fonctionnent correctement.)
1. Configuration de WDS
Ajoutons les rôles nécessaires et allons rapidement dans la console WDS, initialisons notre serveur et voyons ce qui suit :

- Install Images — images d'installation. Des systèmes configurés et beaux que nous allons déployer. Pour plus de commodité, nous pouvons ajouter plusieurs groupes par type de système : Windows 7, XP ou par type de tâche — IT Dept, Client Dept, Servers.
- Boot Images — images de démarrage. Celles qui se chargent en premier sur la machine et permettent d'effectuer diverses actions. La première image est celle qui se trouve sur le disque d'installation (pour Windows 7 — c'est le dossier sources et les fichiers install.wim ou boot.wim).
Et ensuite, il est possible d'en faire des choses intéressantes :- Image de capture ou image d'enregistrement — notre outil principal, permettant de faire une copie d'un système configuré, qui a été préalablement traité par sysprep et est notre modèle.
- Image de détection — permet de déployer sur des ordinateurs qui ne supportent pas le démarrage réseau des images de systèmes configurés.
- Appareils en attente — dispositifs en attente d'approbation de l'administrateur pour installation. Nous voulons savoir qui installe notre merveille sur son ordinateur.
- Transmissions multicast — diffusion multicast. Utilisé pour installer une image sur un grand nombre de clients.
- Pilotes — pilotes. Aident à ajouter les pilotes nécessaires aux images sur le serveur et à éviter ce type d'erreurs :

Après avoir ajouté des pilotes sur le serveur WDS, ils doivent être intégrés à l'image de démarrage souhaitée.
Oui, et également — pour chaque architecture de système, il faut créer ses propres chargeurs et installeurs. La diversité dans le zoo a un coût.
En réalité, notre WDS est déjà prêt. Nous pouvons démarrer depuis la machine et voir une fenêtre de sélection avec nos images de démarrage.
Je ne vais pas décrire toutes les étapes de la préparation d'une image parfaite, mais je vais laisser un lien vers l'article que j'ai utilisé : (j'avais pour une raison quelconque une ancienne version de WAIK installée — 6.1.7100.0, qui ne permettait pas de créer un fichier de réponses pour Windows 7 SP1. Il faut la toute dernière version disponible — 6.1.7600.16385)
Et voilà une instruction pour préparer Windows XP pour WDS. Nous ne allons pas en détailler davantage — les choses les plus intéressantes sont dans la deuxième partie !
2. Chargeur universel
C'est génial d'avoir un tel système. L'utiliser est un vrai plaisir. Mais ne peut-on pas encore simplifier un peu plus la vie ?
Je veux l'utiliser pour installer Linux !
Tout d'abord, comme beaucoup d'entre vous s'en souviennent — l'installation parallèle de Windows et Ubuntu ne se termine jamais bien pour le chargeur de démarrage Windows. Il est remplacé par le GRUB universel.
Ici c'est pareil. Nous avons besoin d'un chargeur universel, voici -
1) Téléchargez la dernière version (au moment de la rédaction de cet article, c'est
Ces fichiers nous intéressent :
corepxelinux.0
com32menuvesamenu.c32 (vous pouvez utiliser menu.c32 pour une interface textuelle au démarrage)
com32chainchain.c32
Tous les guides sur l'utilisation de ce chargeur disent que cela fonctionne avec ces trois fichiers. J'ai dû ajouter aussi ldlinux.c32, libcom.c32 et libutil_com.c32. Vous pouvez faire ainsi — copier ceux qui sont recommandés et essayer. Le fichier qui pose problème, ce sera celui à copier dans le dossier.
Nous avons également besoin d'un fichier memdisk pour le démarrage de l'iso. Nous le plaçons aussi dans ce dossier.
2) Placez-les dans le dossier où vous stockez toutes les images WDS. À savoir ici — RemoteInstallBootx64 (nous installerons uniquement 64, pour 86, placez également les mêmes fichiers dans ce dossier.)
3) Renommez pxelinux.0 en pxelinux.com
4) Créons un dossier pxelinux.cfg pour le fichier de configuration et le fichier lui-même (déjà à l'intérieur de ce dossier bien sûr) — default (sans extension !) ayant le contenu suivant :
DEFAULT vesamenu.c32
PROMPT 0
NOESCAPE 0
ALLOWOPTIONS 0
# Timeout in units of 1/10 s
TIMEOUT 300
MENU MARGIN 10
MENU ROWS 16
MENU TABMSGROW 21
MENU TIMEOUTROW 26
MENU COLOR BORDER 30;44 #20ffffff #00000000 none
MENU COLOR SCROLLBAR 30;44 #20ffffff #00000000 none
MENU COLOR TITLE 0 #ffffffff #00000000 none
MENU COLOR SEL 30;47 #40000000 #20ffffff
MENU BACKGROUND pxelinux.cfg/picture.jpg #picture 640×480 pour le fond
MENU TITLE Choisissez votre destin !LABEL wds
MENU LABEL Services de Déploiement Windows (7, XP, Images de démarrage)
KERNEL pxeboot.0LABEL local
MENU DEFAULT
MENU LABEL Démarrer à partir du disque dur
LOCALBOOT 0
Type 0x80
5) Faisons une copie du fichier pxeboot.n12 et appelons-la pxeboot.0
6) Après cela, il est nécessaire d'apprendre à notre WDS à démarrer précisément avec le chargeur universel. En 2008, cela se faisait via l'interface graphique, en 2008 R2 — via la ligne de commande. Ouvrez et entrez :
- wdsutil /set-server /bootprogram:bootx64pxelinux.com /architecture:x64
- wdsutil /set-server /N12bootprogram:bootx64pxelinux.com /architecture:x64
Sortie de la ligne de commande :

Tout est prêt, nous démarrons et voyons l'écran tant désiré :

C'est la configuration de base, vous pouvez l'ajuster selon vos besoins (logo de l'entreprise, ordre de démarrage, etc. Pour l'instant, il ne sait que transmettre le contrôle au WDS et redémarrer à partir du disque dur. Enseignons-lui à démarrer Ubuntu !
3. Apprenons à l'orfraie à voler
De quoi avions-nous besoin là-bas ? Ubuntu, Gparted ? Ajoutons également memtest pour l'ordre.
Commençons par le plus simple :
Memtest
Créons dans le dossier Boot/x64 un dossier séparé pour les fichiers Linux, par exemple Distr. Et des sous-dossiers pour nos systèmes correspondants :

Télécharger et ajoutons les lignes suivantes dans notre fichier de configuration de démarrage (fichier default) :
label MemTest
menu label MemTest86+
Kernel memdisk iso raw
initrd Linux/mt420.iso
Cela nous permettra de charger notre petite image en mémoire et de la lancer depuis là. Malheureusement, cela n'a pas fonctionné avec de grandes images.
Gparted
Télécharger , décompressons l'image iso et prenons trois fichiers — /live/vmlinuz, /live/initrd.img et /live/filesystem.squashfs
Que sont ces fichiers ? (Je peux me tromper dans les formulations, une grande demande à mes lecteurs de corriger si je me trompe)
- vmlinuz (on peut souvent voir vmlinux) — fichier image du noyau compressé
- initrd.img — image du système de fichiers racine (minimum nécessaire pour le démarrage)
- filesystem.squashfs — les fichiers utilisés lors du fonctionnement
Nous plaçons les deux premiers fichiers dans le dossier de téléchargement (dans mon cas, il s'agit de Bootx64DistrGparted) et le troisième sur le serveur IIS (heureusement qu'il est déjà disponible pour WSUS).
Une petite digression — malheureusement, ma tentative de charger une image iso dans memdisk avec de gros distributions a échoué. Si jamais vous connaissez le secret du succès — ce serait une excellente solution qui permettrait de démarrer rapidement n'importe quel système à partir d'une image iso.
Nous ajoutons filesystem.squashfs sur IIS, afin qu'il soit accessible sur le réseau (n'oubliez pas d'ajouter un type MIME pour cette extension).

Ajoutons maintenant une entrée dans notre pxelinux.cfg/default :
LABEL GParted Live
MENU LABEL GParted Live
KERNEL Distr/Gparted/vmlinuz
APPEND initrd=Distr/Gparted/initrg.img boot=live config union=aufs noswap nopromt vga=788 fetch=http://192.168.10.10/Distr/Gparted/filesystem.squashfs
Nous vérifions — ça fonctionne !
Ubuntu 12.04
J'ai ajouté deux options d'installation possibles — entièrement automatique (merci à l'utilisateur pour et en mode manuel).
Nous téléchargeons le fichier avec l'installation alternative et en extrayons (comme auparavant) deux fichiers — initrd.gz et linux et nous les plaçons dans Distr/Ubuntu.
Ajoutons dans notre pxelinux.cfg/default les lignes
pour une installation entièrement manuelle.
LABEL Ubuntu
KERNEL Distr/Ubuntu/linux
APPEND priority=low vga=normal initrd=Distr/Ubuntu/initrd.gz
Pour une installation automatique, un fichier avec les paramètres de réponse est nécessaire (vous pouvez lire ) et nous le placerons sur notre serveur web. Ma ligne dans le chargeur ressemble à ceci :
LABEL Ubuntu Auto Install
KERNEL Distr/Ubuntu/linux
APPEND initrd=Distr/Ubuntu/initrd.gz ksdevice=eth0 locale=ru_RU.UTF-8 console-setup/layoutcode=ru url=http://192.168.10.10/Distr/Ubuntu/preseed.txt
Utilité pour l'avenir
En parcourant le matériel sur le sujet et en cherchant des réponses à mes questions, j'ai découvert à partir de décrivant le chargement du Kaspersky Rescue Disk par le réseau. Malheureusement, cela n'a pas fonctionné pour moi. Mais l'outil est vraiment utile (de temps en temps, des utilisateurs plutôt enthousiastes pourraient attraper quelque chose de ce genre… Il est bon d'avoir un tel outil à portée de main).
Conclusion
Cet article présente un aperçu des fonctionnalités offertes par le rôle WDS de Microsoft. Lorsque j'ai commencé à rédiger cet article, les plans étaient ambitieux : un guide détaillé sur tous les aspects du chargement des systèmes mentionnés ci-dessus… Mais au fur et à mesure que le matériel sur WDS s'accumulait, le fil de la narration m'a conduit dans des profondeurs que personne ne rencontrera, probablement… Par conséquent, j'ai pris la décision de partager quelques informations succinctes sur ce qui est possible et, si possible, des liens vers de bons articles. Si les lecteurs sont intéressés à lire, ou si je désire soudainement la gloire et l'argent pour enrichir la caisse de Habr avec des articles, je pourrais m'attarder plus en détail sur chaque étape de la configuration d'un serveur WDS polyvalent.
Je tiens encore une fois à remercier les auteurs et pour leur matériel, qui sera intéressant pour tout le monde sans exception.
Sur Habr, il y a naturellement déjà eu des articles sur ce même sujet, j'ai essayé de l'aborder d'un autre point de vue ou de le compléter : et
Merci pour votre attention.
Gloire aux robots !
Source : habr.com

