Sådan installeres Ubuntu via PXE-server ved hjælp af lokale DVD-kilder


PXE eller Preboot eXecution Environment er en server-klientmekanisme, der instruerer en klientmaskine om at starte formnetværk.

I denne vejledning viser vi, hvordan du installerer Ubuntu Server via en PXE-server med lokale HTTP-kilder, der er spejlet fra Ubuntu-serverens ISO-billede via Apache-webserveren. PXE-serveren, der bruges i denne vejledning, er Dnsmasq Server.

  1. Ubuntu Server 16.04 eller 17.04 Installation
  2. En netværksgrænseflade konfigureret med statisk IP-adresse
  3. Ubuntu Server 16.04 eller 17.04 ISO-billede

Trin 1: Installer og konfigurer DNSMASQ Server

1. For at konfigurere PXE-serveren skal du ved første trin logge ind med rodkontoen eller en konto med rodrettigheder og installere Dnsmasq-pakken i Ubuntu ved at udstede følgende kommando.

# apt install dnsmasq

2. Derefter skal du sikkerhedskopiere dnsmasqs hovedkonfigurationsfil og derefter begynde at redigere filen med følgende konfigurationer.

# mv /etc/dnsmasq.conf /etc/dnsmasq.conf.backup
# nano /etc/dnsmasq.conf

Føj følgende konfiguration til filen dnsmasq.conf.

interface=ens33,lo
bind-interfaces
domain=mypxe.local

dhcp-range=ens33,192.168.1.230,192.168.1.253,255.255.255.0,1h
dhcp-option=3,192.168.1.1
dhcp-option=6,192.168.1.1
dhcp-option=6,8.8.8.8
server=8.8.4.4
dhcp-option=28,10.0.0.255
dhcp-option=42,0.0.0.0

dhcp-boot=pxelinux.0,pxeserver,192.168.1.14

pxe-prompt="Press F8 for menu.", 2
pxe-service=x86PC, "Install Ubuntu 16.04 from network server 192.168.1.14", pxelinux
enable-tftp
tftp-root=/srv/tftp

Udskift følgende linjer i overensstemmelse med ovenstående konfigurationsfil.

  • interface Erstat med din egen maskinnetværksinterface.
  • domæne - Erstat det med dit domænenavn.
  • dhcp-range - Definer dit eget netværksinterval for DHCP til at tildele IP'er til dette netværkssegment, og hvor længe en IP-adresse til en klient skal tildeles.
  • dhcp-option = 3 - Din gateway-IP.
  • dhcp-option = 6 DNS-server-IP'er - flere DNS-IP'er kan defineres.
  • server - DNS-videresenders IP-adresse.
  • dhcp-option = 28 - Din netværksudsendelsesadresse.
  • dhcp-option = 42 - NTP-server - brug 0.0.0.0 Adresse er til selvreference.
  • dhcp-boot - pxe-startfilen og PXE-serverens IP-adresse (her pxelinux.0 og IP-adresse på den samme maskine).
  • pxe-prompt - Anvendelser kan trykke på F8-tasten for at åbne PXE-menuen eller vente 2 sekunder, før de automatisk skifter til PXE-menuen.
  • pxe = service - Brug x86PC til 32-bit/64-bit arkitekturer, og indtast en menubeskrivelsesprompt under strengcitater. Andre værdityper kan være: PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI og X86-64_EFI.
  • enable-tftp - Aktiverer den indbyggede TFTP-server.
  • tftp-root - systemstien til net-startfiler.

3. Når du er færdig med at redigere dnsmasq-konfigurationsfilen, skal du også oprette mappen til PXE netboot-filerne ved at udstede nedenstående kommando og genstarte dnsmasq-dæmonen for at anvende ændringer. Tjek dnsmasq-servicestatus for at se, om den er startet.

# mkdir /srv/tftp
# systemctl restart dnsmasq.service
# systemctl status dnsmasq.service

Trin 2: Installer TFTP Netboot Files

