GNU/Linux >> Znalost Linux >  >> Cent OS

Nakonfigurujte instalační server PXE (Network Boot) na CentOS 7.x

Server PXE (Preboot eXecution Environment) umožňuje bezobslužnou nebo automatizovanou instalaci operačního systému přes síť. Hlavní výhodou pxe je to, že ke spouštění operačního systému (operačního systému) nepotřebujeme žádnou zaváděcí jednotku a nepotřebujeme vypalovat žádný soubor ISO do zařízení DVD nebo USB.

Jakmile je PXE server nakonfigurován, můžeme instalovat stovky systémů současně přes síť. Protože to funguje na architektuře klient-server, chcete-li získat instalaci OS na klientech, nabootujte klienty pomocí možnosti PXE.

V tomto článku nastavím PXE Server na CentOS 7.xa poté se pokusím nainstalovat OS na klienta pomocí pxe boot.

Níže jsou podrobnosti o mém nastavení:

  • IP serveru =172.168.1.11
  • Název hostitele =pxe.example.com
  • OS =CentOS 7.x
  • SELinux =povoleno
  • Firewall =povoleno

Krok:1 Nainstalujte požadované balíčky pro nastavení PXE

K instalaci a konfiguraci serveru pxe na centos 7.x potřebujeme následující balíčky „dhcp, tftp-server, ftp server(vsftpd), xinted“. Otevřete terminál a proveďte příkaz :

[[email protected] ~]# yum install dhcp tftp tftp-server syslinux vsftpd xinetd

Krok:2 Konfigurace serveru DHCP pro PXE

Když nainstalujeme balíček dhcp, vytvoří se vzorový konfigurační soubor serveru dhcp na „/usr/share/doc/dhcp*/dhcpd.conf.example “, ačkoli konfigurační soubor dhcp je na ‘/etc/dhcp/dhcpd.conf '.

Zkopírujte následující řádky do souboru ‚/etc/dhcp/dhcpd.conf‘, nahraďte podsíť IP a další podrobnosti podle vašeho prostředí.

[[email protected] ~]# vi /etc/dhcp/dhcpd.conf

# DHCP Server Configuration file.

ddns-update-style interim;
ignore client-updates;
authoritative;
allow booting;
allow bootp;
allow unknown-clients;

# internal subnet for my DHCP Server
subnet 172.168.1.0 netmask 255.255.255.0 {
range 172.168.1.21 172.168.1.151;
option domain-name-servers 172.168.1.11;
option domain-name "pxe.example.com";
option routers 172.168.1.11;
option broadcast-address 172.168.1.255;
default-lease-time 600;
max-lease-time 7200;

# IP of PXE Server
next-server 172.168.1.11;
filename "pxelinux.0";
}

Krok:3 Úprava a konfigurace serveru tftp (/etc/xinetd.d/tftp)

TFTP (Trvial File Transfer Protocol) se používá k přenosu souborů z datového serveru na jeho klienty bez jakéhokoli druhu autentizace. V případě nastavení PXE serveru se pro bootstrap použije tftp. Chcete-li nakonfigurovat server tftp, upravte jeho konfigurační soubor ‘ /etc/xinetd.d/tftp ’, změňte parametr ‚disable =yes‘ na ‚disable =no‘ a ostatní parametry ponechte tak, jak jsou.

[[email protected] ~]# vi /etc/xinetd.d/tftp
service tftp
{
 socket_type = dgram
 protocol    = udp
 wait        = yes
 user        = root
 server      = /usr/sbin/in.tftpd
 server_args = -s /var/lib/tftpboot
 disable     = no
 per_source  = 11
 cps         = 100 2
 flags       = IPv4
}

Všechny soubory související se zaváděním ze sítě je třeba umístit do kořenového adresáře tftp „/var/lib/tftpboot

Spuštěním následujících příkazů zkopírujte požadované síťové spouštěcí soubory do „/var/lib/tftpboot/“

[[email protected] ~]# cp -v /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
[[email protected] ~]# cp -v /usr/share/syslinux/menu.c32 /var/lib/tftpboot
[[email protected] ~]# cp -v /usr/share/syslinux/memdisk /var/lib/tftpboot
[[email protected] ~]# cp -v /usr/share/syslinux/mboot.c32 /var/lib/tftpboot
[[email protected] ~]# cp -v /usr/share/syslinux/chain.c32 /var/lib/tftpboot
[[email protected] ~]#
[[email protected] ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[[email protected] ~]# mkdir /var/lib/tftpboot/networkboot
[email protected] ~]#

Krok:4 Připojte soubor ISO CentOS 7.x a zkopírujte jeho obsah na místní ftp server

V mém případě jsem si již stáhl CentOS 7.x iso soubor na můj PXE Server. Spusťte níže uvedené příkazy pro připojení souboru iso a poté zkopírujte jeho obsah do adresáře ftp serveru „/var/ftp/pub '

[[email protected] ~]# mount -o loop CentOS-7-x86_64-DVD-1511.iso /mnt/
mount: /dev/loop0 is write-protected, mounting read-only
[[email protected] ~]# cd /mnt/
[[email protected] mnt]# cp -av * /var/ftp/pub/

