linux下的PXE预安装环境

一.什么是PXE:

PXE(preboot execute environment,预启动执行环境)是工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP或MTFTP协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。

 

二.PXE的使用:

1.配置dhcp动态IP:

关闭防火墙,配置yum源

linux下的PXE预安装环境

linux下的PXE预安装环境 
服务端:
下载dhcpd服务                 yum  install  dhcp  -y
开启dhcpd服务                 systemctl  start  dhcpd

linux下的PXE预安装环境
配置dhcpd文件                 cp  /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf
                            (overwrite  'dhcpd.conf'  y)

                             vim  /etc/dhcp/dhcpd.conf

linux下的PXE预安装环境
                             7  option  domain-name  "westos.com"
                             8  option  domain-name-servers  172.25.254.250;
                             删除27.28及36行以后
                             30 subnet  172.25.254.0  netmask  255.255.255.0  {
                             31 range  172.25.254.120  172.25.254.140;
                             32 option  router  172.25.254.22;
                             33 }

linux下的PXE预安装环境

linux下的PXE预安装环境
重启dhcpd服务                 systemctl  restart  dhcpd

linux下的PXE预安装环境
真机:
关闭dhcpd服务                 systemctl  stop  dhcpd                     ##防止真机上dhcpd服务干扰
重置虚拟机获得动态IP                  rht-vmctl  reset  server
                                                      rht-vmctl  view  server

linux下的PXE预安装环境

客户端:
重启网络                      systemctl  restart  network
查看获得的IP                  ifconfig

linux下的PXE预安装环境

 

2.pxe预安装准备:

服务端:

#################################
&syslinux是一个功能强大的引导加载程序,而且兼容各种介质。它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。
&TFTP是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。
&xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器,常用来管理多种轻量级Internet服务。
#################################

下载syslinux服务               yum  install  syslinux-4.05.x86_64  -y

linux下的PXE预安装环境
下载tftp服务                   yum  search  tftp

linux下的PXE预安装环境
                              yum  install  tftp-server.x86_64  -y

linux下的PXE预安装环境
查看对应xinetd的服务信息                   netstat  -antlupe  |  grep  xinetd
修改配置                       vim  /etc/xinetd.d/tftp
                              14 disable        =  no

linux下的PXE预安装环境
重启xinetd服务                 systemctl  restart  xinetd.service
查看对应xinetd的服务信息                   netstat  -antlupe  |  grep  xinetd

linux下的PXE预安装环境
##在不知道下一步该怎么办的时候可以查看pexlinux使用方法less /usr/share/doc/syslinux-4.05/pxelinux.txt
linux下的PXE预安装环境

查看tftp所有配置文件                       rpm  -ql  tftp-server

linux下的PXE预安装环境
建立配置文件                       cp  /usr/share/syslinux/pxelinux.0   /var/lib/tftpboot/
                                             mkdir  /var/lib/tftpboot/pxelinux.cfg

linux下的PXE预安装环境

真机:
查看安装界面对应提示语所在文件               cd  /var/www/html/rhel7.0
                                        grep  "Install Red Hat"  -r

linux下的PXE预安装环境
传送对应文件                    cd  isolinux
                              ls
                              scp  -r  *  [email protected]服务端IP:/var/lib/tftpboot

linux下的PXE预安装环境

服务端:
查看文件传送情况                 cd  /var/lib/tftpboot
                                               ls

linux下的PXE预安装环境
按照使用方法建立配置文件                    cp  isolinux.cfg  pxelinux.cfg/default
重启xinetd服务                           systemctl  restart  xinetd.service
修改dhcpd服务配置文件                      vim  /etc/dhcp/dhcpd.conf

linux下的PXE预安装环境
                                        33 next-server  172.25.254.122;
                                        34 filename  "pxelinux.0";

linux下的PXE预安装环境
重启dhcpd服务                            systemctl  restart  dhcpd

linux下的PXE预安装环境

真机:
进入虚拟机管理界面               virt-manager
采用网卡启动             Boot device menu > NIC(向上) > force off > start

linux下的PXE预安装环境
暂停查看是否获得动态IP

linux下的PXE预安装环境

#########修改选择界面提示############
服务端:
vim  pxelinux.cfg/default
修改等待时间        2  timeout 时间

linux下的PXE预安装环境

linux下的PXE预安装环境
修改背景图片        10 menu  background 新图片名.png
##修改图片尺寸        convert  图片名.png  -resize  640x480!  新图片名.png

linux下的PXE预安装环境linux下的PXE预安装环境
修改大标题        11 menu  title  标题

linux下的PXE预安装环境

linux下的PXE预安装环境
修改默认选项        68 menu  default        剪切到相应行

linux下的PXE预安装环境

linux下的PXE预安装环境
修改选项提示符        62/68 menu  label  提示符

linux下的PXE预安装环境

linux下的PXE预安装环境
##################################

 

3.用镜像安装

服务端:
修改pxelinux配置文件             vim  pxelinux.cfg/default
                                                65 append  initrd-initrd.img  repo=http://172.25.254.22/rhel7.0     ##quiet表示不显示加载文件

linux下的PXE预安装环境

linux下的PXE预安装环境linux下的PXE预安装环境

 

4.用kickstart自动安装

下载kickstart服务                   yum  install  system-config-kickstart  -y

linux下的PXE预安装环境
下载httpd服务                       yum  install  httpd  -y

linux下的PXE预安装环境
开启http服务                        systemctl  start  httpd
查看httpd服务开启状态                netstat  -antlupe  |  grep  httpd

linux下的PXE预安装环境
配置kickstart                      system-config-kickstart

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境
修改配置文件                        vim  /var/www/html/ks.cfg
                                 最后添加%packages
                                               @base
                                               @x11
                                               @gnome-desktop
                                                lftp
                                                %end

linux下的PXE预安装环境
检查语法                           ksvalidator  ks.cfg
修改pxelinux配置中指向              vim  /var/lib/tftpboot/pxelinux.cfg/default

linux下的PXE预安装环境
                                 65 append initrd-initrd.img repo=http://172.25.254.22/rhel7.0 ks=http://172.25.254.122/ks.cfg
linux下的PXE预安装环境

linux下的PXE预安装环境

linux下的PXE预安装环境