RHEL Installation ---- PXE Kickstart

本文详细介绍如何通过PXE Kickstart方式实现RHEL系统的网络自动安装。包括配置NFS、TFTP、FTP、DHCP等服务,以及创建Kickstart脚本文件的方法。
RHEL  Installation
----PXE Kickstart
环境:
server:配置PXE Kickstart等相关服务
client:网卡支持网络启动
要求操作者
会使用  vi编辑器
了解    NFS TFTP FTP(vsftpd) DHCP PXE Kickstart
工作流程:
在作为server的机器上,配置必要服务,并作为安装源;作为client的机器从网络启动后,得到server分配的IP地址,进入PXE程序阶段读取引导文件和相关配置文件,成功网络引导并成功读取Kickstart配置脚本文件,最终实现网络自动安装!
安装步骤:
1.配置NFS,并启动
  用于导出系统安装文件
2.配置tftp,并启动
  用于导出引导文件和PXE配置文件
3.配置ftp(vsftpd),并启动
  用于导出Kickstart配置脚本
4.配置dhcp,并启动
  用于动态分配IP地址
准备工作:
系统安装文件copy到server
关闭server的防火墙等安全机制
# service iptables stop 或 iptables -F
# chkconfig --level 35 iptables off
保证server和client能够ping通
对应操作:
······1······
这步之前已经将系统安装文件xxx.iso放到/home/rhel目录下
# vi /etc/exports
添加:/home/rhel     *(rw,async,no_root_squash)
# exportfs -a
# service nfs restart
# chkconfig --level 35 nfs on
# showmount -e
······2······
# mkdir /home/rhel/cdrom
# mount -o loop /home/rhel/xxx.iso /home/rhel/cdrom
# cp -rv /home/rhel/cdrom/isolinux/*  /tftpboot/
# cp /home/rhel/cdrom/RedHat/RPMS/syslinux-2.11-1.i386.rpm
 /tmp
# cd /tmp
# rpm2cpio syslinux-2.11-1.i386.rpm | cpio -idv
# cp /usr/lib/syslinux/pxelinux.0  /tftpboot
# mkdir /tftpboot/pxelinux.cfg
# vi /tftpboot/pxelinux.cfg/C0A809E1 # 这里不要急着敲命令,先搞懂C0A809E1这个文件名的由来,将192.168.9.225转换为十六进制得到C0A809E1,192对应C0,168对应A8……所以是将分配给客户机的IP地址转换十六进制数作为文件名。这是PXE服务要读取的文件!若客户机有几台,对应的文件就有几个。结合最后的DHCP的配置,若有三台客户机,对应的client1_IP,client2_IP,client3_IP必须转化为十六进制数作为文件名,共三个配置文件。注意,对应的kickstart脚本文件也要依据客户机的情况作改变,若硬件没有不同,则仅需要改变网络设置,否则可能要注意磁盘分区的问题。因此,kickstart脚本文件也为个,与前面xelinux.cfg下的三个文件一一对应!
可以假设一下,client1_IP,client2_IP,client3_IP对应的pxelinux.cfg下的文件C0A809E1,C0A809E2,C0A809E3,对应的kickstart脚本文件ks1,ks2,ks3。并由此修改配置文件!
添加:
LABEL linux
 kernel vmlinuz
 append initrd=initrd.img ks=ftp://server_IP/ks.cfg
ramdisk_size=9216
# vi /etc/xinetd.d/tftp
修改: 
disable=yes -->disable=no
# /etc/init.d/xinetd restart
# chkconfig --level 35 xinetd on
# chkconfig --level 35 tftp on
······3······
生成Kickstart脚本文件
方法一:
# cp /root/anaconda-ks.cfg  /var/ftp/ks.cfg
# vi /var/ftp/ks.cfg
修改:略
方法二:(推荐)
使用Kickstart图形工具
# system-config-kickstart
要点:
语言支持要选全;分区要正确;防火墙要关闭;网络配置要正确;软
件包要选择全部安装等
# service vsftpd restart
# chkconfig --level 35 vsftpd on
······4······
# vi /etc/dhcpd.conf
全部修改为:
deny unknown-clients;
option subnet-mask xxx.xxx.xxx.xxx;
option broadcast-address xxx.xxx.xxx.xxx;
ddns-update-style none;
subnet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx {
   group {
  
          host client1{
   
                        hardware ethernet xx:xx:xx:xx:xx:xx;# 客户机1的网卡地址   
                        fixed-address client1_IP; # 由服务机分配给客户机1的IP地址 
                        filename "pxelinux.0";
                        option routers server_IP; # 服务机的IP地址  
                        option domain-name "cluster";
                        next-server server_IP;
         }
         host client2{
                        hardware ethernet xx:xx:xx:xx:xx:xx;
                        fixed-address client2_IP;
                        filename "pxelinux.0";
                        option tftp-server-name "server_IP";
                        next-server server_IP;
         }
         host client3{
                        hardware ethernet xx:xx:xx:xx:xx:xx;
                        fixed-address client3_IP;
                        filename "pxelinux.0";
                        option tftp-server-name "server_IP";
                        next-server server_IP;  
         }
    }
}
 
