环境准备中遇到的问题

首先需要将系统镜像挂载到 /mnt:

#mount /dev/sdd2 /mnt/usb_disk 将U盘挂载

#cp rhel-server-7.6-x86_64-dvd.iso /home 系统镜像拷到本地

#mount -o loop rhel-server-7.6-x86_64-dvd.iso /mnt

问题:ifconfig命令未找到

解决:#cd /sbin 查看此目录下是否有ifconfig,若没有,则需要安装

安装:#sudo yum install net-tools

问题:vim命令未找到

解决:#rpm -qa |grep vim

vim-enhanced-7.0.109-7.el5

vim-minimal-7.0.109-7.el5

vim-common-7.0.109-7.el5

若缺少上面任意一条(如vim-enhanced-7.0.109-7.el5),则执行

#yum -y install vim-enhanced来安装

若三条都没返回,则执行

#yum -y install vim*

问题:如何根据ifconfig显示网口名定位服务器上网口位置

#ethtool -p enp24s0

问题:解决yum源配置

#cd /etc/yum.repos.d

#vim base.repo

[base]

name=redhat

gpgcheck=0

enabled=1

:wq

#yum clean all

#yum makecache

#yum -y install

若有Python版本问题,查看解释器路径:

#whereis python

#/usr/lib/python2.6 /usr/lib64/python2.7

#vim /usr/bin/yum

#! /usr/bin/python 改为 #! /usr/bin/python2.7

#yum -y install

PXE引导的步骤:

1、开机后选择网络启动,client端向server端的dhcpd发起获取IP地址的dhcp请求。

2、server端分配IP后,dhcpd会同时根据其配置文件,通过TFTP协议发送引导文件给client端,即bootloader。

3、对于传统Legacy BIOS,一般使用syslinux提供的pxelinux.0来引导。对于EFI BIOS,需要使用efi文件引导,一般可使用Grub2。为实现UEFI SecureBoot,大多数Linux使用shim.efi嵌套调用grub.efi来引导。

4、传统Legacy BIOS引导,在pxelinux.0引导后,它会请求并加载server端tftpboot目录中,与pxelinux.0同目录下的pxelinux.cfg目录里的default文件,这个文件就是syslinux的引导配置文件,相当于grub2的grub.cfg。

5、EFI BIOS引导,在shim.efi嵌套引导了grubx64.efi之后,它会请求grubx64.efi同目录下的grub.cfg配置文件,同时加载显示引导菜单。而对于RHEL6来说,它并不支持SecureBoot,所以必须要使用grub-efi 0.97来引导,一般是BOOTX64.efi,同时它会请求同目录下的efidefault配置文件,加载并显示引导菜单。

6、在pxelinux.0/grub加载了引导配置之后,就可以选择引导项安装了,引导项必须要包含内核以及initrd,还可以包含其它的一些引导选项,比如键盘、语言、远程repo、kickstart配置文件等等。

7、内核和initrd加载之后,就可以进到安装界面正常安装了。

一、[首先将]找两台服务器,将两台服务器的IPMI端口同时连接到同一交换机,方便PC端管理:

1、将IPMI的IP adress改为动态分配,目的是让三台机器的IP在同一网段;

2、进入BIOS,Server Mgmt——Configuration address source [DHCP]

Server Mgmt——Configuration address source [DynamicBmcDhcp]

保存重启,进入BIOS,BMC Network Configuration下的Station IP adress为交换机分配的IP;

PC端登录Client 和Server的BMC IP,管理界面。

二、开始搭建,Server端使用redhat7.3系统:rhel-server-7.3-x86_64-dvd.iso,通过Legacy模式安装

1、首先找一块Server端的网卡,用作dhcpd,给Client分配IP;

#cd /etc/sysconfig/network-scripts

#vim ifcfg-enp24s0

TYPE=Ehernet

DEVICE=enp24s0

BOOTPROTO=static

IPADDR=1.1.1.2

NETMASK=255.255.255.0

ONBOOT=yes

实际操作图:

2、关闭防火墙及清空策略

#systemctl stop firewalld.service

#systemctl disable firewalld.service

#iptables -F

#iptables -L -n

3、为防止操作过程中缺少相应的安装包,将redhat7.3系统镜像拷贝到系统下,并挂载到本机

#cp rhel-server-7.3-x86_64-dvd.iso /mnt

#mkdir /mnt/rhel7

#mount -o loop rhel-server-7.3-x86_64-dvd.iso /mnt/rhel7

4、Server端安装软件包

#yum install xinetd tftp tftp-server dhcp syslinux

#rpm -qa xinetd tftp tftp-server dhcp syslinux

