Installéiere Multiple Linux Distributiounen Mat PXE Network Boot op RHEL/CentOS 8
PXE Server - Preboot eXecution Environment ass eng standardiséierte Client-Server Architektur déi e Client System instruéiert fir verschidde Linux Betribssystemer ze booten, ze lafen oder z'installéieren mat engem PXE-fähig Netzwierk Interface op Ärer Netzwierkinfrastruktur.
-
- Installatioun vum CentOS 8 Minimal Server
- Installatioun vum RHEL 8 Minimal Server
- Statesch IP Adress konfiguréieren an RHEL/CentOS 8
An dësem Artikel léiert Dir wéi Dir e PXE Network Boot Server op CentOS/RHEL 8 installéiert an konfiguréiert mat gespigelten lokalen Installatiounsrepositories, déi vun CentOS 8 an RHEL 8 ISO Biller geliwwert ginn.
Fir dësen PXE Network Boot Setup installéiere mir folgend Packagen um System:
- DNSMASQ - e liichte DNS Forwarder deen en DNS an DHCP Servicer mat Ënnerstëtzung fir PXE an engem TFTP Server ubitt.
- Syslinux - e Linux Bootloader deen Bootloader fir Netzwierkbooten ubitt.
- TFTP-Server - en einfache Lockstep-Dateitransferprotokoll deen bootbar Biller erstellt, déi verfügbar sinn fir iwwer en Netzwierk erofzelueden.
- VSFFTPD Server - e séchere Dateietransferprotokoll deen dat lokalt montéiert gespigelten DVD-Bild hält - deen als offiziellen RHEL/CentOS 8 Spigelinstallatiounsrepository handelt, vu wou den Installateur seng erfuerderlech Packagen eraushëlt.
Schrëtt 1: Installéieren a konfiguréieren DNSMASQ Server
1. Et ass wichteg ze drun erënneren, datt ee vun Äre Reseau Schnëttplazen muss mat enger statesch IP Adress vun der selwechter Reseau IP Gamme konfiguréiert ginn, datt PXE Servicer gëtt.
Wann Dir eng statesch IP Adress konfiguréiert hutt, update Är System Software Packagen an installéiert den DNSMASQ Daemon.
# dnf install dnsmasq
2. Wann DNSMASQ installéiert ass, fannt Dir seng Standardkonfiguratiounsdatei ënner
/etc/dnsmasq.conf
Verzeichnis, wat selbstverständlech ass, awer méi schwéier ze konfiguréieren, duerch seng héich kommentéiert Erklärungen.Als éischt, gitt sécher e Backup vun dëser Datei ze huelen am Fall wou Dir se braucht fir spéider ze iwwerpréiwen an dann eng nei Konfiguratiounsdatei erstellen mat Ärem Liiblingseditor wéi gewisen.
# mv /etc/dnsmasq.conf /etc/dnsmasq.conf.backup # nano /etc/dnsmasq.conf
3. Elo, kopéiert a paste déi folgend Konfiguratiounen op
/etc/dnsmasq.conf
Datei an ännert d'Konfiguratiounsparameter no Ären Netzwierkastellungen.interface=enp0s3,lo #bind-interfaces domain=tecmint # DHCP range-leases dhcp-range= enp0s3,192.168.1.3,192.168.1.253,255.255.255.0,1h # PXE dhcp-boot=pxelinux.0,pxeserver,192.168.1.2 # Gateway dhcp-option=3,192.168.1.1 # DNS dhcp-option=6,92.168.1.1, 8.8.8.8 server=8.8.4.4 # Broadcast Address dhcp-option=28,10.0.0.255 # NTP Server dhcp-option=42,0.0.0.0 pxe-prompt="Press F8 for menu.", 60 pxe-service=x86PC, "Install CentOS 8 from network server 192.168.1.2", pxelinux enable-tftp tftp-root=/var/lib/tftpboot
D'Konfiguratiounsaussoen, déi Dir musst änneren, ginn gefollegt:
- Interface - En Netzwierk Interface vum Server soll nolauschteren a Servicer ubidden.
- Bind-Interfaces - Unkommentéieren fir den Interface un eng bestëmmten Netzwierkkaart ze binden.
- Domain - Ersetzt et mat Ärem Domain Numm.
- dhcp-range - Ännert et mat Ärem Netzwierk IP-Beräich.
- dhcp-boot - Ersetzt et mat Ärer Netzwierk-Interface IP Adress.
- dhcp-option=3,192.168.1.1 - Ersetzt se mat Ärem Netzwierk Gateway.
- dhcp-option=6,92.168.1.1 - Ersetzt se mat Ärem DNS Server IP.
- Server=8.8.4.4 - Füügt Är DNS Forwarder IPs Adressen un.
- dhcp-option=28,10.0.0.255 - Ersetzen se optional mat Ärer Netzwierk Sendung IP Adress.
- dhcp-option=42,0.0.0.0 -Füügt Är Netzwierkzäitserver (0.0.0.0 Adress ass fir Selbstreferenz).
- pxe-Prompt - Halt et als Standard.
- pxe=service - Benotzt x86PC fir 32-Bit/64-Bit Architekturen a füügt e Menübeschreiwungsprompt ënner String Zitater.
- enable-tftp - Aktivéiert den agebauten TFTP Server.
- tftp-root - Füügt Netzwierk Bootdateien Location /var/lib/tftpboot.
Fir aner fortgeschratt Optiounen betreffend Konfiguratiounsdateien fille sech gratis dnsmasq Handbuch ze liesen.
Schrëtt 2: Installéiert SYSLINUX Bootloaders
4. No der DNSMASQ Haaptkonfiguratioun gemaach, installéiert de Syslinx PXE Bootloader Package mat dem folgenden Kommando.
# dnf install syslinux
5. D'Syslinx PXE Bootloader ginn ënner
/usr/share/syslinux
installéiert, Dir kënnt et bestätegen andeems Dir de ls Kommando ausféiert wéi se gewisen.# ls /usr/share/syslinux
Schrëtt 3: Installéiert TFTP-Server a kopéiert et mat SYSLINUX Bootloaders
6. Installéiert elo TFTP-Server a kopéiert all Syslinux Bootloader vun
/usr/share/syslinux/
op/var/lib/tftpboot
wéi gewisen.# dnf install tftp-server # cp -r /usr/share/syslinux/* /var/lib/tftpboot
Schrëtt 4: Setup PXE Server Configuratiounsdatei
7. Par défaut liest de PXE Server seng Konfiguratioun aus enger Rei vu spezifesche Dateien, déi an
pxelinux.cfg
fonnt goufen, déi am Verzeechnes fonnt ginn, deen an der tftp-root-Astellung vun der DNSMASQ Konfiguratiounsdatei hei uewen beschriwwe gëtt. .Als éischt erstellt e
pxelinux.cfg
Verzeichnis an erstellt engStandard
Datei andeems Dir déi folgend Kommandoen ausgëtt.# mkdir /var/lib/tftpboot/pxelinux.cfg # touch /var/lib/tftpboot/pxelinux.cfg/default
8. Elo oppen an änneren PXE
Standard
Konfiguratiounsdatei mat korrekt Linux Verdeelungsinstallatiounsoptiounen. Vergewëssert Iech och drun ze erënneren datt d'Weeër, déi an dëser Datei gesat ginn, musse relativ zum/var/lib/tftpboot
Verzeechnes sinn.# nano /var/lib/tftpboot/pxelinux.cfg/default
Déi folgend ass eng Beispill Konfiguratiounsdatei déi Dir benotze kënnt, awer vergewëssert Iech d'Installatiounsbiller, Protokoller an IPs z'änneren fir Är Netzwierkinstallatiounsquell Repositories a Plazen deementspriechend ze reflektéieren.
default menu.c32 prompt 0 timeout 300 ONTIMEOUT local menu title ########## PXE Boot Menu ########## label 1 menu label ^1) Install CentOS 8 x64 with Local Repo kernel centos8/vmlinuz append initrd=centos7/initrd.img method=ftp://192.168.1.2/pub devfs=nomount label 2 menu label ^2) Install CentOS 8 x64 with http://mirror.centos.org Repo kernel centos8/vmlinuz append initrd=centos8/initrd.img method=http://mirror.centos.org/centos/8/BaseOS/x86_64/os/ devfs=nomount ip=dhcp label 3 menu label ^3) Install CentOS 8 x64 with Local Repo using VNC kernel centos8/vmlinuz append initrd=centos8/initrd.img method=ftp://192.168.1.2/pub devfs=nomount inst.vnc inst.vncpassword=password label 4 menu label ^4) Boot from local drive
An der uewe genannter Konfiguratioun kënnt Dir bemierken datt d'CentOS 8 Bootbiller (Kernel an initrd) an engem centos7 Verzeichnis relativ zu
/var/lib/tftpboot
wunnen (dh/var/lib/tftpboot) /centos7
) an d'Installateur Repositories kënnen zougänglech sinn andeems Dir de FTP Protokoll op192.168.1.2/pub
(IP Adress vum PXE Server) benotzt.Och de
Menülabel 2
beschreift offiziell CentOS 8 Installatiounsquellen Spigelrepositories (Internetverbindung ass muss um Client System) anMenü Label 3
beschreift datt d'Clientinstallatioun soll gemaach ginn iwwer e Remote VNC (hei ersetzt VNC Passwuert mat engem staarke Passwuert).Wichteg: Wéi Dir an der uewe genannter Konfiguratioun gesitt, hu mir CentOS 8 Bild fir Demonstratiounszwecker benotzt, awer Dir kënnt och RHEL 8 Biller benotzen.
Schrëtt 5: Füügt CentOS 8 Boot Biller op PXE Server
9. Fir CentOS 8 Biller op PXE Server ze addéieren, musst Dir wget Kommando a montéieren.
# wget http://centos.mirrors.estointernet.in/8.2.2004/isos/x86_64/CentOS-8.2.2004-x86_64-dvd1.iso # mount -o loop CentOS-8.2.2004-x86_64-dvd1.iso /mnt
10. Wann Dir CentOS 8 erofgelueden hutt, musst Dir e
centos8
Verzeechnes erstellen a bootbar Kernel an initrd Biller kopéieren.# mkdir /var/lib/tftpboot/centos8 # cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/centos8 # cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/centos8
De Grond hannert dëser Approche ass datt Dir spéider separat Verzeichnisser fir all nei Linux Verdeelungen ënner
/var/lib/tftpboot
hutt ouni déi ganz Verzeechnesstruktur ze messen.Schrëtt 6: Erstellt CentOS 8 Lokal Spigel Installatiounsquell
11. Et gi verschidde Protokoller (HTTP, HTTPS oder NFS) déi verfügbar sinn fir CentOS 8 lokal Installatiounsquelle Spigelen opzestellen, awer ech hunn de FTP-Protokoll gewielt well et einfach ass mat vsftpd-Server opzestellen.
Loosst eis Vsftpd Server installéieren a kopéieren all den CentOS 8 DVD Inhalter an FTP Verzeechnes
/var/ftp/pub
wéi gewisen.# dnf install vsftpd # cp -r /mnt/* /var/ftp/pub/ # chmod -R 755 /var/ftp/pub
12. Elo datt all d'PXE Server Konfiguratioun fäerdeg ass, kënnt Dir de Status vun DNSMASQ a VSFTPD Server starten, aktivéieren a verifizéieren.
# systemctl start dnsmasq # systemctl status dnsmasq # systemctl start vsftpd # systemctl status vsftpd # systemctl enable dnsmasq # systemctl enable vsftpd
13. Als nächst musst Dir Ports op Ärer Firewall opmaachen, fir datt Client Systemer vum PXE Server erreechen an booten.
# firewall-cmd --add-service=ftp --permanent ## Port 21 # firewall-cmd --add-service=dns --permanent ## Port 53 # firewall-cmd --add-service=dhcp --permanent ## Port 67 # firewall-cmd --add-port=69/udp --permanent ## Port for TFTP # firewall-cmd --add-port=4011/udp --permanent ## Port for ProxyDHCP # firewall-cmd --reload ## Apply rules
14. Fir d'FTP Installatioun Quell Reseau Location z'iwwerpréiwen, oppen Äre Browser an Typ der PXE Server IP Adress mat der FTP Protokoll gefollegt vun
/pub
Netz Location.ftp://192.168.1.2/pub
Schrëtt 7: Clienten konfiguréieren fir aus dem Netzwierk ze booten
15. Elo konfiguréieren Client Systemer fir ze booten an z'installéieren CentOS 8 op hire Systemer andeems Dir Network Boot als Prime Boot Apparat vum BIOS Menu konfiguréiert.
No Systembooten, kritt Dir eng PXE-Prompt, wou Dir musst drécken
F8
Schlëssel fir d'Presentatioun anzeginn an dann dréckt Enter Schlëssel fir weider an de PXE Menü ze goen.Dat ass alles fir e minimale PXE Server op CentOS/RHEL 8 opzestellen.