4. På det næste trin skal du tage den nyeste version af Ubuntu-serverens ISO-image til 64-bit arkitektur ved at udstede følgende kommando.

# wget http://releases.ubuntu.com/16.04/ubuntu-16.04.3-server-amd64.iso

5. Når Ubuntu-serverens ISO er blevet downloadet, skal du montere billedet i /mnt -mappen og liste det monterede biblioteksindhold ved at køre nedenstående kommandoer.

# mount -o loop ubuntu-16.04.3-desktop-amd64.iso /mnt/
# ls /mnt/

6. Kopier derefter netboot-filerne fra Ubuntu-monteret træ til tftp-systemstien ved at udstede nedenstående kommando. Angiv også tftp-systemstien for at se de kopierede filer.

# cp -rf /mnt/install/netboot/* /srv/tftp/
# ls /srv/tftp/

Trin 3: Forbered lokale installationskildefiler

7. De lokale netværksinstallationskilder til Ubuntu-server leveres via HTTP-protokol. Først skal du installere, starte og aktivere Apache-webserver ved at udstede følgende kommandoer.

# apt install apache2
# systemctl start apache2
# systemctl status apache2
# systemctl enable apache2

8. Kopier derefter indholdet af den monterede Ubuntu DVD til Apache-webserverens rodsti ved at udføre nedenstående kommandoer. Angiv indholdet af Apache-webrodstien for at kontrollere, om Ubuntu ISO-monteret træ er blevet kopieret fuldstændigt.

# cp -rf /mnt/* /var/www/html/
# ls /var/www/html/

