基于Linux系统的PXE搭建方法

天翼云开发者社区
• 阅读 411

本文分享自天翼云开发者社区《基于Linux系统的PXE搭建方法》,作者:t***n

一、底层环境准备 1、安装RedHat7.6系统 2、关闭防火墙和Selinux systemctl stop firewalld chkconfig firewalld off vim /etc/sysconfig/selinux 修改SELINUX=disabled 3、配置本地yum源 vim /etc/yum.repos.d/rhel7.repo
[rhel7] name=RHEL7 baseurl=file:///mnt enabled=1 gpgcheck=0 4、安装需要的服务及软件包 yum install vsftpd tftp-server dhcp syslinux system-config-kickstart dhcp:提供dhcp服务 vsftpd:管理本地挂在的OS完整镜像 tftp-server:使可启动镜像通过使用tftp协议网络下载 syslinux:包含网络启动所需的boot loader system-config-kickstart:配置kickstart的图形界面的工具 5、本地物理机网络配置 vim /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet BOOTPROTO=static NAME=eth0 DEVICE=eth0 ONBOOT=yes IPADDR=192.168.64.25 NETMASK=255.255.255.0 GATEWAY=192.168.64.2 二、配置DHCP服务 vim /etc/dhcp/dhcpd.conf 添加如下: option arch code 93 = unsigned integer 16; allow booting; allow bootp; subnet 192.168.64.0 netmask 255.255.255.0 { option routers 192.168.64.2; range 192.168.64.100 192.168.64.200; #分配出去的IP范围 class "pxeclients" { match if substring (option vendor-class-identifier,0,9) = "PXEClient"; next-server 192.168.64.25; #tftp地址,即本机PXE server IP if option arch = 00:07 { filename "pxelinux/BOOTX64.EFI"; #6系统UEFI模式下PXE启动时的引导文件,7系列系统还可以使用shim&grubx64.efi } else { filename "pxelinux/pxelinux.0"; #Legacy模式 } } } 注意:启动DHCP前要配好本机网络地址信息,否则无法启动dhcpd 启动服务: #service dhcpd start [ok] #service dhcpd restart [ok] 三、配置tftp服务 vim /etc/xinetd.d/tftp service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd service_args = -s/tftpboot ###修改为引导文件的路径,本文以 /var/lib/tftpboot为例 per_xource = 11 cps = 100 2 flags =IPv4 disable = no ###将disable改为no } 启动服务: #service xinetd restart [ok] 四、配置PXE启动引导目录 1、将系统镜像mount或拷贝到PXE服务器上 mkdir /var/ftp/pub/RHEL7_6 ###因为用ftp搭建,所以要放在/var/ftp/文件夹中,RHEL7_6是以系统命名的,若还要其它系统可同时存在,做好区分即可 mount /dev/sr0 /mnt cp /mnt/* /var/ftp/pub/RHEL7_6/ ###此处全copy过去,若挂载为mount /dev/sr0 /var/ftp/pub/RHEL7_6,但是mount是一次生效的,后续再用还需要mount,且安装系统过程中mount 不能中断 2、copy引导文件到/var/lib/tftpboot/pxelinux中 mkdir /var/lib/tftpboot/pxelinux/RHEL7_6 ###因为可能会做多个系统,所以在pxelinux中创建不同系统所对应的文件夹 cp /var/ftp/pub/RHEL7_6/images/pxeboot/vmlinuz /var/lib/tftpboot/pxelinux/RHEL7_6 cp /var/ftp/pub/RHEL7_6/images/pxeboot/initrd.img /var/lib/tftpboot/pxelinux/RHEL7_6 cp /var/ftp/pub/RHEL7_6/EFI/BOOT/BOOTX64.EFI /var/lib/tftpboot/pxelinux cp /var/ftp/pub/RHEL7_6/EFI/BOOT/grubx64.cfg /var/lib/tftpboot/pxelinux 3、创建Legacy模式的安装启动文件default mkdir /var/lib/tftpboot/pxelinux/pxelinux.cfg vim default default 0 #默认进label0 timeout 600 #600秒后自动进label1系统安装
prompt 1

label 0 localboot 0 label 1 kernel RHEL7_6/vmlinuz append initrd=RHEL7_6/initrd.img inst.repo=ftp://192.168.64.25/pub/RHEL7_6/ ip=dhcp nomodeset ks=ftp://192.168.64.24/pub/RHEL7_6/ks7_6.cfg 4、创建UEFI模式的引导文件grub.efi vim /var/lib/tftpboot/pxelinux/grub.efi

