Windows Vista, 7 o 8: installare tramite PXE Boot

pxe thumb

In questo articolo spieghiamo come sia possibile eseguire l'avvio dell'installazione di un sistema operativo da una macchina server su una macchina client direttamente tramite rete, senza far uso di lettore dvd e neppure di alcuna pen-drive. In particolare descriveremo come configurare il server per l'uso di SERVA, un fantastico programma che rendere semplice e veloce l'installazione di un server PXE Boot.

 

Per poter permettere l’avvio dell’installazione di un sistema operativo windows Vista/7/8 tramite PXE è necessario disporre di una coppia di servizi, che sfruttano protocolli differenti per raggiungere lo stesso scopo. In primo luogo è necessario disporre di un server DHCP, il quale deve assegnare un indirizzo IP al client che deve effettuare il BOOT. Oltre all’indirizzo IP da assegnare al client, il servizio DHCP può inviare altre informazioni al client, tra cui un indirizzo IP di un eventuale server TFTP per il boot via rete. Ecco quindi che sarà necessario disporre anche di un servizio TFTP sul quale potremmo caricare i file che dovranno essere letti via rete dal client in fase di boot.

Fortunatamente, esiste un programma che ingloba entrambi questi servizi, in un’interfaccia semplice e davvero compatta. Si chiama “Serva” ed è l’unico programma di cui necessitiamo per poter realizzare il nostro scopo. Come prima operazione occorre perciò scaricare sulla macchina server questo programmino, reperibile qui: http://www.vercot.com/~serva/default.html.

Una volta scaricato il programma è necessario scompattarlo in una directory: questo programma è autocontenuto e non richiede alcuna installazione. Possiamo quindi scompattarlo in un luogo a nostro piacimento, per esempio in “Documenti\Serva”.

A questo punto occorre eseguire una serie di operazioni volte alla configurazione del sistema server prima di poter sfruttare i servizi sopracitati.

1.      Disabilitare il firewall

Il primo passo da seguire consiste nella disabilitazione del firewall di Windows. Questo passo si rende necessario per evitare di incorrere in problemi di irraggiungibilità tra client e server. Gli utenti più esperti possono ad ogni modo decidere di configurare ad hoc il server per permettere richieste DHCP e TFTP. Non è scopo di questa guida spiegare come configurare il firewall di Windows per raggiungere tale obiettivo, perciò il nostro consiglio è quello di procedere disabilitandolo per poi riabilitarlo una volta completato l’installazione del sistema operativo sulla macchina client.

2.      Configurazione Interfaccia di rete server

In seconda battuta occorre predisporre l’interfaccia di rete del server. Possiamo configurarla in due modalità diverse in base alla struttura di rete già presente. In particolare identifichiamo due possibilità:

-  Il server è già collegato ad una rete ethernet/wifi ed ottiene un indirizzo IP tramite DHCP (ovvero esiste un server DHCP sulla LAN)

- Il server non è connesso ad alcuna rete LAN oppure è connesso ma si assegna in modo manuale il proprio indirizzo IP (i.e. non ci sono altri server DHCP sulla rete LAN).

Nel primo caso, non occorre configurare nulla a livello di sistema operativo. Semplicemente, nella sezione successiva, configureremo SERVA come proxyDHCP piuttosto che come server DHCP, in modo da scavalcare il server DHCP della rete LAN.

Nel secondo caso occorre prendere nota dell’indirizzo IP della interfaccia di rete cui il server è collegato, in modo da poter configurare SERVA come server DHCP. Inoltre, occorre avere un’idea degli indirizzi IP liberi sulla LAN, tra cui sceglierne un intervallo da amministrare per il server DHCP.

Il meccanismo che utilizzeremo per avviare l’installazione tramite PXE boot richiede il trasferimento tramite TFTP di una sola applicazione di rete in grado di accedere al protocollo Windows Share per leggere i file di installazione. Per tale ragione occorre creare una cartella nella quale inseriremo i file contenuti nel disco di installazione. Perciò, bisogna creare una cartella “C:\SERVA_ROOT”.

3.      Configurazione di SERVA

A questo punto è necessario avviare SERVA. Dovendo accedere a funzionalità avanzate di rete, SERVA richiede – per funzionare correttamente – dei diritti di esecuzione di amministratore. Perciò, quando lo so avvia, occorre avviarlo come amministratore.

Una volta avviato, procediamo in primis alla configurazione del servizio TFTP. Facendo click su Settings, si aprirà una finestra con più tab selezionabili: scegliere TFTP e configurare come di seguito:

1

 

Ora occorre configurare il servizio DHCP. Cliccare quindi sulla tab DHCP. A questo punto occorre configurare il servizio in base alle considerazioni fatte precedentemente sulla propria infrastruttura di rete: se sulla propria LAN è già presente un server DHCP (o router con servizio DHCP) occorre configurare il servizio di SERVA come DHCP Proxy (come in figura a sinistra); altrimenti occorre configurare SERVA come server DHCP, impostando l’IP di partenza, la maschera di rete e la dimensione del pool (immagine di destra).

