使用PXE批量安装Linux RHEL系统
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用PXE批量安装Linux RHEL系统相关的知识,希望对你有一定的参考价值。
给客户装服务器一装就是几十台,又不允许接U盘,只能使用光驱装系统,就开始琢磨PXE安装了,毕竟网线都接好了不用白不用
在网上有很多PXE安装的教程,但总是少那么一点东西,反复翻阅了四五篇教程,总结了一下大体流程
测试系统:CentOS7.4、中标麒麟7.5、RHEL7.2
IP:192.168.242.2,安装了图形化界面(11步需要在图形化界面操作,否则只能手动编写配置文件或进引导后手动安装)
- 以root用户登录,打开命令行终端。一般生产环境建议用普通用户,这里为了防止权限上的问题有报错所以直接上root
- 挂载光盘
mount /dev/sr0 /mnt/
- 编辑yum源,标题名必须是development,因为后面kickstart需要调用这个源才能获取需要安装的软件列表
vim /etc/yum.repos.d/cd.repo
[development]
name=cd
baseurl=file:///mnt/
enabled=1
gpgcheck=0 - 更新yum源信息
yum repolist
- 安装需要的软件,这么一大串装下来,省的后面需要的时候再装
yum install tftp-server dhcp httpd syslinux system-config-kickstart xinetd -y
- 编辑DHCP配置文件,一般建议需要复制模板文件过来修改参数,但我发现实际需要的就这么几行,可能dns也不需要配
vim /etc/dhcp/dhcpd.conf
option domain-name "pxe.local";
option domain-name-servers 192.168.242.2;
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.242.0 netmask 255.255.255.0 {
range 192.168.242.50 192.168.242.100;
next-server 192.168.242.2;
filename "pxelinux.0"; } - 创建镜像目录
mkdir -p /var/www/html/rhel
- 复制安装镜像,其他教程中都是直接挂载过来的,但光盘的速度实在不敢恭维,如果本地服务器是SSD组的raid5,配个万兆网卡做mode4的bond,拷贝到本地速度原地起飞
cp -r /mnt/* /var/www/html/rhel/
- 复制相关文件到 tftp目录
mkdir -p /var/lib/tftpboot/pxelinux.cfg
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
cp /usr/share/syslinux/menu.c32 /var/lib/tftpboot/
cp -r /mnt/isolinux/* /var/lib/tftpboot/
cd /var/lib/tftpboot/
cp isolinux.cfg pxelinux.cfg/default -
修改网络引导配置文件
chmod +r /var/lib/tftpboot/pxelinux.cfg/default
vim /var/lib/tftpboot/pxelinux.cfg/default
把文件开头的timeout值改成30,则进入引导界面的时候等待3秒,默认600等待60秒 - 配置自动安装脚本,如果步骤10中没有配置ks项,可以略过11、12步进行手动安装
system-config-kickstart
设置语言、时区、root密码、安装完成自动重启
安装方法选择HTTP,填写路径
安装新引导程序
清除所有分区,初始化磁盘标签,swap分区根据需求设定,/boot分区200M,/分区选择剩余所有空间。实际安装过程中,会需要/biosefi等各种预设里没有的分区,可以参照anaconda-ks.cfg修改
选择需要安装的软件包
文件→保存 ,文件名默认是ks.cfg保存即可,因为步骤10里指定的就是ks.cfg
系统安装完成之后默认在/root目录下有一个anaconda-ks.cfg ,可以对照这个文件对生成的配置文件进行修改
12 把生成的配置文件复制到HTTP服务器目录
cp /root/ks.cfg /var/www/html/rhel/
13 启动相关服务,有教程说需要关闭SELinux,实际试的时候没关也不影响
systemctl disable firewalld
systemctl stop firewalld
systemctl restart httpd
systemctl restart tftp
systemctl restart dhcpd
systemctl enable httpd
systemctl enable tftp
systemctl enable dhcpd
14.客户端开机通过PXE引导进行安装系统
15.使用完成之后PXE服务器作废,恢复使用之前的状态
yum erase tftp-server dhcp httpd syslinux system-config-kickstart xinetd -y
systemctl enable firewalld
systemctl start firewalld
以上是关于使用PXE批量安装Linux RHEL系统的主要内容,如果未能解决你的问题,请参考以下文章