Cài Đặt Cấu Hình PXE Server Cho Centos 7

pxe boot server

PXE Server cho phép các máy client có thể boot và cài đặt các distro của hệ điều hành Linux thông qua hệ thống mạng, tiến trình này diễn ra tự động không cần sự tác động của con người cũng như phải có bộ cài đặt trên máy con.

Chuẩn bị :

  • Máy Server có địa chỉ IP = 192.168.0.199 ( IP tĩnh ).
  • Selinux Disabled.
  • FirewallCMD disabled.

Để cài đặt PXE server, trên hệ thống cần có những dịch vụ này :

  • DHCP Server
  • TFTP Server
  • NFS/FTP/HTTPD server ( để lưu trữ file cài đặt )

Ghi chú : DHCP Server sẽ chỉ lắng nghe card mạng eno16777736  (tên cũ là etho).

Trong hướng dẫn này, người viết sẽ sử dụng vsftpd server.

Bắt đầu cài đặt các gói :

yum install dhcp tftp tftp-server syslinux wget vsftpd

Cấu hình DHCP Server :

vim /etc/dhcp/dhcpd.conf
# DHCP Server Configuration file.

 #   see /usr/share/doc/dhcp*/dhcpd.conf.example

 #   see dhcpd.conf(5) man page

 #

 # option definitions common to all supported networks...

 ddns-update-style interim;

 ignore client-updates;

 authoritative;

 allow booting;

 allow bootp;

 allow unknown-clients;

 # A slightly different configuration for an internal subnet.

 subnet 192.168.0.0 netmask 255.255.255.0 {

 range 192.168.0.50 192.168.0.253;

 option domain-name-servers 192.168.0.199;

 option domain-name "server1.example.com";

 option routers 192.168.0.199;

 option broadcast-address 10.5.5.31; #not important

 default-lease-time 600;

 max-lease-time 7200;




 # PXE SERVER IP

 next-server 192.168.0.199; #  DHCP server ip

 filename "pxelinux.0";

 }

Cấu hình TFTP Server. Set Disable từ Yes thành No, và đổi từ thư mục Root thành / tftpboot

Ghi chú, thư mục tiêu chuẩn của TFTP là /var/lib/tftpboot :

vim /etc/xinetd.d/tftp
service tftp

 {

 socket_type             = dgram

 protocol                = udp

 wait                    = yes

 user                    = root

 server                  = /usr/sbin/in.tftpd

 server_args             = -s /tftpboot

 disable                 = no

 per_source              = 11

 cps                     = 100 2

 flags                   = IPv4

 }

Setup TFTP Server network boot files :

mkdir -p /tftpboot

chmod 777 /tftpboot
 cp -v /usr/share/syslinux/pxelinux.0 /tftpboot

 cp -v /usr/share/syslinux/menu.c32 /tftpboot

 cp -v /usr/share/syslinux/memdisk /tftpboot

 cp -v /usr/share/syslinux/mboot.c32 /tftpboot

 cp -v /usr/share/syslinux/chain.c32 /tftpboot
mkdir /tftpboot/pxelinux.cfg

mkdir -p /tftpboot/netboot/

–  Mount file cài đặt ISO vào FTP folder /var/ftp/pub

mount Centos7_xx.iso /var/ftp/pub

– Copy 2 file initrd.img và vmlinuz từ FTP folder vào /tftpboot/netboot/ :

   cp /var/ftp/pub/images/pxeboot/vmlinuz /tftpboot/netboot/

       cp /var/ftp/pub/images/pxeboot/initrd.img /tftpboot/netboot/

–  Mã hóa Root Password dùng cho các máy Client :

Ví dụ : đặt Password là 000000

openssl passwd -1 "000000"

 $1$w2UlrRDP$rk9zBcY1PP3fUC3Xv6P6i/

–  Tạo một file khởi động mới :

vim /var/ftp/pub/ks.cfg

 #platform=x86, AMD64, or Intel EM64T

 #version=DEVEL

 # Firewall configuration

 firewall --disabled

 # Install OS instead of upgrade

 install

 # Use NFS installation media

 url --url="ftp://192.168.0.199/pub/"

 # Root password [i used here 000000]

 rootpw --iscrypted $1$xYUugTf4$4aDhjs0XfqZ3xUqAg7fH3.

 # 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=200

 part pv.01 --size=1 --grow

 volgroup rootvg01 pv.01

 logvol / --fstype xfs --name=lv01 --vgname=rootvg01 --size=1 --grow




%packages

 @core

 wget

 net-tools

 %end

 %post

 %end

Tạo file menu cho PXE :

vim /tftpboot/pxelinux.cfg/default
default menu.c32

 prompt 0

 timeout 30

 MENU TITLE unixme.com PXE Menu




 LABEL centos7_x64

 MENU LABEL CentOS 7 X64

 KERNEL /netboot/vmlinuz

 APPEND  initrd=/netboot/initrd.img  inst.repo=ftp://192.168.0.199/pub  ks=ftp://192.168.0.199/pub/ks.cfg

–  Khởi chạy các service :

chkconfig dhcpd on

chkconfig xinetd on

chkconfig vsftpd on

– Restart lại service :

Service vsftpd  restart

service dhcpd restart

service xinetd restart

Khởi chạy máy client lên để test thử PXE Server. Ở đây người viết sử dụng máy ảo :

pxe boot to lan Cài Đặt Cấu Hình PXE Server Cho Centos 7

pxe centos 7 install Cài Đặt Cấu Hình PXE Server Cho Centos 7

pxe centos 7 kickstart Cài Đặt Cấu Hình PXE Server Cho Centos 7

Như vậy là chúng ta đã hoàn thành cài đặt và cấu hình cho PXE Server.

Xem thêm : Cài Đặt Và Truy Cập RabbitMQ Server Trên CentOS 7

  • pxe boot server
  • pxe boot to lan
  • pxe centos 7 install
  • pxe centos 7 kickstart
  • pxe centos server
  • centos 7 pxe
  • setup pxe boot server centos 7

BÌNH LUẬN

Please enter your comment!
Please enter your name here