centos7 搭建pxe批量安装系统
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7 搭建pxe批量安装系统相关的知识,希望对你有一定的参考价值。
实现环境为在win7上虚拟机cenots7系统;pxe:
一般服务器安装系统,都是通过光盘或u盘安装,使用pxe则可通过网络引导安装系统,而且还能自动完成所有安装步骤,下面是具体配置步骤;
1、配置文件共享服务器,可以是nfs、http、ftp协议访问,用于存放要共享的linux系统安装文件;
2、配置tftp服务器,用于提供要安装系统的主机pxe引导所必须的启动文件;
3、配置dhcp服务器,用于给要安装系统的主机提供ip地址及其他信息;
4、使用kickstart文件,用于自动应答操作系统安装;(本文没有实现此功能)
5、要有网卡的pxe功能引导要安装系统的主机;
一般把以上所有服务配置在一台主机上;
说明:
在vmware station上创建2台centos7,且网卡模式设置为vnet3即仅主机模式,一台为pxe主机提供安装系统引导使用,另一台为没有安装操作系统的空机器即待测试通过pxe网络安装系统;
先在pxe主机上安装各种所需服务和配置:
配置本地yum仓库,以安装各种程序包:
vim /etc/yum.repos.d/media.repo
[base]
name=media
baseurl=file:///mnt
enabled=1
gpgcheck=0
cost=100
其它.repo文件都禁用,即把后缀名添加为.bak即可;
一、tftp服务器安装:
tftp服务可以是被xinetd管理的瞬时守护进程,所以,要保证安装了xinetd,再安装tftp;
把centos7安装镜像文件,挂载:
mount -r /dev/cdrom /mnt
安装xinetd:
yum install xinetd
systemctl start xinetd
安装tftp-server:
yum -y install tftp-server
其中:/var/lib/tftpboot目录是存放文件的目录;
chkconfig tftp on
service xinetd restart
注意:tftp监听在udp的69端口
使用客户端连接tftp服务器:
tfpt 192.168.255.11
准备pxe依赖文件:
cp /mnt/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/
cp /usr/share/syslinux/{chain.c32,menu.c32,memdisk,mboot.c32} /var/lib/tftpboot/
pxelinux.0文件需要安装syelinux程序包后才能提供:
yum -y install syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
创建特定目录必须为pexlinux.cfg:
mkdir /var/lib/tftpboot/pxelinux.cfg
并在其目录下创建文件名为default:
vim /var/lib/tftpboot/pxelinux.cfg/default
内容如下:
default menu.c32
prompt 5
timeout 30
MENU TITLE Centos7 PXE Menu
LABEL linux
MENU LABEL Install Centos7 x86_64
KERNEL vmlinuz
APPEND initrd=initrd.img inst.repo=http://192.168.255.11/centos7
#自动安装kickstart文件,没有测试
#LABEL linux_autoinst
#MENU LABEL Install Centos7 x86_64 auto
#KERNEL vmlinuz
#APPEND initrd=initrd.img inst.repo=http://192.168.255.11/centos7 ks=http://192.168.255.11/kickstarts/centos7.cfg
安装dhcp服务:
yum -y install dhcp
vim /etc/dhcp/dhcp.conf
内容如下:
option domain-name "example.org";
option domain-name-servers 114.114.114.114;
default-lease-time 6000;
max-lease-time 72000;
log-facility local7;
subnet 192.168.255.0 netmask 255.255.255.0 {
range 192.168.255.100 192.168.255.200;
option routers 192.168.255.1;
filename "pxelinux.0";
next-server 192.168.255.11;
}
启动服务:
systemctl start dhcpd
systemctl enable dhcpd
ss -unl
dhcp服务监听在udp/67端口;
http服务安装部分省略,可先把网卡设置为桥接模式安装后,再配置:
需要安装程序包的安装树;
mkdir /var/www/html/centos7
mount --bind /mnt/ /var/www/html/centos7
systemctl start httpd
此时文件共享服务能向外提供了;
安装树提供路径是http://192.168.255.11/centos7
pxe主机提供了http服务、tftp服务等;
下面测试pxe,进行安装系统:
由于测试kickstart文件实现无人值守自动安装系统没有成功,故没写这部分;
以上是关于centos7 搭建pxe批量安装系统的主要内容,如果未能解决你的问题,请参考以下文章