---恢复内容开始---
一、PXE 简介 pxe:pre-boot Excution Environment.预启动执行环境 是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux系列系统等。 PXE最直接的表现是,在网络环境下工作站可以省去硬盘,但又不是通常所说的无盘站的概念,因为使用该 PXE网卡-WY574T PXE网卡-WY574T 技术的PC在网络方式下的运行速度要比有盘PC快3倍以上。当然使用PXE的PC也不是传统意义上的TERMINAL终端,因为使用了PXE的PC并不消耗服务器的CPU,RAM等资源,故服务器的硬件要求极低。 https://p1.ssl.qhmsg.com/t010e048c12806bb25d.jpg PXE启动原理当计算机引导时,BIOS把 PXE Client 调入内存中执行,然后由 PXE Client 将放置在远端的文件通过网络下载到本地运行。 二、搭建PXE远程安装服务器 环境部署 服务端 客户端 均关闭防火墙 selinux 网卡配置文件
DEVICE=eth0 NETEORKING=yes TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static 网卡配置静态 不然dhcpd服务启动失败 IPADDR=192.168.200.106 NETMASK=255.255.255.0 GATEWAY=192.168.200.2 1使用ftp服务器,将安装源放在/var/ftp/centos6/ 2 安装并启用 tftp服务 yum -y install tftp-server vim /etc/xinetd/tftp service tftp { disable = no 开启tftp服务 socket_type = dgram protocol = udp wait = no 不等待,同一时刻可以有多个客户端建立连接 user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot tftp服务的根目录 per_source = 11 cps = 100 2 flags = IPv4 } 开启xinetd服务 /etc/init.d/xinetd start chkconfig tftp on ftp加入开机启动 3 准备linux内核,初始化镜像文件 [root@localhost ~]# vim /etc/xinetd.d/tftp [root@localhost ~]# cd /var/ftp/centos6/isolinux/ [root@localhost isolinux]# ls boot.cat grub.conf isolinux.bin memtest TRANS.TBL vmlinuz boot.msg initrd.img isolinux.cfg splash.jpg vesamenu.c32 把这两个文件复制到tftp的目录下 cp vmlinuz isolinux.cfg /var/lib/tftpboot/ 4准备pxe引导程序 启动菜单文件 yum -y install syslinux 复制/usr/share/syslinux/pxelinux.0 和 pxelinux.cfg 到tftp服务的根目录下 chmod 644 isolinux.cfg 安全步骤 vim isolinux.cfg default linux #prompt 1 prompt 0 不交互 #timeout 600
label linux menu label ^Install or upgrade an existing system menu default kernel vmlinuz append initrd=initrd.img label text menu label Install system with ^basic video driver kernel vmlinuz append text initrd=initrd.img xdriver=vesa nomodeset label rescue 急救模式 menu label ^Rescue installed system kernel vmlinuz append rescue initrd=initrd.img rescue mkdir -p pxelinux.cfg mv isolinux.cfg pxrlinux.cfg/default改名 ---内核的引导过程 yum -y install dhcpd vim /etc/dhcp/dhcpd.conf
option domain-name "yunjisuan.com"; option domain-name-servers 192.168.200.2; 网关 default-lease-time 21600; 指定租赁时间的长度,单位秒 max-lease-time 43200; 指定最大租赁时间的长度 log-facility local7; 日志 subnet 192.168.200.0 netmask 255.255.255.0 { 网段 和掩码 range 192.168.200.50 192.168.200.200;给分配的DHCP地址池 option routers 192.168.200.60; 网关指向服务ip next-server 192.168.200.60;指定tftp服务器地址 filename "pxelinux.0"; pxe引导此程序文件名 开启DHCP服务 /etc/init.d/dhcpd start yum -y install vsftpd /etc/init.d/vsftpd start 客户端: yum -y install ftp ftp 服务端ip root用户 ftp 密码: 空 创建一台新的虚拟机 网络适配器 和dhcpd一样‘ l略 安装批量装机自动脚本 yum -y install system-config-kickstart yum groupinstall "Desktop" 安装桌面模式 init 5 进入桌面模式 略 四 ##实现批量装机(PXE与kickstart的结合使用) 1 将应答文件部署再客户机可以访问的位置 [root@localhost ~]# cp ks.cfg /var/ftp/ 复制kickstart脚本到发图片目录下 [root@localhost ~]# chmod 777 /var/ftp/ks.cfg 2 修改启动菜单文件,调用应答文件 vim /var/lib/tfpboot/pxelinux.cfg/default append initrd=initrd.img ks=ftp://192.168.200.106/ks.cfg
---恢复内容结束---