Zkopírujte soubor jádra (vmlimz) a soubor initrd z připojeného souboru iso do „/var/lib/tftpboot/networkboot/ '

[[email protected] ~]# cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/networkboot/
[[email protected] ~]# cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/networkboot/
[[email protected] ~]#

Nyní můžete soubor iso odpojit pomocí příkazu „umount“

[[email protected] ~]# umount /mnt/
[[email protected] ~]#

Krok:5 Vytvořte soubor nabídky kickStart a PXE.

Před vytvořením souboru kickstart nejprve vytvořte heslo uživatele root v zašifrovaném řetězci, protože tento zašifrovaný řetězec hesla použijeme v souboru kickstart.

[[email protected] ~]# openssl passwd -1 [email protected]#
$1$e2wrcGGX$tZPQKPsXVhNmbiGg53MN41
[[email protected] ~]#

Výchozí soubor kickstart systému je umístěn pod /root s názvem „anaconda-ks.cfg '. Vytvoříme nový kickstart ve složce /var/ftp/pub s názvem ‘centos7.cfg '

Zkopírujte následující obsah do nového souboru kickstart. Upravte soubor kickstart podle svých potřeb.

[[email protected] ~]# vi /var/ftp/pub/centos7.cfg

#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use FTP installation media
url --url="ftp://172.168.1.11/pub/"
# Root password
rootpw --iscrypted $1$e2wrcGGX$tZPQKPsXVhNmbiGg53MN41
# System authorization information
auth useshadow passalgo=sha512
# Use graphical install
graphical
firstboot disable
# System keyboard
keyboard us
# System language
lang en_US
# SELinux configuration
selinux disabled
# Installation logging level
logging level=info
# System timezone
timezone Europe/Amsterdam
# System bootloader configuration
bootloader location=mbr
clearpart --all --initlabel
part swap --asprimary --fstype="swap" --size=1024
part /boot --fstype xfs --size=300
part pv.01 --size=1 --grow
volgroup root_vg01 pv.01
logvol / --fstype xfs --name=lv_01 --vgname=root_vg01 --size=1 --grow
%packages
@^minimal
@core
%end
%addon com_redhat_kdump --disable --reserve-mb='auto'
%end

Vytvořte soubor nabídky PXE (/var/lib/tftpboot/pxelinux.cfg/default ), zkopírujte následující obsah do souboru nabídky pxe.

[[email protected] ~]# vi /var/lib/tftpboot/pxelinux.cfg/default

default menu.c32
prompt 0
timeout 30
MENU TITLE LinuxTechi.com PXE Menu
LABEL centos7_x64
MENU LABEL CentOS 7_X64
KERNEL /networkboot/vmlinuz
APPEND initrd=/networkboot/initrd.img inst.repo=ftp://172.168.1.11/pub ks=ftp://172.168.1.11/pub/centos7.cfg

Krok:6 Spusťte a povolte službu xinetd, dhcp a vsftpd.

Pomocí níže uvedených příkazů spusťte a povolte xinetd, dhcp a vsftpd.

[[email protected] ~]# systemctl start xinetd
[[email protected] ~]# systemctl enable xinetd
[[email protected] ~]# systemctl start dhcpd.service
[[email protected] ~]# systemctl enable dhcpd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/dhcpd.service to /usr/lib/systemd/system/dhcpd.service.
[[email protected] ~]# 
[[email protected] ~]# systemctl start vsftpd
[[email protected] ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[[email protected] ~]#

V případě, že je povolen SELinux, nastavte následující pravidlo selinux pro ftp server.

[[email protected] ~]# setsebool -P allow_ftpd_full_access 1
[[email protected] ~]#

Otevřete porty v bráně firewall operačního systému pomocí následujících příkazů firewall-cmd

[[email protected] ~]# firewall-cmd --add-service=ftp --permanent
success
[[email protected] ~]# firewall-cmd --add-service=dhcp --permanent
success
[[email protected] ~]# firewall-cmd --add-port=69/tcp --permanent 
success
[[email protected] ~]# firewall-cmd --add-port=69/udp --permanent 
success
[[email protected] ~]# firewall-cmd --add-port=4011/udp --permanent
success
[[email protected] ~]# firewall-cmd --reload
success
[[email protected] ~]#

Do této chvíle je instalace a konfigurace PXE serveru dokončena.

Krok:7 Spusťte klienty pomocí možnosti spouštění pxe.

Jak je vidět výše, instalace byla zahájena jakoukoli lidskou interakcí. Doufám, že se vám instalace a konfigurace PXE serveru líbí. Podělte se o své názory a komentáře.


Cent OS
  1. Jak Pxe Network Boot Ubuntu Server 14.04 pomocí Nfs?

  2. Nakonfigurujte server MariaDB na CentOS

  3. Centos 7 :Konfigurace serveru DNS

  1. Jak nakonfigurovat síťová nastavení CentOS

  2. Kroky instalace OpenCart 2.0 na CentOS 7

  3. Nainstalujte a nakonfigurujte VNC Server v CentOS 7 a RHEL 7

  1. Jak nainstalovat ownCloud na CentOS 7

  2. Jak nainstalovat Drupal 8 na CentOS 7

  3. Nakonfigurujte instalační server PXE (Network Boot) na CentOS 7.x