# service dhcpd restart
# chkconfig --level 35 dhcpd on
补充说明:
客户机网卡地址查询:开机时选择网络启动可查看到或者进入系统用
ifconfig命令查看

!仅供参考,有问题敬请提出!以便改进~~~~
<script>window._bd_share_config={"common":{"bdsnskey":{},"bdtext":"","bdmini":"2","bdminilist":false,"bdpic":"","bdstyle":"0","bdsize":"16"},"share":{}};with(document)0[(getelementsbytagname('head')[0]||body).appendchild(createelement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new date()/36e5)];</script>
阅读(398) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
### PXE实验配置指南及PXE引导设置教程 #### 1. PXE技术概述 预启动执行环境(Preboot eXecution Environment,PXE)是一种通过网络接口启动计算机的技术[^4]。它允许设备在不依赖本地存储设备或已安装操作系统的情况下启动,广泛应用于自动化操作系统部署和裸金属服务器配置中[^1]。 #### 2. PXE引导的基本组件 一个完整的PXE引导环境通常需要以下组件: - **DHCP服务器**:为客户端分配IP地址并提供TFTP服务器的地址信息。 - **TFTP服务器**:用于传输引导文件(如`pxelinux.0`或` iPXE ROM`)。 - **HTTP/FTP/NFS服务器**(可选):用于提供操作系统镜像或其他资源。 - **引导加载程序**:例如`pxelinux.0`,负责加载内核和初始化ramdisk。 #### 3. 配置步骤 以下是基于Linux系统的PXE引导环境配置指南: #### 3.1 安装必要的服务 在RHEL/CentOS系统中,安装以下软件包: ```bash yum install dhcp tftp-server syslinux httpd -y ``` 确保安装了`syslinux`以获取`pxelinux.0`引导文件[^2]。 #### 3.2 配置DHCP服务器 编辑DHCP配置文件(通常是`/etc/dhcp/dhcpd.conf`),添加以下内容: ```plaintext subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option routers 192.168.1.1; option subnet-mask 255.255.255.0; filename "pxelinux.0"; next-server 192.168.1.1; # TFTP服务器地址 } ``` 上述配置中,`filename`指定了PXE引导文件的名称,`next-server`指定了TFTP服务器的地址[^2]。 #### 3.3 配置TFTP服务器 启用TFTP服务并确保其运行: ```bash systemctl start tftp.socket systemctl enable tftp.socket ``` 将`pxelinux.0`文件复制到TFTP根目录(通常是`/var/lib/tftpboot`): ```bash cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ ``` #### 3.4 配置引导菜单 创建`pxelinux.cfg/default`文件,定义引导菜单选项: ```plaintext DEFAULT menu.c32 PROMPT 0 TIMEOUT 300 MENU TITLE PXE Boot Menu LABEL local MENU LABEL Boot from local disk LOCALBOOT 0 LABEL centos MENU LABEL CentOS 7 Installation KERNEL /centos/vmlinuz APPEND initrd=/centos/initrd.img ks=http://192.168.1.1/ks.cfg ``` 上述配置中,`MENU LABEL`定义了引导选项,`KERNEL`和`APPEND`指定了内核及其参数[^2]。 #### 3.5 配置HTTP服务器 将操作系统的安装镜像上传至HTTP服务器的指定路径,并创建Kickstart文件以实现无人值守安装[^5]。 #### 4. 测试与验证 确保所有服务正常运行后,连接一台支持PXE引导的客户端设备,观察是否成功加载引导菜单并进入安装界面。 #### 5. 扩展功能 如果需要更灵活的功能,可以考虑使用iPXE替代传统PXE[^1],或者利用Dockerized PXE项目快速部署轻量级PXE环境[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值