#yum install xinetd tftp tftp-server dhcp syslinux

5、配置好Server网卡的IP,网段即DHCP服务器的网段,编辑dhcpd.conf文件

#cd /etc/dhcp/

#vim dhcpd.conf

option architecture-type code 93 = unsigned integer 16;

subnet 192.168.3.0 netmask 255.255.255.0

{

range 192.168.3.10 192.168.3.20;

option routers 192.168.3.3;

next-server 192.168.3.3;

class "pxeclients" {

match if substring

(option vendor-class-identifier, 0, 9) = "PXEClient";

if option architecture-type = 00:07 or option architecture-type = 00:09 {

# EFI BIOS

filename "images/shim.efi";

# filename "images/BOOTX64.efi";

} else {

# Legacy non-EFI BIOS

filename "pxelinux.0";

}

}

}

实际操作图:

6、dhcp根据配置文件,通过tftp发送引导文件给Client,将引导文件全部放入tftpboot文件包下:

pxelinux启动(tftp):配置文件

#mkdir -p /var/lib/tftpboot/pxelinux.cfg #用于存放系统镜像里的default引导文件

#mkdir -p /var/lib/tftpboot/images/rhel7 #用于存放系统镜像里的initrd.img和vmlinuz文件

#cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot #对于传统的LegacyBIOS一般用syslinux提供的pxelinux.0引导

#cp /mnt/rhel7/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default #pxelinux.0引导后,请求加载server端tftpboot目录中,与pxelinux.0同目录下的pxelinux.cfg目录里的default文件,这个文件就是syslinux的引导配置文件,相当于grub2的grub.cfg。

#cp /mnt/rhel7/isolinux/boot.msg /mnt/rhel7/isolinux/vesamenu.c32 /var/lib/tftpboot #pxelinux.0/grub加载了引导配置后,就可以选择引导项安装,引导项必须要包含内核以及initrd等

#cp /mnt/rhel7/isolinux/vmlinuz /mnt/rhel7/isolinux/initrd.img /var/lib/tftpboot/images/rhel7/

#touch /var/lib/tftpboot/images/gurb.cfg #为实现UEFI Secureboot,大多数Linux使用shim.efi嵌套调用gurb.cfg来引导

#touch /var/lib/tftpboot/images/efidefault #BOOTX64.efi引导的同时会请求同目录下的efidefault配置文件,加载并显示引导菜单

#cp /mnt/rhel7/EFI/BOOT/BOOTX64.EFI /var/lib/tftpboot/images/ #RHEL6来说,它不支持SecureBoot,所以必须要使用gurb-efi 0.97来引导,一般是BOOTX64.efi

#cp /boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot/images/ #为实现UEFI SecureBoot,大多数Linux使用shim.efi嵌套调用gurb.efi来引导

#cp /boot/efi/EFI/redhat/grubx64.efi /var/lib/tftpboot/images/ #EFI BIOS引导,在shim.efi嵌套引导了grubx64.efi之后,它会请求grubx64.efi同目录下的grub.cfg配置文件,同时加载显示引导菜单

若当前server不是RHEL7的EFI模式安装,则需从RHEL7光盘中提取shim.efi和gurbx64.cfg

#cp /mnt/rhel7/Packages/gurb2-efi-2.02-0.44.el7.x86_64.rpm /tmp/

#cp /mnt/rhel7/Packages/shim-0.9-2.el7.x86_64.rpm /tmp/

#rpm2cpio /tmp/gurb2-efi-2.02-0.44.el7.x86_64.rpm | cpio -dimv

#rpm2cpio /tmp/shim-0.9-2.el7.x86_64.rpm | cpio -dimv

#cp /tmp/boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot/images/

#cp /tmp/boot/efi/EFI/redhat/gurbx64.efi /var/lib/tftpboot/images/

#tree /var/lib/tftpboot

实际操作图:

7、编辑xinted的tftp配置文件,使tftp server生效

#vim /etc/xinted.d/tftp

将disable = yes 改成disable = no,保存并退出

实际操作图:

8、将RHEL安装光盘的挂载目录使用NFS export出去

#vim /etc/exports

/mnt/rhel7 *(ro)

/mnt/ *(ro)

实际操作图:

9、重启必须的服务

#systemctl restart dhcpd

#systemctl restart xinetd

#systemctl restart nfs

#systemctl status dhcpd #同时查看xinetd和nfs,是否为active

10、对于Legacy BIOS模式PXE引导安装,client端通过DHCP获取到地址后,会通过TFTP协议get pxelinux.0这个引导文件,然后继续get pxelinux.cfg目录下的default文件,加载之后显示引导菜单,下面为/pxelinux.cfg/default引导配置文件的详例,原配置基础上在 menu end前添加下面label即可:

