Pag-instalar sa Daghang Linux Distributions Gamit ang PXE Network Boot sa RHEL/CentOS 8


PXE Server – Preboot eXecution Environment kay usa ka standardized client-server architecture nga nagtudlo sa sistema sa kliyente sa pag-boot, pagdagan, o pag-install og daghang Linux operating system gamit ang PXE-capable nga network interface sa imong network infrastructure.

    • Pag-instalar sa CentOS 8 Minimal Server
    • Pag-instalar sa RHEL 8 Minimal Server
    • I-configure ang Static IP Address sa RHEL/CentOS 8

    Niini nga artikulo, mahibal-an nimo kung giunsa ang pag-install ug pag-configure sa usa ka PXE Network Boot Server sa CentOS/RHEL 8 nga adunay salamin nga lokal nga mga repositoryo sa pag-install nga gihatag sa CentOS 8 ug RHEL 8 ISO Images.

    Alang niining PXE Network Boot set up, among i-install ang mosunod nga mga pakete sa sistema:

    • DNSMASQ – usa ka gaan nga DNS forwarder nga naghatag ug DNS ug DHCP nga serbisyo nga adunay suporta para sa PXE ug TFTP server.
    • Syslinux – usa ka Linux boot loader nga naghatag ug boot loader para sa network booting.
    • TFTP Server – usa ka yano nga lockstep nga File Transfer Protocol nga nagmugna og bootable nga mga hulagway nga magamit aron ma-download pinaagi sa network.
    • VSFTPD Server – usa ka luwas nga file transfer protocol nga mag-host sa locally mounted mirrored DVD image – nga magsilbing opisyal nga RHEL/CentOS 8 mirror installation repository gikan diin ang installer mokuha sa iyang gikinahanglan nga mga package.

    Lakang 1: I-install ug I-configure ang DNSMASQ Server

    1. Importante nga pahinumdoman ka nga ang usa sa imong mga interface sa network kinahanglang i-configure gamit ang static IP address gikan sa samang network IP range nga naghatag ug serbisyo sa PXE.

    Kung na-configure na nimo ang usa ka static nga IP address, i-update ang imong mga pakete sa software sa sistema ug i-install ang DNSMASQ daemon.

    # dnf install dnsmasq
    

    2. Sa higayon nga ma-install na ang DNSMASQ, imong makita ang default configuration file niini ubos sa /etc/dnsmasq.conf directory, nga mao ang self-explanatory apan mas lisod i-configure, tungod sa taas nga komento niini nga mga pagpasabot.

    Una, siguruha nga magkuha ug backup niini nga file kung kinahanglan nimo nga susihon kini sa ulahi ug dayon, paghimo usa ka bag-ong file sa pag-configure gamit ang imong paborito nga editor sama sa gipakita.

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

    3. Karon, kopyaha ug idikit ang mosunod nga mga configuration sa /etc/dnsmasq.conf file ug usba ang configuration parameters sumala sa imong network settings.

    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
    

    Ang mga pahayag sa pagsumpo nga kinahanglan nimong usbon gisunod:

    • interface – Ang mga interface sa network sa server kinahanglang maminaw ug mohatag og mga serbisyo.
    • bind-interfaces – I-uncomment ang pagbugkos sa interface ngadto sa gihatag nga network card.
    • domain – Ilisan kini sa imong domain name.
    • dhcp-range – Usba kini sa imong network IP range.
    • dhcp-boot – Ilisan kini sa imong network interface IP Address.
    • dhcp-option=3,192.168.1.1 – Ilisan kini sa imong network Gateway.
    • dhcp-option=6,92.168.1.1 – Ilisan kini sa imong DNS Server IP.
    • server=8.8.4.4 – Idugang ang imong DNS forwarders IPs Addresses.
    • dhcp-option=28,10.0.0.255 – Ilisan kini sa imong network broadcast IP address nga opsyonal.
    • dhcp-option=42,0.0.0.0 -Idugang ang imong network time servers (0.0.0.0 Address kay para sa self-reference).
    • pxe-prompt – Ipabilin kini isip default.
    • pxe=service – Gamita ang x86PC para sa 32-bit/64-bit nga mga arkitektura ug idugang ang usa ka aghat sa paghulagway sa menu ubos sa mga string quotes.
    • enable-tftp – Makapahimo sa built-in nga TFTP server.
    • tftp-root – Idugang ang lokasyon sa network booting files /var/lib/tftpboot.

    Alang sa uban pang mga advanced nga kapilian bahin sa mga file sa pag-configure, palihug basaha ang manwal sa dnsmasq.

    Lakang 2: I-install ang SYSLINUX Bootloaders

    4. Human mabuhat ang main configuration sa DNSMASQ, i-install ang Syslinx PXE bootloader package gamit ang mosunod nga command.

    # dnf install syslinux
    

    5. Ang Syslinx PXE bootloaders gi-install ubos sa /usr/share/syslinux, mahimo nimong kumpirmahon pinaagi sa pagpadagan sa ls command sama sa gipakita.

    # ls /usr/share/syslinux
    

    Lakang 3: I-install ang TFTP-Server ug Kopyaha kini sa SYSLINUX Bootloaders

    6. Karon, i-install ang TFTP-Server ug kopyaha ang tanang Syslinux bootloader gikan sa /usr/share/syslinux/ ngadto sa /var/lib/tftpboot ingon sa gipakita.

    # dnf install tftp-server
    # cp -r /usr/share/syslinux/* /var/lib/tftpboot
    

    Lakang 4: I-setup ang PXE Server Configuration File

    7. Sa kasagaran, ang PXE Server nagbasa sa iyang configuration gikan sa usa ka set sa piho nga mga file nga makita sa pxelinux.cfg, nga kinahanglang makita sa direktoryo nga gihulagway sa tftp-root setting gikan sa DNSMASQ configuration file sa ibabaw .

    Una, paghimo ug pxelinux.cfg nga direktoryo ug paghimo ug default file pinaagi sa pag-isyu sa mosunod nga mga sugo.

    # mkdir /var/lib/tftpboot/pxelinux.cfg
    # touch /var/lib/tftpboot/pxelinux.cfg/default
    

    8. Karon ablihi ug i-edit ang PXE default configuration file nga adunay husto nga Linux distribution installation options. Usab, siguruha nga hinumdoman nga ang mga agianan nga gibutang sa kini nga file kinahanglan nga may kalabotan sa /var/lib/tftpboot direktoryo.

    # nano /var/lib/tftpboot/pxelinux.cfg/default
    

    Ang mosunud usa ka pananglitan sa file sa pag-configure nga mahimo nimo kini gamiton, apan siguruha nga usbon ang mga imahe sa pag-install, mga protocol ug mga IP aron mapakita ang imong mga repositoryo sa gigikanan sa pag-install sa network ug mga lokasyon sumala niana.

    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
    

    Sa ibabaw nga configuration, imong mamatikdan nga ang CentOS 8 boot nga mga imahe (kernel ug initrd) nagpuyo sa usa ka centos7 nga direktoryo nga may kalabotan sa /var/lib/tftpboot (ie /var/lib/tftpboot /centos7) ug ang installer repository mahimong ma-access pinaagi sa paggamit sa FTP protocol sa 192.168.1.2/pub (IP address sa PXE server).

    Usab, ang menu label 2 naghulagway sa opisyal nga CentOS 8 installation sources mirror repository (internet connection is must on the client system) ug menu label 3 naghulagway nga ang client installation kinahanglan nga buhaton. pinaagi sa usa ka hilit nga VNC (dinhi ilisan ang VNC password sa usa ka lig-on nga password).

    Importante: Sama sa imong nakita sa ibabaw nga pag-configure, among gigamit ang CentOS 8 nga imahe alang sa mga katuyoan sa pagpakita, apan mahimo usab nimo gamiton ang RHEL 8 nga mga imahe.

    Lakang 5: Idugang ang CentOS 8 Boot Images sa PXE Server

    9. Aron makadugang sa mga imahe sa CentOS 8 sa PXE Server, kinahanglan nimo nga wget command ug i-mount kini.

    # 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. Sa higayon nga ma-download na nimo ang CentOS 8, kinahanglang maghimo ka og centos8 directory ug kopyahon ang bootable kernel ug initrd nga mga hulagway.

    # mkdir /var/lib/tftpboot/centos8
    # cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/centos8
    # cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/centos8
    

    Ang rason sa likod sa pagbaton niini nga paagi mao nga sa ulahi mahimo ka nga adunay bulag nga mga direktoryo alang sa matag bag-ong mga distribusyon sa Linux ubos sa /var/lib/tftpboot nga dili makasamok sa tibuok nga istruktura sa direktoryo.

    Lakang 6: Paghimo CentOS 8 Local Mirror Installation Source

    11. Adunay lainlaing mga protocol (HTTP, HTTPS, o NFS) nga magamit alang sa pag-set up sa CentOS 8 nga lokal nga gigikanan sa mga salamin sa pag-install, apan gipili nako ang FTP protocol tungod kay kini dali nga ma-set up gamit ang vsftpd server.

    Atong i-install ang Vsftpd server ug kopyaha ang tanang CentOS 8 DVD content ngadto sa FTP directory /var/ftp/pub ingon sa gipakita.

    # dnf install vsftpd
    # cp -r /mnt/*  /var/ftp/pub/ 
    # chmod -R 755 /var/ftp/pub
    

    12. Karon nga ang tanang PXE server configuration nahuman na, mahimo nimong sugdan, mahimo, ug pamatud-an ang kahimtang sa DNSMASQ ug VSFTPD servers.

    # systemctl start dnsmasq
    # systemctl status dnsmasq
    # systemctl start vsftpd
    # systemctl status vsftpd
    # systemctl enable dnsmasq
    # systemctl enable vsftpd
    

    13. Sunod, kinahanglan nimo nga ablihan ang mga pantalan sa imong firewall aron ang mga sistema sa kliyente makaabot ug mag-boot gikan sa PXE server.

    # 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. Aron mapamatud-an ang lokasyon sa network sa FTP Installation Source, ablihi ang imong browser ug i-type ang PXE Server IP address nga adunay FTP protocol nga gisundan sa /pub lokasyon sa network.

    ftp://192.168.1.2/pub
    

    Lakang 7: I-configure ang mga Kliyente sa Boot gikan sa Network

    15. Karon i-configure ang mga sistema sa kliyente aron ma-boot ug i-install ang CentOS 8 sa ilang mga sistema pinaagi sa pag-configure sa Network Boot isip prime boot device gikan sa BIOS Menu.

    Human sa system boots, makadawat ka og PXE prompt, diin kinahanglan nimo nga pinduton ang F8 key aron makasulod sa presentasyon ug dayon pindota ang Enter key aron mopadayon sa PXE menu.

    Kana ang tanan alang sa pag-set up sa usa ka gamay nga PXE Server sa CentOS/RHEL 8.