menuentry 'Install Red Hat Enterprise Linux 7.6' --class fedora --class gnu-linux --class gnu --class os { linuxefi /pxelinux/RHEL7_6/vmlinuz inst.repo=ftp://192.168.64.25/pub/RHEL7_6 ks=ftp://192.168.64.24/pub/RHEL7_6/ks7_6.cfg
initrdefi /pxelinux/RHEL7_6/initrd.img } 5、将/var/lib/tftpboot/pxelinux.0文件拷贝到/var/lib/tftpboot/pxelinux文件夹中 五、重启PXE服务器 六、重启PXE服务器系统下的相关服务 service dhcpd restart service xinetd restart service vsftpd restart service tftp restart

点赞
收藏
评论区
推荐文章
RPM常用命令以及组合使用场景
本文分享自天翼云开发者社区《》,作者:邬祥钊当涉及到管理基于RedHat系的Linux系统时,RPM(RedHatPackageManager)是一个常用的软件包管理器。以下是一些常用的RPM命令以及它们的组合使用场景:常用命令:1.rpmivhpacka
Springfox与SpringDoc——swagger如何选择(SpringDoc入门)
本文分享自天翼云开发者社区@《》,作者:才开始学技术的小白0.引言之前写过一篇关于swagger(实际上是springfox)的使用指南(https://www.ctyun.cn/developer/article/371704742199365),涵盖了
Stella981 Stella981
3年前
Kubernetes教程之新手安装必看(快速浏览少走弯路)
k8s安装关闭防火墙:systemctlstopfirewalldsystemctldisablefirewalld关闭selinux:(博客文档格式可能有问题,如果出问题,则尝试手敲该命令)sedis/enforcing/disabled//etc/selinux/configsetenforce0关闭swap:(云主机貌似默认关了)swapo
Stella981 Stella981
3年前
Linux修改SSH默认端口
本文以centos系统为例:1、关闭防火墙和selinux关闭防火墙centos7systemctlstopfirewalldcentos6serviceiptablesstop关闭selinuxvi/etc/selinux/config
Stella981 Stella981
3年前
Linux源码编译安装MySQL5.7
一、环境准备:我尝试过以下环境都是能成功的:1、CentOS6.7minimal镜像最小化缺省安装;2、RedHat6.5DVD基本服务器安装;3、其他Linux版本未验证。注意系统安装好之后需要配置好网卡,关闭防火墙及SELINUX:\关闭Linux防火墙命令\chkconfigipta
Stella981 Stella981
3年前
Linux中使用vsftpd搭建指定用户指定目录的ftp服务器的方法
一。检查Linux中vsftpd的安装情况。二。将系统中的SELinux关闭,然后重新启动电脑关闭SELinux的方法:修改/etc/selinux/config文件中的SELINUX""为disabled,然后重启。如果不想重启系统,使用命令setenforce0注:setenforce1设置SELinux成为
Stella981 Stella981
3年前
Centos7静默安装oracle11g
安装环境操作系统:CentOS7oracle版本:Oracle11gR2服务器IP:192.168.1.22一、安装前准备关闭selinux和防火墙:禁止selinux:vi/etc/selinux/config把SELINUXenforcing改成SELINUXdis
Wesley13 Wesley13
3年前
LINUX下如何搭建LAMP环境?
第一步1 安装linux系统2 配置linux 网络Vi  /etc/sysconfig/networkscripts/ifcfgeth0IPADDRNETMA
使用element-ui 的上传组件upload完成自定义上传到天翼云oss云服务器
本文分享自天翼云开发者社区@《》,作者:我是小朋友首先配置天翼云,如下操作1、要求在使用OOS之前,首先需要在www.ctyun.cn注册一个账号(Account)。创建AccessKeyId和AccessSecretKey。AccessKeyId和Acc
Dummynet简单部署
本文分享自天翼云开发者社区《Dummynet简单部署》,作者:凸凹部署流程^准备内核版本 ^参看系统内核版本unamer 我们需要将ipfw编译成内核模块,请确保ipfw用到的内核源码版本同你linux系统运行内核版本一致。
天翼云开发者社区
天翼云开发者社区
Lv1
天翼云是中国电信倾力打造的云服务品牌,致力于成为领先的云计算服务提供商。提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。
文章
696
粉丝
15
获赞
40