Fi sii Awọn pinpin Lainos lọpọlọpọ Lilo Pọtini Nẹtiwọọki PXE lori RHEL/CentOS 8


Olupin PXE - Ayika eXecution Preboot jẹ faaji ti a ṣe deede alabara-olupin ti o nkọ eto alabara kan lati bata, ṣiṣe, tabi fi ọpọlọpọ awọn ọna ṣiṣe Linux ṣiṣẹ nipa lilo wiwo Nẹtiwọọki ti o ni agbara PXE lori awọn amayederun nẹtiwọọki rẹ.

    • Fifi sori ẹrọ ti CentOS 8 Server Pọọku
    • Fifi sori ẹrọ ti RHEL 8 olupin Pọọku
    • Atunto Adirẹsi IP Aimi ni RHEL/CentOS 8

    Ninu àpilẹkọ yii, iwọ yoo kọ bi o ṣe le fi sori ẹrọ ati tunto Server Boot Nẹtiwọọki Nẹtiwọọki lori CentOS/RHEL 8 pẹlu awọn ibi ipamọ fifi sori agbegbe ti o ni digi ti a pese nipasẹ CentOS 8 ati RHEL 8 ISO Images.

    Fun Bọtini Nẹtiwọọki PXE yii ti ṣeto, a yoo fi awọn idii atẹle sori ẹrọ sori ẹrọ:

    • DNSMASQ - onitẹsiwaju DNS fẹẹrẹ ti o pese DNS ati awọn iṣẹ DHCP pẹlu atilẹyin fun PXE ati olupin TFTP kan.
    • Syslinux - Olupilẹṣẹ bata Linux kan ti o pese awọn olutaja bata fun gbigbe nẹtiwọki.
    • Olupin TFTP - Ilana titiipa Gbigbe Faili Faili ti o ṣẹda awọn aworan bootable ti o wa lati gba lati ayelujara nipasẹ nẹtiwọọki kan.
    • Server VSFTPD - ilana gbigbe faili gbigbe ti o ni aabo ti yoo gbalejo aworan DVD didan ti a gbe soke ni agbegbe - eyiti yoo ṣe bi ibi ipamọ fifi sori ẹrọ RHEL/CentOS 8 osise lati ibiti oluṣeto yoo gbe awọn idii ti o nilo jade.

    Igbesẹ 1: Fi sori ẹrọ ati Tunto Server Server DNS

    1. O ṣe pataki lati leti fun ọ pe ọkan ninu awọn atọkun nẹtiwọọki rẹ gbọdọ wa ni tunto pẹlu adiresi IP aimi kan lati ibiti IP kanna nẹtiwọọki ti o pese awọn iṣẹ PXE.

    Lọgan ti o ba ti tunto adiresi IP aimi kan, ṣe imudojuiwọn awọn idii sọfitiwia eto rẹ ki o fi daemon DNSMASQ sii.

    # dnf install dnsmasq
    

    2. Lọgan ti a fi DNSMASQ sori ẹrọ, iwọ yoo wa faili iṣeto aiyipada rẹ labẹ itọsọna /etc/dnsmasq.conf , eyiti o jẹ alaye ara ẹni ṣugbọn o nira sii lati tunto, nitori awọn alaye asọye ti o ga julọ.

    Ni akọkọ, rii daju lati mu afẹyinti ti faili yii ni ọran ti o le nilo rẹ lati ṣe atunyẹwo nigbamii ati lẹhinna, ṣẹda faili atunto tuntun nipa lilo olootu ayanfẹ rẹ bi o ti han.

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

    3. Bayi, daakọ ati lẹẹ mọ awọn atunto wọnyi lori /etc/dnsmasq.conf faili ki o yi awọn ipilẹ iṣeto pada gẹgẹbi awọn eto nẹtiwọọki rẹ.

    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
    

    Awọn alaye iṣeto ti o nilo lati yipada ni atẹle:

    • ni wiwo - Awọn atọkun nẹtiwọọki ti olupin yẹ ki o tẹtisi ati pese awọn iṣẹ.
    • awọn atọkun abuda - Ifiweranṣẹ lati sopọ ni wiwo si kaadi nẹtiwọọki ti a fifun.
    • ibugbe - Ropo rẹ pẹlu orukọ ibugbe rẹ.
    • dhcp-range - Yi i pada pẹlu ibiti IP nẹtiwọọki rẹ wa.
    • dhcp-boot - Rọpo rẹ pẹlu wiwo nẹtiwọọki rẹ Adirẹsi IP.
    • dhcp-option = 3,192.168.1.1 - Rọpo rẹ pẹlu Ẹnu-ọna nẹtiwọki rẹ.
    • dhcp-option = 6,92.168.1.1 - Rọpo rẹ pẹlu olupin olupin DNS rẹ.
    • olupin = 8.8.4.4 - Ṣafikun awọn adirẹsi IP awọn adirẹsi IP rẹ.
    • dhcp-option = 28,10.0.0.255 - Rọpo rẹ pẹlu adirẹsi IP igbohunsafefe nẹtiwọọki ni yiyan.
    • dhcp-option = 42,0.0.0.0 -Fikun awọn olupin akoko nẹtiwọọki rẹ (Adirẹsi 0.0.0.0 wa fun itọkasi ara ẹni).
    • pxe-tọ - Jeki bi aiyipada.
    • pxe = iṣẹ - Lo x86PC fun awọn ayaworan 32-bit/64-bit ati ṣafikun apejuwe akojọ aṣayan labẹ awọn agbasọ ọrọ okun.
    • enable-tftp - Jeki olupin TFTP ti a ṣe sinu rẹ.
    • tftp-root - Ṣafikun awọn faili fifo nẹtiwọọki ipo/var/lib/tftpboot.

    Fun awọn aṣayan to ti ni ilọsiwaju miiran nipa awọn faili iṣeto ni ominira lati ka itọsọna dnsmasq.

    Igbesẹ 2: Fi sori ẹrọ SYSLINUX Bootloaders

    4. Lẹhin ṣiṣe iṣeto akọkọ DNSMASQ, fi sori ẹrọ package Syslinx PXE bootloader nipa lilo pipaṣẹ atẹle.

    # dnf install syslinux
    

    5. Awọn fifi sori bootysers Syslinx PXE ti fi sii labẹ /usr/share/syslinux , o le jẹrisi rẹ nipa ṣiṣe pipaṣẹ ls bi o ti han.

    # ls /usr/share/syslinux
    

    Igbesẹ 3: Fi TFTP-Server sori ẹrọ Ati Daakọ rẹ pẹlu SYSLINUX Bootloaders

    6. Nisisiyi, fi sori ẹrọ TFTP-Server ki o daakọ gbogbo awọn ikojọpọ Syslinux lati /usr/share/syslinux/ si /var/lib/tftpboot bi o ti han.

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

    Igbesẹ 4: Ṣiṣeto Faili iṣeto ni olupin PXE

    7. Ni aiyipada, PXE Server ka iṣeto rẹ lati ipilẹ awọn faili kan pato ti a rii ni pxelinux.cfg , eyiti o gbọdọ rii ninu itọsọna ti a ṣalaye ninu eto tftp-root lati faili iṣeto DNSMASQ loke .

    Ni akọkọ, ṣẹda itọsọna pxelinux.cfg ki o ṣẹda faili aiyipada nipa fifun awọn ofin wọnyi.

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

    8. Bayi ṣii ati satunkọ PXE aiyipada faili iṣeto pẹlu awọn aṣayan fifi sori ẹrọ pinpin Linux to tọ. Pẹlupẹlu, rii daju lati ranti pe awọn ọna ti a ṣeto sinu faili yii gbọdọ jẹ ibatan si itọsọna /var/lib/tftpboot .

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

    Atẹle yii jẹ faili iṣeto iṣeto apẹẹrẹ ti o le lo, ṣugbọn rii daju lati yi awọn aworan fifi sori ẹrọ, awọn ilana ati IPs lati ṣe afihan awọn ibi orisun orisun fifi sori ẹrọ ati awọn ipo ni ibamu.

    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
    

    Ninu iṣeto ti o wa loke, o le ṣe akiyesi pe awọn aworan bata CentOS 8 (ekuro ati initrd) ngbe ni itọsọna centos7 ibatan si /var/lib/tftpboot (ie /var/lib/tftpboot/centos7 ) ati awọn ibi ifipamọ sori ẹrọ le ti wọle nipasẹ lilo ilana FTP lori 192.168.1.2/pub (Adirẹsi IP ti olupin PXE).

    Pẹlupẹlu, aami akojọ aṣayan 2 ṣapejuwe osise awọn orisun fifi sori ẹrọ CentOS 8 awọn ibi ipamọ digi (asopọ intanẹẹti gbọdọ lori eto alabara) ati aami atokọ 3 ṣe apejuwe pe fifi sori alabara yẹ ki o ṣe nipasẹ VNC latọna jijin (nibi rọpo ọrọ igbaniwọle VNC pẹlu ọrọ igbaniwọle to lagbara).

    Pataki: Bi o ṣe rii ninu iṣeto loke, a ti lo aworan CentOS 8 fun awọn idi ifihan, ṣugbọn o tun le lo awọn aworan RHEL 8.

    Igbesẹ 5: Ṣafikun CentOS 8 Boot Images si PXE Server

    9. Lati ṣafikun awọn aworan CentOS 8 si PXE Server, o nilo lati wget aṣẹ ki o gbe e sii.

    # 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. Lọgan ti o ba ti gba CentOS 8 wọle, o nilo lati ṣẹda itọsọna centos7 ati daakọ ekuro bootable ati awọn aworan initrd.

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

    Idi ti o wa lẹhin nini ọna yii ni pe nigbamii o le ni awọn ilana lọtọ fun awọn pinpin Lainos tuntun kọọkan labẹ /var/lib/tftpboot laisi idotin gbogbo ilana itọsọna.

    Igbesẹ 6: Ṣẹda Orisun fifi sori Digi Mirror CentOS 8

    11. Orisirisi awọn ilana (HTTP, HTTPS, tabi NFS) wa ti o wa fun siseto awọn digi orisun fifi sori agbegbe CentOS 8, ṣugbọn Mo ti yan ilana FTP nitori pe o rọrun lati ṣeto nipa lilo olupin vsftpd.

    Jẹ ki a fi sori ẹrọ olupin Vsftpd ki o daakọ gbogbo akoonu DVD DVD CentOS 8 si itọsọna FTP /var/ftp/pub bi o ti han.

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

    12. Bayi pe gbogbo iṣeto olupin PXE ti pari, o le bẹrẹ, mu ṣiṣẹ, ati ṣayẹwo ipo awọn olupin DNSMASQ ati VSFTPD.

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

    13. Nigbamii ti, o nilo lati ṣii awọn ibudo lori ogiri ogiri rẹ ni ibere fun awọn eto alabara lati de ati bata lati ọdọ olupin PXE.

    # 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. Lati jẹrisi ipo nẹtiwọọki Orisun fifi sori FTP, ṣii ẹrọ aṣawakiri rẹ ki o tẹ adirẹsi IP PXE Server IP pẹlu ilana FTP ti atẹle nipasẹ /pobu ipo nẹtiwọọki.

    ftp://192.168.1.2/pub
    

    Igbesẹ 7: Tunto Awọn alabara lati Bata lati Nẹtiwọọki

    15. Nisisiyi tunto awọn eto alabara lati bata ati fi CentOS 8 sori ẹrọ lori awọn eto wọn nipa tito leto Nẹtiwọọki Nẹtiwọ bi ẹrọ ipilẹṣẹ akọkọ lati Akojọ aṣyn BIOS.

    Lẹhin awọn bata orunkun eto, iwọ yoo gba iyara PXE kan, nibi ti o nilo lati tẹ bọtini F8 lati tẹ igbejade naa lẹhinna lu bọtini Tẹ lati tẹsiwaju siwaju si akojọ aṣayan PXE.

    Iyẹn ni gbogbo fun siseto PXE Server ti o kere julọ lori CentOS/RHEL 8.