Hoe PXE Boot een Ubuntu-afbeelding van Windows Server 2008
In deze handleiding wordt uitgelegd hoe u een Windows Server 2008-machine configureert om een statische Ubuntu-afbeelding uit te schakelen die kan worden opgepikt door schijfloze terminals, zodat u op elk willekeurig aantal machines een volledig functioneel exemplaar van Ubuntu kunt laten draaien zonder een harde schijf te hebben, zolang ze in staat zijn om PXE op te starten.
Dit is een gastartikel van Alexander Karnitis en Cody Dull, twee lezers die voor Hyndman Inc werken en moesten uitzoeken hoe ze deze taak voor hun werk konden volbrengen. Ze waren zo vriendelijk om het proces voor iedereen op te schrijven.
Waarom wil ik dit??
PXE-booting maakt het zowel eenvoudiger als goedkoper om een netwerk te beheren, en de mogelijkheid om aangepaste Ubuntu-afbeeldingen van een Windows Server weer te geven kan helpen om uw omgeving robuuster te maken. U kunt deze afbeeldingen gebruiken om gebruikers dezelfde basisomgeving te geven om vanuit te werken, een eenvoudig te herstellen systeem te hebben (alleen de computer uit en weer uit te schakelen), diagnostiek uit te voeren op een defecte machine en meer. Door deze afbeeldingen vanaf een Windows Server te serveren, is het ook mogelijk om zowel Windows- als Ubuntu-afbeeldingen vanaf één locatie te bedienen, hoewel dit buiten het bestek van deze handleiding valt.
Wat heb ik nodig?
- Windows Server 2008-machine met Windows Deployment Services (WDS)
- Client geschikt voor PXE-booting
- Windows Server Machine met DHCP
- Een NFS-server (deze handleiding gaat ervan uit dat de NFS-server hetzelfde is als de WDS-server, maar dat hoeft niet het geval te zijn)
De WDS-server maken
Het installeren van Windows Deployment Services op een Windows-server is niet erg moeilijk, en Microsoft heeft geweldige handleidingen om je door het installatieproces (hier 2008 en 2008 R2) te leiden, dus deze gids zal niet beschrijven hoe je dat moet doen, maar weet dat je wil zowel de Deployment Server als de Transport-server. Houd er ook rekening mee dat u bij het configureren van de rol het vakje "Reageren op alle (bekende en onbekende) clientcomputers" tijdens de installatie wilt inschakelen, tenzij de computers die u opstart al bekend zijn in Active Directory. Dit komt omdat de server verwijst naar Active Directory als de autoriteit op wat bekende en onbekende apparaten zijn.
De gids moet worden gevolgd tot de "Stappen voor het toevoegen van afbeeldingen" sectie, omdat we onze afbeeldingen zullen toevoegen via pxelinux, niet met WDS.
Pxelinux installeren
Download en pak een kopie van syslinux (een mogelijke bron is hier te vinden). Vanaf hier gaan we de bestanden kopiëren die pxelinux nodig heeft om naar de WDS-map te rennen. In het bijzonder betekent dit voor pxelinux 5.01 dat we de volgende bestanden kopiëren:
· Core \ pxelinux.0
· Com32 \ menu \ vesamenu.c32
· Com32 \ lib \ libcom32.c32
· Com32 \ elflink \ ldlinux.c32
· Com32 \ libutil \ libutil.c32
· Com32 \ chain \ chain.c32
Deze bestanden worden gekopieerd naar de gewenste architectuurdirectory (\ boot \ x64, \ boot \ x86 of beide). Na het kopiëren van de bestanden zou de architectuurdirectory er ongeveer zo uit moeten zien (er zijn kleine verschillen tussen x86 en x64, maar niet voor pxelinux).
Hier bevinden de architectuurmappen zich onder de map die is opgegeven om de WDS-bestanden te bevatten bij het aanpassen van de WDS-rol.
Op dit moment hebben we geen gebruik meer voor andere syslinux-bestanden, dus de syslinux-map kan veilig worden verwijderd.
PXElinux configureren
Het pxelinux-configuratiebestand kan sterk worden aangepast om een uniek opstartmenu te bieden voor verschillende computers op basis van een hardwaretype en hardwareadres, of op basis van een IP-adres of bereik van IP-adressen (hier meer over) en kan nogal wat bieden opstartmethoden en een redelijk robuust menusysteem (hier meer over). Voor de doeleinden van deze basisgids houden we echter vast aan het standaardconfiguratiebestand en leggen we uit wat het basismenu is dat kan worden gebruikt om een liveCD te pxebooten. Om te beginnen moeten de configuratiebestanden zich bevinden in een submap met de naam "pxelinux.cfg", dus maak die map in dezelfde map die u hebt gekopieerd over de pxelinux-bestanden naar. We hebben ook een map "Images" gemaakt naast de map pxelinux.cfg om al onze linux-afbeeldingen op te slaan. Op dit punt zou de architectuurmap er ongeveer zo uit moeten zien:
Maak nu in de map pxelinux.cfg een bestand met de naam "default" zonder een bestandsextensie.
Open het bestand in een teksteditor zoals Kladblok en typ het volgende:
DEFAULT vesamenu.c32
PROMPT 0
NOESCAPE 0
ALLOWOPTIES 0
# Time-out in eenheden van 1/10 s
TIMEOUT 30 seconden-3 time-out.
MENERMARGE 10
MENU RIJEN 16
MENU TABLOGROW 21
MENU TIMEOUTROW 26
MENU KLEURKLEUR 30; 44 # 20ffffff # 00000000 geen
MENU KLEUR SCROLLBAR 30; 44 # 20ffffff # 00000000 geen
MENU KLEUR TITEL 0 #ffffffff # 00000000 geen
MENU KLEUR KIES 30; 47 # 40000000 # 20ffffff
MENU TITLE Netboot Menu
# -Een voorbeeld van een liveCD-boot
LABEL
kernel Images / UbuntuLIVE / casper / vmlinuz #location van de kernel
toevoegen boot = casper netboot = nfs nfsroot =: / RemoteInstall / Boot / x64 / Images / UbuntuLIVE initrd = Images / UbuntuLIVE /casper/initrd.gz
Merk op dat deze opstelling veronderstelt dat de afbeelding wordt opgeslagen onder Images / UbuntuLIVE uit de architectuurdirectory.
Voor meer informatie over wat dit aan het doen is, kunt u kijken naar:
- https://www.howtogeek.com/61263/how-to-network-boot-pxe-the-ubuntu-livecd/
Een NFS-share maken
Het maken van een NFS-share is ook vrij eenvoudig op een Windows-server en kan worden gedaan door de stappen hier te volgen. Er zijn echter een paar dingen om op te merken met betrekking tot machtigingen.
Ten eerste zullen NTFS-machtigingen voor de gedeelde map moeten worden gewijzigd, omdat de groep Iedereen Read en Execute-machtigingen moet hebben.
Zorg ervoor dat de gemaakte share een NFS-share is en geen SMB-share.
Ook moeten alle machines anonieme toegang hebben en moeten de Iedereen NTFS-machtigingen worden toegepast op anonieme gebruikers.
Nadat alles is ingesteld, kan het nog een tijdje duren voordat alle instellingen zich via het netwerk hebben uitgebreid, maar als dit eenmaal het geval is, zou het mogelijk moeten zijn om LiveCD's vanuit uw Windows Server-box te gaan gebruiken! Om de server te testen, kunt u een eenvoudige LiveCD delen die afkomstig is van de Ubuntu-website. Het is echter ook mogelijk om een aangepaste LiveCD te serveren. Als je van plan bent om wat basisconfiguratie met de LiveCD te doen, kun je het artikel volgen:
- https://www.howtogeek.com/109736/how-to-create-a-custom-ubuntu-live-cd-or-usb/
Als u echter een intensievere aanpassing wilt uitvoeren, zoals het aanpassen van Unity, wat niet goed kan worden gedaan met de bovenstaande methode, of als u een eenvoudige machine wilt nemen en identieke exemplaren ervan wilt serveren, is een andere, vrij eenvoudige methode die staat u toe om een afbeelding te maken die kan worden bediend is als volgt:
Uw Ubuntu Live-cd maken en aanpassen
Het maken van een nieuwe aangepaste afbeelding is eenvoudig. Download en installeer een virtuele machine-speler als je die nog niet hebt. De stappen in deze handleiding zijn voor Oracle VM VirtualBox. https://www.virtualbox.org/wiki/Downloads
Maak een nieuwe virtuele machine, selecteer Linux als het Type en Ubuntu of Ubuntu (64 bit) als de Versie, afhankelijk van uw voorkeur, klik Volgende.
Selecteer de hoeveelheid geheugen die moet worden toegewezen, ten minste 1024 MB wordt aanbevolen, klik op Volgende.
Kies ervoor om nu een nieuwe virtuele harde schijf van het type VDI te maken en deze dynamisch toe te wijzen.
Stel tot slot de grootte van de virtuele harde schijf in. 4 GB is het minimum, maar 6-8 GB wordt aanbevolen.
Download Ubuntu 12.04 LTS Live-cd van de Ubuntu-website. Zorg ervoor dat u dezelfde versie selecteert die u in stap 2 hebt geselecteerd. Http://www.ubuntu.com/download/desktop
Ga naar de instellingen van de VM die u zojuist hebt gemaakt. Klik onder Opslag op de afzonderlijke schijf onder Controller: IDE. Aan de rechterkant van het scherm hieronder attributen, klik op de schijf met een pijl naast het veld CD / DVD-station. Klik Kies een virtueel bestand. Navigeer naar waar je de Live-CD hebt gedownload en selecteer deze.
U kunt nu de VM starten en Ubuntu 12.04 installeren.
Na de installatie, brengt u alle gewenste wijzigingen aan. Enkele van de veranderingen die we hebben aangebracht zijn:
- Als dit door iedereen wordt gebruikt, behalve systeembeheerders, maak dan een gebruikersaccount aan als standaardgebruiker, stel het in om automatisch in te loggen zonder wachtwoord vereist.
- Verwijder alle onnodige programma's afhankelijk van het doel van de uiteindelijke afbeelding. Sommige grotere programma's die kunnen worden verwijderd als ze niet nodig zijn, zijn: Firefox, LibreOffice, Gwibber, Thunderbird, empathie en alle games. U kunt dit doen door de aptitude purge commando in terminal, of door te installeren Synaptic Package Manager van de Ubuntu Software Center.
- Onder Opstarttoepassingen, maak een invoer voor elk programma dat u wilt starten op het moment van starten. Als deze apparaten bijvoorbeeld hoofdzakelijk worden gebruikt voor externe desktopverbindingen, stel dan in Remmina Remote Desktop om automatisch te starten.
- Als u de standaardresolutie wilt wijzigen, maakt u een bestand met de opdracht xrandr.
- Een voorbeeldscript dat we gebruikten om de geïntegreerde weergave op onze thin clients uit te schakelen en de resolutie van de aangesloten monitoren te wijzigen, bestond uit de volgende twee regels:
xrandr --output LVDS1 -offx
randr --output VGA1 - primair - modus 1280x1024
- Een voorbeeldscript dat we gebruikten om de geïntegreerde weergave op onze thin clients uit te schakelen en de resolutie van de aangesloten monitoren te wijzigen, bestond uit de volgende twee regels:
- Maak het bestand uitvoerbaar en voeg het toe Opstarttoepassingen.
- Aanvullende commando's kunnen op het moment van starten met deze methode worden uitgevoerd.
- Houd er rekening mee dat dit alleen werkt als al uw apparaten hun beeldschermen op dezelfde manier labelen. Als u meerdere modellen hebt, kan een verfijndere aanpak nodig zijn.
- Ontgrendel alle resterende pictogrammen uit het opstartprogramma die er niet hoeven te zijn en voeg de pictogrammen toe die u wilt toevoegen.
Nadat u alle aanpassingen hebt aangebracht, moet u installeren Remastersys. Ondanks enkele berichten die je op forums kunt vinden, Remastersys is nog steeds actief.
- Krijgen Synaptic Package Manager door ofwel binnen te gaan sudo apt-get install synaptic op de terminal of haal het vandaan Ubuntu Software Center.
- Voer de volgende opdracht in terminal uit om de gpg-sleutel van de repository te downloaden:
sudo wget -O -http: //www.remastersys.com/Ubuntu/remastersys.gpg.key | apt-key toevoegen -
- Open het bestand /etc/apt/sources.list in een teksteditor met sudo-rechten, voeg de volgende regel toe en wijzig indien nodig nauwkeurig uw versie: deb http://www.remastersys.com/ubuntu precieze hoofdpagina
- Open Synaptic en zoek naar Remastersys. Markeer de pakketten Remastersys en Remastersys-gui om te worden geïnstalleerd, druk op toepassen om te installeren.
- Open Remastersys-gui en selecteer backup.
Je hebt nu een aangepaste live-cd. De volgende stap is om het over te zetten naar uw server. Als u de handleiding Ubuntu van Windows Server 2008 naar PXE hebt opgestart, volgt hier de procedure voor het implementeren van de afbeelding.
- Voer de volgende opdracht in terminal uit om de Ubuntu VM een NFS-client te maken. sudo apt-get install rpcbind nfs-common
- Maak een map om de NFS share op te zetten. sudo mkdir / NFS
- U moet nu een NFS-share koppelen met toegekende schrijfrechten. Het wordt aanbevolen dat u een extra share maakt met het doel bestanden over te brengen van client naar server terwijl u deelt, want het bestandssysteem van het pxe-opstartbestand heeft normaal gesproken deze toestemming niet.
sudo mount: / / NFS
ex. sudo mount 192.168.1.24:/TempNFS / NFS - Kopieer de nieuw gemaakte ISO naar de aangekoppelde share
sudo cp /home/remastersys/remastersys/custom-back.iso / NFS - Op dit moment bent u klaar met de Ubuntu VM. Ga op uw Windows-server naar waar de iso werd gekopieerd en extraheer de inhoud met behulp van een verwerkingsprogramma voor beeldbestanden, zoals Power ISO. http://www.poweriso.com/download.htm
- Maak een map onder / boot / x64 / Images en kopieer de inhoud van de iso naar deze map.
- Als uw server correct is geconfigureerd, zou u nu uw aangepaste Ubuntu Live-CD moeten zien als een van de pxe-opstartopties wanneer u uw schijfloze client opstart.
Als u de aangepaste afbeelding wilt wijzigen, gaat u terug naar de VM en herhaalt u de stappen van bovenaf bij de stap waarbij u de schijfkopie hebt gekozen om van op te starten. Deze keer, in plaats van het gebruik van de standaard-cd gedownload van Ubuntu, gebruik je het backup iso-bestand dat je hebt geëxporteerd.