9. Dernæst skal du åbne HTTP-port i firewall og navigere til maskinens IP-adresse via en browser ( http://192.168.1.14/ubuntu ) for at teste, om du kan nå kilder via HTTP-protokol.

# ufw allow http

Trin 4: Opsæt PXE-serverkonfigurationsfil

10. For at kunne dreje rootfs via PXE og lokale kilder, skal Ubuntu instrueres via en forudbestemt fil. Opret følgende lokale-sources.seed-fil i din webserver-dokumentsti med følgende indhold.

# nano /var/www/html/ubuntu/preseed/local-sources.seed

Tilføj følgende linje til filen local-sources.seed.

d-i live-installer/net-image string http://192.168.1.14/ubuntu/install/filesystem.squashfs

Her skal du sørge for at udskifte IP-adressen i overensstemmelse hermed. Det skal være IP-adressen, hvor webressourcer er placeret. I denne vejledning er webkilderne, PXE-serveren og TFTP-serveren hostet på det samme system. I et overfyldt netværk vil du måske køre PXE, TFTP og webtjenester på separate maskiner for at forbedre PXE-netværkshastigheden.

11. En PXE-server læser og udfører konfigurationsfiler placeret i pxelinux.cfg TFTP-rodmappe i denne rækkefølge: GUID-filer, MAC-filer og standardfil.

Kataloget pxelinux.cfg er allerede oprettet og befolket med de krævede PXE-konfigurationsfiler, fordi vi tidligere har kopieret netboot-filerne fra Ubuntu monteret ISO-billede.

For at tilføje ovenstående forudbestemte erklæringsfil til Ubuntu-installationsetiketten i PXE-konfigurationsfil skal du åbne følgende fil til redigering ved at udstede nedenstående kommando.

# nano /srv/tftp/ubuntu-installer/amd64/boot-screens/txt.cfg

I Ubuntu PXE txt.cfg konfigurationsfil erstattes følgende linje som illustreret i nedenstående uddrag.

append auto=true url=http://192.168.1.14/ubuntu/preseed/local-sources.seed vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet

Filen /srv/tftp/ubuntu-installer/amd64/boot-screens/txt.cfg skal have følgende globale indhold:

default install
label install
	menu label ^Install Ubuntu 16.04 with Local Sources
	menu default
	kernel ubuntu-installer/amd64/linux
	append auto=true url=http://192.168.1.14/ubuntu/preseed/local-sources.seed vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet 
label cli
	menu label ^Command-line install
	kernel ubuntu-installer/amd64/linux
	append tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet

12. Hvis du vil tilføje den forudbestemte url-sætning til Ubuntu Rescue-menuen, skal du åbne nedenstående fil og sørge for at opdatere indholdet som illustreret i nedenstående eksempel.

# nano /srv/tftp/ubuntu-installer/amd64/boot-screens/rqtxt.cfg

Tilføj følgekonfigurationen til filen rqtxt.cfg.

label rescue
	menu label ^Rescue mode
	kernel ubuntu-installer/amd64/linux
	append auto=true url=http://192.168.1.14/ubuntu/preseed/local-sources.seed vga=788 initrd=ubuntu-installer/amd64/initrd.gz rescue/enable=true --- quiet

Den vigtige linje, du skal opdatere, er url = http: //192.168.1.14/ubuntu/preseed/local-sources.seed, som specificerer URL-adressen, hvor den trykte fil er placeret i dit netværk.

13. Endelig skal du åbne filen Ubuntu pxe menu.cfg og kommentere de første tre linjer for at udvide PXE-opstartsskærmen som illustreret i nedenstående skærmbillede.

# nano /srv/tftp/ubuntu-installer/amd64/boot-screens/menu.cfg

Kommenter disse tre følgende linjer.

#menu hshift 13
#menu width 49
#menu margin 8

Trin 5: Åbn Firewall-porte i Ubuntu

14. Udfør netstat-kommando med root-privilegier for at identificere dnsmasq, tftp og web-åbne porte i lyttertilstand på din server som illustreret i nedenstående uddrag.

# netstat -tulpn

15. Når du har identificeret alle nødvendige porte, skal du udstede nedenstående kommandoer for at åbne porte i ufw firewall.

# ufw allow 53/tcp
# ufw allow 53/udp
# ufw allow 67/udp
# ufw allow 69/udp
# ufw allow 4011/udp

Trin 6: Installer Ubuntu med lokale kilder via PXE

16. For at installere Ubuntu-server via PXE og bruge de lokale netværksinstallationskilder skal du genstarte din maskinklient, instruere BIOS om at starte fra netværket og på den første PXE-menuskærm skal du vælge den første mulighed som vist i nedenstående billeder.

17. Installationsproceduren skal udføres som normalt. Når installationsprogrammet når installationsprogrammet til Ubuntu-arkivspejlet, skal du bruge pil op for at flytte til den første mulighed, der siger: Indtast oplysninger manuelt.

18. Tryk på [enter] -tasten for at opdatere denne indstilling, slet spejlstrengen og tilføj IP-adressen til webserverens spejlkilder, og tryk på enter for at fortsætte som vist i nedenstående billede.

http://192.168.1.14

19. På det næste skærmbillede skal du tilføje dit spejlarkivkatalog som vist nedenfor og trykke på enter-tasten for at fortsætte med installationsprocessen og normalt.

/ubuntu

20. Hvis du vil se oplysninger om, hvilke pakker der downloades fra dit lokale lokale spejl, skal du trykke på [CTRL + ALT + F2] -tasterne for at ændre maskinens virtuelle konsol og udstede følgende kommando.

# tail –f /var/log/syslog

21. Når installationen af Ubuntu-serveren er afsluttet, skal du logge ind på det nyinstallerede system og køre følgende kommando med rodrettigheder for at opdatere lagringspakkerne fra lokale netværkskilder til officielle Ubuntu-spejle.

Spejle skal ændres for at opdatere systemet ved hjælp af internetopbevaringsstederne.

$ sudo sed –i.bak ‘s/192.168.1.14/archive.ubuntu.com/g’ /etc/apt/sources.list

Sørg for, at du udskifter IP-adressen i henhold til IP-adressen på dine egne web-lokale kilder.

Det er alt! Du kan nu opdatere dit Ubuntu-serversystem og installere al nødvendig software. Installation af Ubuntu via PXE og et lokalt netværkskildespejl kan forbedre installationshastigheden og spare internetbåndbredde og omkostninger i tilfælde af installation af et stort antal servere på kort tid hos dig.