Come avviare PXE un'immagine di Ubuntu da Windows Server 2008
Questa guida spiega come configurare un computer Windows Server 2008 per estrarre un'immagine statica di Ubuntu che può essere rilevata da terminali diskless, in modo che sia possibile avere un numero qualsiasi di macchine che eseguono un'istanza completamente funzionale di Ubuntu senza avere un disco rigido, fintanto che sono in grado di avviare PXE.
Questo è un articolo per gli ospiti di Alexander Karnitis e Cody Dull, due lettori che lavorano per Hyndman Inc e hanno dovuto capire come realizzare questo compito per il loro lavoro. Sono stati così gentili da scrivere il processo per tutti gli altri.
Perché voglio questo?
L'avvio PXE semplifica e rende più economica la gestione di una rete e la possibilità di offrire immagini Ubuntu personalizzate da un server Windows può rendere più robusto l'ambiente. È possibile utilizzare queste immagini per fornire agli utenti lo stesso ambiente di base su cui lavorare, disporre di un sistema facilmente ripristinabile (è sufficiente spegnere e riaccendere la macchina), eseguire la diagnostica su una macchina malfunzionante e altro ancora. Inoltre, servendo queste immagini da un server Windows, sarebbe possibile servire entrambe le immagini di Windows e Ubuntu da una singola posizione, anche se questo va oltre lo scopo di questa guida.
Di cosa ho bisogno?
- Windows Server 2008 Machine con Servizi di distribuzione Windows (WDS)
- Client in grado di avviare PXE
- Windows Server Machine che esegue DHCP
- Un server NFS (questa guida presuppone che il server NFS sia lo stesso del server WDS, ma non deve essere così)
Creazione del server WDS
L'installazione di Servizi di distribuzione Windows su un server Windows non è molto difficile e Microsoft ha ottime guide per guidarti nel processo di installazione (2008 e 2008 R2 qui), quindi questa guida non copre come farlo, ma sai che desidera sia il server di distribuzione che il server di trasporto. Si noti inoltre che quando si configura il ruolo, si desidera selezionare la casella "Rispondere a tutti i computer client (conosciuti e sconosciuti)" durante l'installazione, a meno che i computer che si stanno avviando siano già noti ad Active Directory. Questo perché il server fa riferimento a Active Directory come autorità su dispositivi noti e sconosciuti.
La guida dovrebbe essere seguita fino alla sezione "Passaggi per aggiungere immagini", poiché aggiungeremo le nostre immagini tramite pxelinux, non WDS.
Installazione di pxelinux
Scarica ed estrai una copia di syslinux (una possibile fonte è qui). Da qui, stiamo copiando i file che pxelinux deve eseguire nella directory WDS. In particolare, per pxelinux 5.01, significa che coperemo i seguenti file:
· Core \ pxelinux.0
· Com32 \ menu \ vesamenu.c32
· Com32 \ lib \ libcom32.c32
· Com32 \ elflink \ ldlinux.c32
· Com32 \ libutil \ libutil.c32
· Com32 \ chain \ chain.c32
Questi file verranno copiati nella directory di architettura desiderata (\ boot \ x64, \ boot \ x86 o entrambi). Dopo aver copiato i file, la directory di architettura dovrebbe apparire simile a questa (ci sono lievi differenze tra x86 e x64, ma non per pxelinux).
Qui, le directory di architettura si trovano nella directory specificata per contenere i file WDS durante la personalizzazione del ruolo WDS.
A questo punto, non avremo più alcun uso per altri file syslinux, quindi la directory syslinux può essere rimossa in sicurezza.
Configurazione di PXElinux
Il file di configurazione di pxelinux può essere pesantemente personalizzato per fornire un menu di avvio unico per diversi computer in base a un tipo di hardware e indirizzo hardware, o basato su un indirizzo IP o un intervallo di indirizzi IP (maggiori informazioni qui) e può fornire alcuni metodi di avvio e un sistema di menu abbastanza robusto (maggiori informazioni qui). Per gli scopi di questa guida di base, tuttavia, ci atteniamo al file di configurazione predefinito e spieghiamo il menu di base che può essere utilizzato per fare clic su un CD live. Per cominciare, i file di configurazione devono trovarsi in una sottocartella denominata "pxelinux.cfg", quindi creare quella cartella nella stessa directory che hai copiato sui file pxelinux. Abbiamo anche creato una cartella "Immagini" accanto alla cartella pxelinux.cfg per archiviare tutte le nostre immagini linux. A questo punto, la cartella dell'architettura dovrebbe apparire in questo modo:
Ora, nella cartella pxelinux.cfg, crea un file chiamato "default" senza un'estensione di file.
Aprire il file in un editor di testo come Blocco note e digitare quanto segue:
DEFAULT vesamenu.c32
PROMPT 0
NOESCAPE 0
CONSENTIRE 0
# Timeout in unità di 1/10 s
TIMEOUT 30 # 3 secondo timeout.
MENU MARGIN 10
MENU ROWS 16
MENU TABMSGROW 21
TIMEOUTROW MENU 26
MENU COLORE BORDO 30; 44 # 20ffffff # 00000000 nessuno
MENU COLOR SCROLLBAR 30; 44 # 20ffffff # 00000000 nessuno
MENU COLORE TITOLO 0 #ffffffff # 00000000 nessuno
MENU COLOR SEL 30; 47 # 40000000 # 20ffffff
MENU TITLE Menu Netboot
# -Un esempio di avvio liveCD
ETICHETTA
kernel Images / UbuntuLIVE / casper / vmlinuz #location del kernel
append boot = casper netboot = nfs nfsroot =: / RemoteInstall / Boot / x64 / Images / UbuntuLIVE initrd = Immagini / UbuntuLIVE /casper/initrd.gz
Si noti che questa configurazione presuppone che l'immagine sia archiviata in Images / UbuntuLIVE dalla directory architecture.
Per ulteriori informazioni su ciò che sta facendo, puoi guardare:
- https://www.howtogeek.com/61263/how-to-network-boot-pxe-the-ubuntu-livecd/
Creazione di una condivisione NFS
La creazione di una condivisione NFS è piuttosto semplice anche sul server Windows e può essere eseguita seguendo i passaggi qui. Ci sono alcune cose da notare per quanto riguarda le autorizzazioni, tuttavia.
Innanzitutto, le autorizzazioni NTFS nella cartella condivisa devono essere modificate, poiché il gruppo Everyone deve disporre delle autorizzazioni di lettura ed esecuzione.
Assicurarsi che la condivisione creata sia una condivisione NFS, non una condivisione SMB.
Inoltre, tutte le macchine dovranno avere accesso anonimo e le autorizzazioni NTFS di tutti dovranno essere applicate agli utenti anonimi.
Una volta che tutto è stato configurato, potrebbe essere necessario un po 'di tempo prima che tutte le impostazioni si propaghino attraverso la rete, ma una volta eseguita dovrebbe essere possibile iniziare a servire i LiveCD dalla casella di Windows Server! Per testare il server, è possibile condividere un semplice LiveCD tratto dal sito web di Ubuntu. Tuttavia, è anche possibile pubblicare un LiveCD personalizzato. Se stai pianificando di eseguire alcune configurazioni di base sul LiveCD, puoi seguire l'articolo:
- https://www.howtogeek.com/109736/how-to-create-a-custom-ubuntu-live-cd-or-usb/
Tuttavia, se vuoi fare alcune personalizzazioni più intense come tweaking Unity, che non può essere fatto bene usando il metodo sopra, o se vuoi prendere una macchina semplice e servirne copie identiche, un altro metodo abbastanza semplice che ti permettono di fare un'immagine che può essere servita è la seguente:
Creazione e personalizzazione del tuo Live CD di Ubuntu
Creare una nuova immagine personalizzata è facile. Scarica e installa un lettore di macchine virtuali se non ne hai già uno. I passaggi di questa guida sono per Oracle VM VirtualBox. https://www.virtualbox.org/wiki/Downloads
Crea una nuova macchina virtuale, seleziona Linux come tipo e Ubuntu o Ubuntu (64 bit) come versione, in base alle tue preferenze, fai clic su Avanti.
Selezionare la quantità di memoria da allocare, si consiglia almeno 1024 MB, fare clic su Avanti.
Scegliere di creare un nuovo disco rigido virtuale ora di tipo VDI e renderlo allocazione dinamica.
Infine, imposta la dimensione del disco rigido virtuale. 4 GB è il minimo, ma si consigliano 6-8 GB.
Scarica il Live CD di Ubuntu 12.04 LTS dal sito web di Ubuntu. Assicurati di selezionare la stessa versione selezionata al passaggio 2. http://www.ubuntu.com/download/desktop
Vai alle impostazioni della VM che hai appena creato. In Archiviazione, fai clic sul singolo disco sotto Controller: IDE. Sulla destra dello schermo sotto attributi, fai clic sul disco con una freccia accanto al campo Unità CD / DVD. Clic Scegli un file virtuale. Passare al punto in cui è stato scaricato il Live CD e selezionarlo.
Ora puoi avviare la VM e installare Ubuntu 12.04.
Una volta installato, apporta tutte le modifiche desiderate. Alcuni dei cambiamenti che abbiamo fatto includono:
- Se questo verrà utilizzato da chiunque, ad eccezione degli amministratori di sistema, creare un account utente come utente standard, impostarlo per accedere automaticamente senza richiedere la password.
- Rimuovere eventuali programmi non necessari a seconda dello scopo dell'immagine finale. Alcuni programmi più grandi che possono essere rimossi se non necessari sono: Firefox, LibreOffice, Gwibber, Thunderbird, empatia e tutti i giochi. Puoi farlo usando il azzeramento attitudinale comando nel terminale o installando Gestore pacchetti Synaptic dal Ubuntu Software Center.
- Sotto Applicazioni di avvio, creare una voce per qualsiasi programma che si desidera eseguire all'avvio. Ad esempio, se queste macchine verranno utilizzate principalmente per connessioni desktop remote, impostare Remmina Remote Desktop per l'avvio automatico.
- Per cambiare la risoluzione predefinita, crea un file che eseguirà il comando xrandr.
- Uno script di esempio che abbiamo utilizzato per disattivare lo schermo integrato sui nostri thin client e modificare la risoluzione dei monitor collegati era le seguenti due righe:
xrandr --output LVDS1 -offx
randr --output VGA1 --primary --mode 1280x1024
- Uno script di esempio che abbiamo utilizzato per disattivare lo schermo integrato sui nostri thin client e modificare la risoluzione dei monitor collegati era le seguenti due righe:
- Rendi il file eseguibile e aggiungilo a Applicazioni di avvio.
- È possibile eseguire ulteriori comandi all'avvio utilizzando questo metodo.
- Tieni presente che ciò funzionerà solo se tutte le tue macchine etichettano i loro schermi in modo simile. Se si dispone di più modelli, potrebbe essere necessario un approccio più sofisticato.
- Sblocca le icone rimanenti dal programma di avvio che non devono essere presenti e aggiungi quelle che desideri aggiungere.
Dopo aver effettuato tutte le personalizzazioni, è necessario installare Remastersys. Nonostante alcuni post che potresti trovare nei forum, Remastersys è ancora attivo e funzionante.
- Ottenere Gestore pacchetti Synaptic Entrando sudo apt-get install synaptic al terminale o ricevilo Ubuntu Software Center.
- Esegui il seguente comando nel terminale per scaricare la chiave gpg del repository:
sudo wget -O -http: //www.remastersys.com/Ubuntu/remastersys.gpg.key | aggiunta di apt-key -
- Apri il file /etc/apt/sources.list in un editor di testo con diritti sudo, aggiungi la riga seguente, modificando in modo preciso la tua versione, se necessario: deb http://www.remastersys.com/ubuntu preciso main
- Aperto Synaptic e cercare Remastersys. Segna i pacchi Remastersys e Remastersys-gui per essere installato, premere Apply per installare.
- Aperto Remastersys-gui e selezionare di riserva.
Ora hai un cd live personalizzato. Il prossimo passo è trasferirlo sul tuo server. Se hai seguito la Guida di Ubuntu di configurazione di Windows Server 2008 a PXE di avvio, ecco i passaggi per distribuire l'immagine.
- Esegui il seguente comando nel terminale per rendere Ubuntu VM un client NFS. sudo apt-get install rpcbind nfs-common
- Creare una directory per montare la condivisione NFS su. sudo mkdir / NFS
- È ora necessario montare una condivisione NFS con autorizzazioni di scrittura concesse. Si consiglia di creare una condivisione aggiuntiva allo scopo di trasferire i file dal client al server mentre si condivide, poiché il file system di avvio di pxe in genere non dispone di questa autorizzazione.
sudo mount: / / NFS
ex. sudo mount 192.168.1.24:/TempNFS / NFS - Copia l'iso appena creato sulla condivisione montata
sudo cp /home/remastersys/remastersys/custom-back.iso / NFS - A questo punto, hai finito con la VM di Ubuntu. Sul tuo server Windows, vai a dove sono stati copiati gli iso ed estrai il contenuto usando uno strumento di elaborazione dei file di immagine come Power ISO. http://www.poweriso.com/download.htm
- Crea una cartella in / boot / x64 / Images e copia il contenuto dell'iso in questa cartella.
- Se il tuo server è configurato correttamente, dovresti vedere il tuo Live CD personalizzato come una delle opzioni di avvio di pxe quando avvii il client diskless.
Per cambiare l'immagine personalizzata, torna alla VM e ripeti i passaggi dall'alto iniziando dal punto in cui hai scelto l'immagine del disco da cui avviare. Questa volta, invece di usare il cd predefinito scaricato da Ubuntu, userai il file ISO di backup che hai esportato.