位置: 编程技术 - 正文

详解Linux系统下PXE服务器的部署过程(linux pb)

编辑:rootadmin

推荐整理分享详解Linux系统下PXE服务器的部署过程(linux pb),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux pb,linux p4,linux px,linux-p,linux p4,linux-p,linux-p,linux p,内容如对您有帮助,希望把文章链接给更多的朋友!

在大规模安装服务器时,需要批量自动化方法来安装服务器,来减少日常的工作量. 但是批量自动化安装服务器的基础是网络启动服务器(bootserver). 下面我们就介绍一下 网络启动服务器的 安装和配置方法,供大家实践之用!1. 本文用到的术语解释PXEPXE(Pre-boot Execution Environment)是由Intel设计的协议,它可以使计算机通过网络而不是从本地硬盘、光驱等设备启动。现代的网卡,一般都内嵌支持PXE的ROM芯片。当计算机引导时,BIOS把PXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行.DHCPDHCP(Dynamic Host Control Protocol) 动态主机控制协议.用于集中、动态的给客户机分配IP地址.TFTPTFTP(trivial file transfer protocol),一种开销很小的文件传输协议,语法类似ftp.因简单、高效,常用于网络设备的OS和配置更新.2. PXE 原理2.1. PXE Client Api (架构)

详解Linux系统下PXE服务器的部署过程(linux pb)

图 PXE API架构图。(图片来源:PXE Specification Version 2.1)上图说明: 当BIOS把PXE Client载入记忆体,此时便具有DHCP Client及TFTP Client的能力。PXE Client具备DHCP Client能力,可以透过DHCP Server来取得IP位址。 PXE Client具备TFTP Client能力”,可通过TFTP来下载kernel image等文件。2.2. PXE启动流程图(pxe boot)

