pxe

    PXE工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户)基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux等。

 

    实验描述:这次我以KICKSTART+DHCP+TFTP+HTTP的模式来模拟全自动化系统(linux)安装。

    环境准备:

    1.一台server,担任启动服务器和安装服务器

    2.一台Client,需要能从网卡启动

    3.两台机器要在统一局域网

    4.服务器需要有安装所需的环境包

    这里实验我用的是192.168.0.0/24的网段来实验,我的服务器ip是192.168.0.2/24

 

实验:配置servier

    1.server必须指定静态ip地址

    server ip

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_IP地址

    

    2.配置好之后,重启network服务,并查看网卡信息

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_服务器_02

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_服务器_03

 

配置DHCP:

    1.指定好静态ip后,就可以开始安装dhcp服务了,首先要挂载光盘,配置好yum源,这里在虚拟机上实验,有镜像,指定yum源到镜像里就可以了。

    挂载镜像cdrom

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_服务器_04

 

    指定yum源,编辑vim /etc/yum.repos.d/ky.repo

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_kixkstart_05

 

    安装dhcp,#yum install dhcp,安装好后查看安装结果

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_http_06

    

    2.配置DHCP服务器,编辑dhcpd.conf文件

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_pxe_07

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_pxe_08

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_IP地址_09

    

    启动dhcp服务

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_服务器_10

 

配置TFTP:

    1.安装tftp服务

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_kixkstart_11

 

    2.启动tftp服务,因为tftp-server是瞬时(短暂)守护进程,它会借助于超级守护进程守护服务,所以启动时要启动xinetd。

    tftp启动方式有两种:

        (1)用命令#chkconfig tftp on

        (2)编辑配置文件,修改/etc/xinetd.d/tftp

        KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_pxe_12

        

        查看启动模式#chkconfig  --list

        KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_IP地址_13

    

    重启tftp服务

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_服务器_14

 

配置PXE的引导环境:

    1.安装syslinux,#yum  install  sysylinux

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_kixkstart_15

 

    2.把引导文件copy到tftboot目录下,为客户端获取到地址时去下载引导文件

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_IP地址_16

 

    3.配置DHCP服务器,为客户端指定从哪下载

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_http_17

 

    4.提供引导内核等文件

    # cp /media/cdrom/p_w_picpaths/pxeboot/{vmlinuz,initrd.img}  /var/lib/tftpboot/

    # cp /media/cdrom/isolinux/{splash.jpg,vesamenu.c32,boot.msg}  /var/lib/tftpboot

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

    # cp /media/cdrom/isolinux/isolinux.cfg  /var/lib/tftpboot/pxelinux.cfg/default

        vmlinuz:内核文件

        initrd.img:根文件系统

        splash.jpg:启动引导时显示的图片

        isolinux.cfg:启动时显示的菜单

 

    5.提供安装源和ks文件,基于HTTP服务实现

    # yum  -y  install httpd

    # mkdir  -pv  /var/www/html/centos

    # mount   /media/cdrom   /var/www/html/centos

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_kixkstart_18

 

    ks.cfg文件是我事先做好的,复制到/var/www/html/centos.cfg下,改名为centos.cfg

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_IP地址_19

 

    6.配置客户机,优先从网卡启动,就可以安装了

 

注意:

    1.ks文件中有的地方要特别注意,里面一定要指明repo和url的地址,如果没有,装机时会找不到yum源安装不成功。

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_http_20

 

    2.装机时会出现是否要格式化磁盘,里面可能有你的数据,你必须同意格式化才能安装,这样就无法做到全自动化安装了,这时,要去ks文件中添加一行语句

    KICKSTART+DHCP+TFTP+HTTP基于PXE完成全自动安装系统_pxe_21