#vim /var/lib/tftpboot/pxelinux.cfg/default

label rhel7+pxe

menu label ^Install RHEL7.3 via PXE+Kickstart

menu default

kernel images/rhel7/vmlinuz

append initrd=images/rhel7/initrd.img inst.repo=nfs:192.168.3.3:/mnt/rhel7/

实际操作图:

上述为PXE+NFS引导手动安装,若想使用Kickstart全自动安装,则需对上述配置做修改:

#vim /var/lib/tftpboot/pxelinux.cfg/default

label rhel7+pxe

menu label ^Install RHEL7.3 via PXE+Kickstart

menu default

kernel images/rhel7/vmlinuz

append initrd=images/rhel7/initrd.img inst.ks=nfs:192.168.3.3:/mnt/rhel7/

11、对于EFI模式下的RHEL7 PXE引导,需dhcpd.conf指定filename "images/shim.efi",以支持UEFI SecureBoot。通过TFTP把shim.efi加载后会继续嵌套加载引导通目录下的gurbx64.efi,然后gurb会获取同目录下的grub.cfg以显示引导菜单。下面为/var/lib/tftpboot/images/gurb.cfg配置详例:

#vim /var/lib/tftpboot/images/gurb.cfg

menuentry 'Install RHEL 7.3 via [UEFI] PXE+Kickstart' {

linuxefi images/rhel7/vmlinuz inst.repo=nfs:192.168.3.3:/mnt/rhel7/ #切记等号两边无空格

initrdefi images/rhel7/initrd.img

}

实际操作图:

若想使用Kickstart全自动安装RHEL7,可参考

#vim /var/lib/tftpboot/images/gurb.cfg

menuentry 'Install RHEL 7.3 via [UEFI] PXE+Kickstart' {

linuxefi images/rhel7/vmlinuz inst.ks=nfs:192.168.3.3:/mnt/rhel7/

initrdefi images/rhel7/initrd.img

}

对于redhat6的系统安装,需要

12、对于EFI模式下RHEL6 PXE引导,需要dhcpd.conf指定filename "image/BOOTX64.efi",它其实是grub 0.97。通过TFTP加载了BOOTX64.efi之后它会继续加载同目录下的efidefault引导配置文件,并显示引导菜单。下面为/var/lib/tftpboot/images/efidefault配置详例:

#vim /var/lib/tftpboot/images/efidefault

default=0

timeout=3

title Install RHEL 6.8 via [UEFI] PXE+Kickstart

root (nd)

kernel /rhel6/vmlinuz repo=nfs:192.168.3.3:/mnt/rhel6/ ip=dhcp lang=en keymap=us

initrd /rhel6/initrd.img

实际操作图:

若想使用Kickstart全自动安装RHEL7,可参考

default=0

timeout=3

title Install RHEL 6.8 via [UEFI] PXE+Kickstart

root (nd)

kernel /rhel6/vmlinuz ks=nfs:192.168.3.3:/mnt/rhel6/ ip=dhcp lang=en keymap=us

initrd /rhel6/initrd.img

13、启动Client端机器,使之和server端网络能通。正常情况下,Client端应该能获取到IP地址,并根据TFTP获取到相应的引导文件,引导到RHEL默认的安装界面,或通过kickstart自动开始安装。

14、若整个过程中有问题,可查看server端的日志,/var/log/messages,dhcpd每次给PXE分配地址、tftp发送文件给Client端,以及Client端挂载NFS的目录,都会在这个文件里有记录。