上图启动流程说明如下:PXE Client 向 UDP 端口 广播 DHCPDDISCOVER 消息.DHCP SERVER 或者 DHCP Proxy 收到广播消息后,发送DHCPOFFER(包含ip地址)消息 到 PXE Client的 端口.PXE Client 发送 DHCPREQUEST 消息到 DHCP SERVER ,获取启动文件(boot file name).DHCP SERVER 发送DHCPACK(包含Network Bootstrap Program file name)消息 到PXE Client.PXE Client 向 Boot Server 获取 NBP(Network Bootstrap Program) 文件.PXE Client 从TFTP SERVER 下载 NBP,然后在客户端执行NBP文件注意: 在NBP执行初始化后,NBP会按照自己默认的方式从TFTP SERVER中下载其他所需的配置文件. 这个时候 PXE 启动流程已经完成了,剩下的工作都是有NBP来执行完成的. 例如: pxelinux.0(NBP) 他会下载 default 配置文件,来显示菜单,根据需要启动不同的kernel image. 如果是RIS(window安装)的NBP,会启动 Windows boot loader 来执行安装部署widows任务.3. PXE BOOT Server 配置过程以下配置和测试 都是在 Centos5 上完成的,其他系统请酌情参考!3.1. DHCP的安装与配置在PXE引导过程中,PXE Client通过DHCP Server 获取ip地址,NBP文件名称,然后从TFTP SERVER 下载NBP文件并在客户端执行,从而启动计算机。请确认系统中安装 dhcp 软件包编辑 /etc/dhcpd.conf 配置文件,配置文件内容如下复制代码代码如下: [root@linux]# cat /etc/dhcpd.conf ddns-update-style interim; allow booting; #定义能够PXE启动 allow bootp; #定义支持bootp next-server ..0.1; #TFTP Server的IP地址 filename "pxelinux.0"; #bootstrap 文件(NBP) default-lease-time ; max-lease-time ; ping-check true; option domain-name-servers ..0.1; subnet ..0.0 netmask ...0 { range ..0. ..0.; option routers ..0.1; option broadcast-address ..0.; }注意:在 /etc/dhcpd.conf 配置文件中 filename "pxelinux.0"; 文件目录是相对于 tftp 的根目录(默认是 /tftpboot),所以文件的绝对路径就是: /tftpboot/pxelinux.0";当然也可以指定为其它的路径.配置完成后,重启DHCP服务,并将它设为开机自启动复制代码代码如下: [root@linux]# /etc/init.d/dhcpd start 启动 dhcpd: [确定] [root@linux]# chkconfig --level dhcpd on3.2. 安装配置TFTP服务器在PXE引导过程中,PXE Client 使用TFTP协议从TFTP服务器下载bootstrap文件并执行.请确认系统中安装 tftp-server 软件包配置tftp服务,tftp 服务由xinetd服务管理 编辑 /etc/xinetd.d/tftp 文件,将 disable = yes 改为:disable = no .配置文件内容如下:复制代码代码如下: [root@linux]# cat /etc/xinetd.d/tftp # default: off # description: The tftp server serves files using the trivial file transfer # protocol. The tftp protocol is often used to boot diskless # workstations, download configuration files to network-aware printers, # and to start the installation process for some operating systems. # default: off # description: The tftp server serves files using the trivial file transfer # protocol. The tftp protocol is often used to boot diskless # workstations, download configuration files to network-aware printers, # and to start the installation process for some operating systems. service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot disable = no per_source = cps = 2 flags = IPv4 }注意:TFTP服务器的根目录是 /tftpboot,配置完成后重启xinetd服务,使TFTP服务器生效.复制代码代码如下: [root@linux]# /etc/init.d/xinetd restartbootstrap 文件配置 (NBP),这里使用 pxelinux.0bootstrap文件由syslinux软件包提供,我们只要安装了syslinux,将 pxelinux.0 这个文件复制到 /tftpboot 目录即可:复制代码代码如下: [root@linux]# rpm -ql syslinux | grep "pxelinux.0" /usr/lib/syslinux/pxelinux.0 [root@linux]# cp /usr/lib/syslinux/pxelinux.0 /tftpboot/配置 pxelinux.0(NBP) 使用的配置文件接下来创建/tftpboot/pxelinux.cfg/ 目录,该目录用于存放客户端的配置文件复制代码代码如下: [root@linux]# mkdir /tftpboot/pxelinux.cfg默认配置文件default,文件内容如下、复制代码代码如下: [root@linux]# cat /tftpboot/pxelinux.cfg/default default linux # 默认启动的是 'label linux' 中标记的启动内核 prompt 1 # 显示 'boot: ' 提示符 timeout # 等待超时时间,单位为 1/ 秒,超时后自动启动 默认指定的label display boot.msg # 显示boot.msg的内容,文件路径是相对tftp server 的根目录(默认 /tftpboot),所以boot.msg文件绝对路径在 /tftpboot/boot.msg . F1 boot.msg # 按下'F1' 键后显示的文件 F2 options.msg F3 general.msg F4 param.msg F5 rescue.msg label 1 # 'label' 指定你在 'boot:' 提示符下输入的关键字。 kernel linux/rh-x-/vmlinuz append initrd=linux/rh-x-/initrd.img ramdisk_size= ks= ksdevice=link label 2 kernel linux/rh-x-/vmlinuz append initrd=linux/rh-x-/initrd.img ramdisk_size= ks= ksdevice=link label 3 kernel linux/rh-x-/vmlinuz append initrd=linux/rh-x-/initrd.img ramdisk_size= ks= ksdevice=link label 4 kernel linux/rh-x-/vmlinuz append initrd=linux/rh-x-/initrd.img ramdisk_size= ks= ksdevice=link label 5 kernel image/linux/rh-x-/vmlinuz append initrd=image/linux/rh-x-/initrd.img ramdisk_size= ks= ksdevice=link label 6 kernel linux/rh-x-/vmlinuz append initrd=linux/rh-x-/initrd.img ramdisk_size= ks= ksdevice=link 注意事项: 默认 pxelinux.0 和 pxelinux.cfg 一定要在同一个目录下3.3. pxelinx.0(NBP)程序配置文件搜索顺序由于多个客户端可以从一个PXE服务器引导,PXE引导映像使用了一个复杂的配置文件搜索方式来查找针对客户机的配置文件. 假设 客户端服务器的网卡的MAC地址为 ::AA:BB:CC:DD ,对应的IP地址为..1.,那么客户端的pxelinux.0 程序 搜索顺序如下:首先以MAC地址为文件名匹配的配置文件,如果不存在,继续查找.其次以IP地址来查找.根据IP地址进制命名的配置文件查找,从小范围到打大分为查找(子网掩码由小到大),如果不存在,继续查找.最后尝试default文件总体来说,pxelinux.0 搜索的文件的顺序是(可以通过tcpdum得到结果):复制代码代码如下: /tftpboot/pxelinux.cfg/---aa-bb-cc-dd /tftpboot/pxelinux.cfg/C0AC3 /tftpboot/pxelinux.cfg/C0AC /tftpboot/pxelinux.cfg/C0A /tftpboot/pxelinux.cfg/C0A /tftpboot/pxelinux.cfg/C0A8 /tftpboot/pxelinux.cfg/C0A /tftpboot/pxelinux.cfg/C0 /tftpboot/pxelinux.cfg/C /tftpboot/pxelinux.cfg/default4. 总结(Summary)