2

In ambo i casi è necessario spuntare Service Add-On BINL. Il binding di una precisa interfaccia di rete è sconsigliato a meno che non si conosca con esattezza l’interfaccia di rete sulla quale rispondere alle richieste DHCP del client da avviare. Se il binding non è spuntato, SERVA risponderà su tutte le interfacce di rete.

Nel campo IP Pool 1st Addr (valido solo se si sta configurando il server DHCP piuttosto che il proxy) è necessario specificare l’indirizzo IP di partenza da assegnare ai client: in questo esempio ne abbiamo scelto uno adiacente a quello occupato dal server DHCP (il pc corrente), ovvero “192.168.1.2”. In modo analogo è necessario stabilire la maschera di rete, che in questa configurazione di IP privati (LAN) è “255.255.255.0”.

Una volta configurato in modo appropriato il servizio, occorre chiudere SERVA.

4.      Configurare share di rete

Ora che il servizio è stato configurato (ma non avviato), Serva avrò provveduto alla creazione di una serie di directory all’interno di quella precedentemente creata in C:\SERVA_ROOT. Più nello specifico, dovremmo avere la seguente struttura di cartelle.

3

I file creati da Serva hanno lo scopo di caricare tramite TFTP un programma semplicissimo, con lo scopo di accedere via Windows Share ai file di installazione del sistema operativo da lanciare tramite PXE. Ognuna delle cartelle visibili può contenere a sua volta una o più sottocartelle, nelle quali si andranno a copiare i file di installazione dei sistemi operativi. Occorre distinguere quale cartella utilizzare in base al sistema operativo da avviare: nel nostro caso, vogliamo installare Windows 8, perciò useremo la cartella WIA_WDS. Al solo scopo di completezza specifichiamo che la cartella NWA_PXE è atta a contenere sistemi Linux, mentre WIA_RIS è adibita a contenere sistemi Windows NT (XP, 2000, e simili).

Perciò, apriamo WIA_WDS ed al suo interno creiamo una sottocartella chiamata W8_64. Il nome da dare alla cartella deve essere conforme a quanto riportato nel file ServaReadMe.txt. In parole povere occorre specificare il nome del sistema operativo seguito da un underscore e dall’architettura hardware di destinazione (nel nostro caso 64 bit).

Una volta creata la cartella, all’interno copieremo tutti i file presenti sul nostro DVD di installazione di Windows 8 (o semplicemente scompatteremo una ISO di Windows 8).

Ora non rimane che rendere disponibili questi file via rete, configurando Windows per condividerli in sola lettura a chiunque lo richieda sulla nostra LAN (ovvero il sistema che dovrà fare PXE). Per permettere la condivisione sulla rete di queste cartelle, clicchiamo col pulsante destro del mouse sulla cartella WIA_WDS, selezioniamo “proprietà” ed in seguito “condivisione”. Clicchiamo su “Condivisione avanzata” e scriviamo come nome di condivisione il seguente: “WIA_WDS_SHARE”. È importante che il nome della share sia esattamente questo.

A questo punto, clicchiamo su “Permessi” e poi su “Aggiungi”. Nel campo di ricerca specifichiamo l’utente “Everyone” e clicchiamo OK. Assegnamo a questo utente il permesso di lettura, premiamo ok, di nuovo ok sulla schermata della condivisione avanzata ed infine “chiudi” sulla schermata della proprietà della cartella WIA_WDS.

Ora siamo pronti per avviare i servizi di Serva e testare se tutto funziona correttamente.

4

5.      Configurare il client

Il client sul quale vogliamo installare il sistema windows deve essere configurato in modo da permettere il caricamento dell’installer tramite PXE. Solitamente qualsiasi computer commercializzato da 10 anni a questa parte dispone di tale funzionalità. Occorre però abilitarla tramite BIOS: accendere il pc client e premere durante l’avvio il pulsante con il quale è possibile accedere alla configurazione BIOS. In genere, nei sistemi desktop, il tasto per accedere al BIOS è CANC; nei laptop, netbook e simili i tasti possono variare in base a modello e produttore, ma solitamente sono F2 o F10 oppure CANC.

Una volta entrati nel bios, occorre raggiungere la sezione “Boot” e abilitare il boot via scheda di rete, impostandolo come primo dispositivo di avvio. Fatto ciò, occorre salvare le impostazioni. Ora il nostro client è pronto per avviare l’installer tramite rete.

6.      Test di boot

Avviamo il servizio SERVA sul server. Subito dopo, avviamo il client. Se tutto è andato come sperato, saremo in grado di scegliere il sistema operativo da installare da un menu di scelta multipla.