PXE高效能批量网络装机
PXE简绍
PXE(preboot execute 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启动原理
当计算机引导时,BIOS把 PXE Client调入内存中执行,然后由PXE Client将放置在远端的文件通过网络下载到本地运行。
若要搭建 PXE网络体系,必须要满足以下条件:
- 客户机的网卡支持 PXE 协议(集成 BOOTROM 芯片),且主板支持网络引导
- 网络中有一台 DHCP 服务器,以便为客户机分配地址、指定引导文件位置服务器通过 TFTP(Trivial File Transfer Protocol)简单文件传输协议提供引导镜像文件的下载。
工作过程
工作站开机后, PXE BootROM(自启动芯片) 获得控制权之前先做自我测试,然后 以广播形式发出一个请求 FIND 帧。 如果服务器收到工作站所送出的要求, 就会送回 DHCP 回应, 内容包括用户端的 IP 地址, 预设通讯通道, 及开机映像文件。否则,服务器会忽略这个要求。工作站收到服务器发回的响应后则会回应一个帧,以请求传送启动所需文件。 之后,将有更多的讯息在工作站与服务器之间作应答, 用以决定启动参数。 BootROM 由 TFTP通讯协议从服务器下载开机映像档, 这个映像档就是软盘的映象文件。 工作站使用 TFTP 协
议接收启动文件后,将控制权转交启动块,引导操作系统,完成远程启动
搭建6系统的PXE远程安装服务器
PXE用桌面模式,配置DHCP,配置TFTP
- 准备CentOS6安装源
使用FTP服务,将安装源放至/var/ftp/centos6/目录下
[root@localhost yum.repos.d]# mount /dev/sr0 /media/cdrom/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost yum.repos.d]# cd ~
[root@localhost ~]# mkdir -p /var/ftp/centos6
[root@localhost ~]# cd /var/ftp/centos6/
[root@localhost centos6]# cp -rp /media/cdrom/* . //将光盘源放入/var/ftp/centos6 中。不懂的研究FTP
- 安装并启用TFTP服务
[root@localhost centos6]# yum -y install tftp-server
[root@localhost centos6]# vim /etc/xinetd.d/tftp
root@localhost centos6]# /etc/init.d/xinetd start //启动服务
正在启动 xinetd: [确定]
[root@localhost centos6]# chkconfig tftp on //开机自启动
- 准备Linux内核,初始化镜像文件
- 准备PXE引导程序,启动菜单文件
[root@localhost isolinux]# yum -y install syslinux
[root@localhost isolinux]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@localhost isolinux]# ls /var/lib/tftpboot/
initrd.img pxelinux.0 vmlinuz
[root@localhost isolinux]# cp /var/ftp/centos6/isolinux/isolinux.cfg /var/lib/tftpboot/
[root@localhost isolinux]# ls /var/lib/tftpboot/
initrd.img isolinux.cfg pxelinux.0 vmlinuz
[root@localhost isolinux]# chmod 644 /var/lib/tftpboot/isolinux.cfg
[root@localhost isolinux]# cd /var/lib/tftpboot/
[root@localhost tftpboot]# vim isolinux.cfg //内核启动文件
- 安装并启动DHCP服务
[root@localhost tftpboot]# yum -y install dhcp
[root@localhost tftpboot]# cd /etc/dhcp/
[root@localhost dhcp]# ls
dhclient.d dhcpd6.conf dhcpd.conf
[root@localhost dhcp]# vim dhcpd.conf
[root@localhost dhcp]# cp /usr/share/doc/dhcp*/dhcpd.conf.sample .
[root@localhost dhcp]# ls
dhclient.d dhcpd6.conf dhcpd.conf dhcpd.conf.sample
[root@localhost dhcp]# cat dhcpd.conf.sample > dhcpd.conf
[root@localhost dhcp]# vim dhcpd.conf
- 安装ftp
[root@localhost dhcp]# yum -y install vsftpd
[root@localhost dhcp]# /etc/init.d/vsftpd start
为 vsftpd 启动 vsftpd: [确定]
我用的是NAT模式所以必须关了NAT否则DHCP没用
客户端安装ftp就可以,然后试一下可不可以链接
- 新建虚拟机进行试验
新建一个空机器
然后就OK,就和正常装机一样了
实现 kickstart
- 创建应答文件
[root@localhost ~]# yum -y install system-config-kickstart
修改配置
[root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
这就是自动装机,不过有一个地方会卡一下,现在我们解决
[root@localhost ~]# vim /var/ftp/ks.cfg
最好重启下服务再实验
PXE高效能批量网络装机的更多相关文章
- 项目(三)PXE高效能批量网络装机
PXE:预启动执行环境 PXE是由intel公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统. 若要搭建PXE网 ...
- Linux系统——PXE高效能批量网络装机
PXE:Pre-boot Excution Environment,预启动执行环境,石油Intel公司开发的网络引导技术,工作在Client.Server模式,允许客户机通过网络从远程服务器下载阴道镜 ...
- Linux网络服务第六章PXE高效能批量网络装机
1.IP地址配置 2.关闭防火墙以及selinux状态如下 systemctl stop firewalld Iptables -F Setenforce 0 三.部署FTP服务 1.安装F ...
- 教你 PXE高效批量网络装机
PXE高效批量网络装机一.PXE概述① PXE (Preboot eXcution Environment)② PXE批量部署的优点③ 服务端④ 客户端二.部署PXE远程安装服务搭建PXE远程安装服务 ...
- PXE高效批量网络装机
PXE高效批量网络装机 一.PXE概述 1)PXE (Preboot eXcution Environment) ...
- SqlBulkCopy高效能批量插入SQL SERVER
what SqlBulkCopy是.NET提供的用来批量插入数据的一个类,特别是将内存中的数据一次性插入到数据库,目前只能插入到SQL SERVER数据库,数据源可以是DataTable.IDataR ...
- Linux 搭建批量网络装机
- 网络装机pxe服务器的配置过程
网络装机pxe服务器的配置过程 背景: 针对于Linux运维工作中遇到的需要大批量安装Linux系统的情况,通过网络装机的方式实现无人值守安装Linux操作系统,现需要配置一台pxe服务器用于pxe批 ...
- Linux shell编写脚本部署pxe网络装机
Linux shell编写脚本部署pxe网络装机 人工安装配置,Linux PXE无人值守网络装机 https://www.cnblogs.com/yuzly/p/10582254.html 脚本实 ...
随机推荐
- Mvc请求的生命周期
ASP.NET Core : Mvc请求的生命周期 translation from http://www.techbloginterview.com/asp-net-core-the-mvc-req ...
- vue教学视频(小程序教学视频)
写在前面 最近通过了解众多面试者的面试情况 总结出以下几点: 对框架的要求越来越高特别是vue和小程序 不会vue和小程序连面试机会都没有 会vue的比不会vue的薪资高4-5k 小程序有发展的趋势 ...
- django之CSRF
在POST请求到达views之前,csrf帮我们进行一层验证 <!DOCTYPE html> <html lang="en"> <head> & ...
- tensorFlow可以运行的代码
折腾了很久,终于运行成功. 才云科技的书不错,就是需要微调一二. 心得:1,记得activate tensorflow,然后再python 2,Python的代码格式很重要,不要错误. 3,还不清楚如 ...
- Struts框架原理及应用
Struts 2框架本身大致可以分为3个部分:核心控制器FilterDispatcher.业务控制器Action和用户实现的企业业务逻辑组件. 核心控制器FilterDispatcher是Struts ...
- redis总结(一)的持久化的取舍和选择以及作用
1.redis持久化 在客户端发布save的过程中有可能造成阻塞,如一千万条数据同时保存并生成二进制RDB文件的时候,此时就会延迟堵塞. 文件策略是如果存在老的RDB文件,会用新的文件替代老的文件如下 ...
- vue数据修改 但未渲染页面
1. 普通的 `1.1 this.$set('obj',key,value); 1.2 this.splice(); 2.数据层次太多,没有触发render函数进行自动更新,需手动调用: this.$ ...
- Unity3D AssetBundle的打包与加载
在Unity项目开发过程中,当要做热更新时常常使用一个叫做AssetBundle的东西,这里做一点个人的学习记录 步骤1: 设置打包标签:具体步骤----进入Unity,选择某一资源然后看右下角,在那 ...
- php 多维数组 array sort 排序 :array_multisort
1.参考链接: php简单实现多维数组排序的方法 参考二: 这个链接很好,可以直接看这个:PHP array_multisort—对多个数组或多维数组进行排序 2.案例一: //13: 最佳: pub ...
- mybatics 与jpa
mybatics,dao层接口,mapper: public interface UserMapper { @Select("SELECT * FROM T_ROLE WHERE ROLE_ ...