Linux系统上PPTP协议VPN服务器架设方法 VPN服务常用的协议一般有两种:PPTPPPTP(点对点隧道协议)是一个很好的,轻量级的VPN协议,高速提供基本的在线安全。PPTP是内建于各种桌面和移动设

在Linux系统下使用TUN/TAP虚拟网卡的基本教程 在计算机网络中,TUN与TAP是操作系统内核中的虚拟网络设备。不同于普通靠硬件网路板卡实现的设备,这些虚拟的网络设备全部用软件实现,并向运行

配置iptables实现本地端口转发的方法详解 场景假如你在用resin调试一个Web程序,需要频繁地重启resin。这个Web程序需要开在端口上,而Linux限制以下的端口必须有root权限才能开启。但是你又

标签: linux pb

本文链接地址:https://www.jiuchutong.com/biancheng/353379.html 转载请保留说明!

上一篇:Linux下PureFtpd的基本安装使用与超时问题解决(linux lftp命令)

下一篇:Linux系统上PPTP协议VPN服务器架设方法(linux pptp客户端)

  • 无偿使用场地涉及的问题
  • 公司取现备用金违法吗
  • 一般纳税人怎么交税
  • 企业所得税申报时间
  • 企业怎么进行税务申报
  • 实收资本印花税怎么申报税目
  • 用工会经费发放福利
  • 长期待摊费用当月减少当月摊销吗
  • 公司商品质量问题导致员工与公司一起被起诉了怎么办
  • 小微企业发放工资做账
  • 发票有问题找谁
  • 股东其他应付款可以转为实收资本文本格式
  • 接受应税劳务的会计分录
  • 2020工会经费退费
  • 送积分怎么做账
  • win11系统开机密码怎么修改
  • 电视柜尺寸一般是多少厘米的
  • linux如何管理进程
  • Linux系统中sort排序命令的使用教程
  • php新手入门
  • 发放应付职工薪酬是借方还是贷方
  • 对方发票丢失情况说明
  • Docker部署nginx
  • 现金支票应记入什么账户
  • vue 动态添加路由
  • 宇宙最强舅舅系统
  • 深入理解ts
  • 分类问题的评价方法有
  • Visual studio 2019 社区版下载和安装
  • css常见的选择器有哪几种
  • React Hook - useEffecfa函数的使用细节详解
  • element excel
  • react避免子组件更新
  • 债权转让收益需缴税吗
  • 新注册企业实收资本没到账怎么处理
  • 资产减值损失属于营业外支出吗
  • 企业从银行借款会导致其营运资本
  • 一般纳税人需要报个税吗
  • mysql异常退出
  • 房地产企业所得税预缴毛利率
  • 承兑汇票找公司贴现违法吗
  • 增值税销项税额属于什么科目
  • 研发部门的房租可以资本化
  • 买家退货少了犯什么法
  • 应交税费属于什么科目借方
  • 上月未记账
  • 收到固定资产发票怎么入账
  • 高新企业 要求
  • 抵扣联和发票联的区别
  • 购买增值税发票系统金税盘如何入账?
  • 收到福利费的专用发票
  • 公司计提减值好吗
  • mysql多表查询方式
  • win10语言栏没有
  • u盘如何安装win7系统
  • 开机时显示
  • win8打开桌面
  • linux中如何配置环境变量
  • win10怎么进去
  • linux查看系统配置内存大小
  • node搭建博客
  • 手机弹窗游戏
  • python的正则语法
  • 怎么做小地图
  • asp.net runat
  • 请简述vue-router路由的作用
  • unity3d怎么查看
  • centos上安装邮件服务器
  • Python安装包
  • unity3d怎么让物体依次运动
  • 基于javascript的毕业设计
  • jquery的遍历方法
  • 如何网上申领税票发票
  • 不予税务行政许可
  • 广东省电子税务局app下载手机版
  • 江西省税务局公众号
  • 国家税务总局56号
  • 江苏地税局如何交社保
  • 京牌车船税网上可以交吗
  • 吉林省职称查询入口
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设