pxe装机dhcp获取不到_关于PXE服务器环境搭建流程中遇到的问题及解决方法相关推荐

  1. pxe装机dhcp获取不到_通过PXE安装系统失败后的解决办法

    用户如无法正常为服务器在线安装操作系统,请参考下列解决办法. 一. 提示:Media test failure,check cable 故障现象:1. 看到PXE启动,并提示 Media test f ...

  2. pxe装机dhcp获取不到_小白三步装机版重装系统

    每天进步一点点,点击上方蓝色字体关注我! (。・∀・)ノ゙嗨,大家好! 这里是老白,互联网优质资源分享者 置顶星标 不要错过每一篇好文章! 你不置顶星标,老白就很有可能再也见不到你们了 防失联,还请置 ...

  3. pxe装机dhcp获取不到_Windows – PXE启动无法通过DHCP获取IP地址,但DHCP在操作系统启动时有效...

    我正在尝试PXE启动Cisco UCS C240服务器以通过网络安装新操作系统,但它在启动期间没有通过DHCP获取IP地址.我从英特尔Boot Agent中收到"未收到DHCP或proxyD ...

  4. 电脑ping不通 plsql能连上_台式电脑不能上网手机却能连上wifi无线网络的解决方法...

    今天台式电脑有线网络不能上网,路由器上的三个灯也是亮着,并且手机可以连得上WiFi无线网络可以正常上网,路由器也重启了也没有办法解决问题,在台式电脑上查看了本地连接也是正常的,设备管理中的网卡驱动也是 ...

  5. 笔记本电脑怎么清理灰尘_笔记本电脑玩游戏发热怎么办?笔记本玩游戏发烫解决方法...

    笔记本的便携性是台式机无法比拟的,轻薄便携性是笔记本最大的优势之一,尤其是经常出差的人士.学生,显得十分方便.不过笔记本由于内部空间狭窄,所以散热能力就会受到限制,散热几乎是笔记本电脑的通病,并无法通 ...

  6. 无法上网dns转发_苹果笔记本上网很慢怎么回事?macbook无线上网慢的解决方法...

    Mac笔记本连接到WiFi之后,发现网速很慢,简直让人无法接受,打开一个页面都要等上好几分钟.苹果笔记本上网很慢的原因有很多,检查一下WiFi信号是满格,那么排除所在网络带宽限制的原因.想要解决此问题 ...

  7. mbp网速很慢_苹果笔记本上网很慢怎么回事?macbook无线上网慢的解决方法

    Mac笔记本连接到WiFi之后,发现网速很慢,简直让人无法接受,打开一个页面都要等上好几分钟.苹果笔记本上网很慢的原因有很多,检查一下WiFi信号是满格,那么排除所在网络带宽限制的原因.想要解决此问题 ...

  8. 联想笔记本声音太小怎么办_笔记本声音太小,详细教您笔记本电脑声音太小解决方法...

    网友们在玩电脑游戏时,会遇到声音会很小的情况,如果笔记本游戏声音小的话,会让我们在使用笔记本时不自在,然而,笔记本声音小是低端笔记本的一个通病.那么该怎么去解决呢?下面,小编就来跟大家介绍笔记本电脑声 ...

  9. python服务器环境搭建_服务器python环境搭建

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python搭建服务器以快捷著称,实际上,我们也可以使用python搭建简易的服 ...

最新文章

  1. 实现一个简单的WebSocket聊天室
  2. VS2008 Tips #004 – 您可以通过“浏览方式…”添加浏览器到 Visual Web Developer
  3. 【计算理论】上下文无关语法 ( 代数表达式 | 代数表达式示例 | 确定性有限自动机 DFA 转为 上下文无关语法 )
  4. python绘制图像的参数_图像绘制.draw.line():系统错误:新样式getargs格式,但参数不是tup...
  5. 解决:Error response from daemon: manifest for xxx:latest not found: manifest unknown...
  6. ssh 无法连接 z/OS 主机
  7. 书评:学会提问——批判性思维指南
  8. python 指定时间运行代码
  9. BAT面试高级进阶,Java架构师之路
  10. 24V电磁铁电磁特模块电路分析
  11. CSS基础——简单的文字样式
  12. Python练习题答案: 第一步,成为百万富翁 - 汇率卡塔【难度:2级】--景越Python编程实例训练营,1000道上机题等你来挑战
  13. bugzilla dbd-mysql_Ubuntu搭建bugzilla
  14. 初中英语语法(015)-附加疑问句
  15. 接口测试的测试用例该怎么写呢?
  16. vcard文件怎么导入手机_如何从单个vCard(.vcf)文件将多个联系人导入Outlook 2013
  17. 阿里云发布企业云原生IT成本治理方案:五大能力加速企业 FinOps 进程
  18. windows 10 笔记本无法连接无线网,显示已关闭
  19. 狄利克雷分布主题模型LDA
  20. storm流程——storm

热门文章

  1. 《Cocos2D权威指南》——3.9 本章小结
  2. appium 环境搭建(不推荐安装此版本appium,推荐安装appium desktop)
  3. python入门(5)使用文件编辑器编写代码并保存执行
  4. 全栈测试:平衡单元测试和端到端测试
  5. oracle复习笔记
  6. DataUml Design 介绍8-DataUML 1.2版本正式发布
  7. 翻译:Asp.net中多彩下拉框的实现
  8. 隐藏自己电脑的IP地址
  9. 分布与并行计算—用任务管理器画CPU正弦曲线(Java)
  10. 我如何在昌迪加尔大学中心组织Google Hash Code 2019