Skip to content

Déployer Windows avec un Raspberry Pi

28 décembre 2012

Bonjour,

J’ai le plaisir aujourd’hui de vous présenter mon Raspberry Pi fraichement reçu.

Mais d’abord qu’est-ce que le Raspberry Pi image ?

A l’heure où la course à la puissance et à la performance prédominent, un projet ayant pour objectif de promouvoir et d’encourager l’apprentissage de la programmation informatique à faible coût a vu le jour. Ce projet a permis la création d’un mini-ordinateur rudimentaire fonctionnant sous architecture ARM.

Pour donner une idée du prix, comptez environs 25€ pour le Raspberry Pi auquel vous ajouterez une carte SD, un chargeur USB ainsi qu’un câble micro USB pour l’alimentation.

Rasp2

Je ne m’attarderais pas sur les systèmes d’exploitations supportés (principalement Linux et RISC OS), mais je vais vous en présenter un des usages possible : un serveur de déploiement autonome.

Notre Raspberry Pi intègrera les rôles suivants :

  • Serveur DHCP,
  • Serveur PXE (qui amorcera un Litetouchx86.wim),
  • Serveur de fichiers (qui contiendra un point de distribution MDT 2012).

J’ai installé la distribution Raspbian  sur la carte SD de mon Raspberry Pi, installé sans interface graphique, mais avec un serveur SSH pour l’accès à distance.

J’installe d’abord l’éditeur de texte vim.

apt-get install vim

Configuration d’une ip fixe pour le serveur :

vim /etc/network/interfaces

iface eth0 inet static 
address 192.168.82.100 
netmask 255.255.255.0 
broadcast 192.168.82.255 
gateway 192.168.82.254

Installation des composants :

apt-get install dhcp3-server tftpd-hpa samba

Configuration du serveur DHCP :

mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd-original.conf
vim /etc/dhcp/dhcpd.conf

default-lease-time 86400;
max-lease-time 604800;
 
authoritative;
 
subnet 192.168.82.0 netmask 255.255.255.0 {
        range 192.168.82.120 192.168.82.140;
        filename "pxelinux.0";
        option subnet-mask 255.255.255.0;
        option broadcast-address 192.168.82.255;
    next-server 192.168.82.100;
}

Paramétrage du PXE :

cd /srv/tftp 
mkdir pxelinux.cfg
vim pxelinux.cfg/default

DISPLAY boot.txt
 
DEFAULT w7
 
LABEL w7
    MENU LABEL Windows 7
    KERNEL windows/7/default/startrom.0
 
PROMPT 1
TIMEOUT 0

Paramétrage du menu de Boot PXE :

vim /srv/tftp/boot.txt

______                _    _       _
|  _  \              | |  | |     | |
| | | |__ _ _ __ __ _| | _| |_ ___| | __
| | | / _` | ‘__/ _` | |/ / __/ _ \ |/ /
| |/ / (_| | | | (_| |   <| ||  __/   <
|___/ \__,_|_|  \__,_|_|\_\\__\___|_|\_\

* Windows 7 x86:                  w7

Création d’un fichier de Remap (permettant la correspondance des chemins) :

vim /srv/tftp/pxelinux.cfg/remap

re ^pxeboot\.n12 windows/7/default/pxeboot.n12
re ^pxeboot\.com windows/7/default/pxeboot.com
re ^pxeboot\.0 windows/7/default/pxeboot.n12
re ^bootmgr\.exe windows/7/default/bootmgr.exe
r ^\\Boot\\ windows/7/default/
r ^\\boot\\ windows/7/default/
r ^Boot/ windows/7/default/
r ^/Boot/ windows/7/default/
r ^boot/ windows/7/default/
r ^/boot/ windows/7/default/
r ^\\ windows/7/default/
rg \\ /

Paramétrage du PXE pour support du fichier de remap et mode verbeux :

vim /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="–secure –m /srv/tftp/pxelinux.cfg/remap -vvv"

Récupération du pxelinux.0 :

mkdir /tmp/netboot
cd /tmp/netboot
wget
http://ftp.fr.debian.org/debian/dists/squeeze/main/installer-amd64/current/images/netboot/netboot.tar.gz
tar xvfz netboot.tar.gz
cp pxelinux.0 /srv/tftp/

Création de l’arborescence des fichiers d’amorce.

mkdir -p /srv/tftp/windows/7/x86

Configuration d’un partage Samba :

vim /etc/samba/smb.conf

Décommenter la ligne “security = user”

Insérer le bloc de configuration suivant :

[MDT]
comment = Deploymentshare
path = /home/MDT
browseable=yes
writeable=yes
create mask = 0775
directory mask = 0775
Valid uers = MDT
admin users = root

Création de l’utilisateur MDT :

useradd MDT
smbpasswd -a MDT
 
Saisir le mot de passe 2 fois. Passw0rd par exemple.

passwd MDT

Saisir le mot de passe 2 fois. Passw0rd par exemple.

cd /home
mkdir MDT
chown MDT MDT

Redémarrage des services :

/etc/init.d/samba restart

service isc-dhcp-server restart
service tftpd-hpa restart


Connectons nous sur un serveur sur lequel nous avons l’ADK d’installé ainsi que Microsoft Deployment Toolkit 2012 (MDT 2012) d’installé et configuré avec des Tasks Séquences de déploiement d’OS.

image

pour un WinPEx86 Se créer un package dans c:\Temp avec les éléments suivants :

File

From

Boot.sdi C:\Program Files (x86)\Windows Kits\8.0\Assessment and Deployment Kit\Windows Preinstallation Environment\x86\Media\Boot
bootmgr.exe Windows\Boot\PXE\ d’un WinPE x86 Préalablement monté
pxeboot.com Windows\Boot\PXE\ d’un WinPE x86 Préalablement monté
pxeboot.n12 Windows\Boot\PXE\ d’un WinPE x86 Préalablement monté

 

image

Exécuter le fichier BCD.cmd qui créera le fichier BCD dans le répertoire c:\Temp.

image

Copier le contenu du répertoire c:\Temp dans le répertoire /srv/tftp/windows/7/x86 sur Raspberry Pi (avec WinSCP par exemple).

Sur le Raspberry Pi, configurer les liens symboliques pour les fichiers d’amorce :

cd /srv/tftp/windows/7/x86
ln -s pxeboot.n12 startrom.0
ln -s LiteTouchPE_x86.wim winpe.wim
cd /srv/tftp/windows/7
ln -s x86 default

Création d’un LinkedDeploymentShare vers le partage samba du Rasperry Pi puis mise à jour pour la réplication du contenu.

image

Sur le Raspberry Pi, copier l’amorce dans le répertoire du serveur TFTP du serveur PXE :

cp /home/MDT/Boot/LiteTouchPE_x86.wim /srv/tftp/windows/7/x86/

image


Notre serveur de déploiement autonome est prêt. Il suffit de le brancher, à un switch, et de d’amorcer un poste de travail par le réseau.

imageimage

Le WinPE 4.0 chargé, les wizards MDT apparaissent.

imageimage

Le processus de déploiement MDT est tout ce qu’il y a de plus classique. Notre Raspberry Pi permet le déploiement d’un Windows 8 (ou tout autre OS / Séquence supportée par MDT Sourire).

imageimage

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s