linux系统服务-PXE批量部署kickstart无人值守
Posted 可乐卷儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux系统服务-PXE批量部署kickstart无人值守相关的知识,希望对你有一定的参考价值。
文章目录
一、PXE技术
1、概述
PXE全称:preboot execute environment,批量部署;PXE是用来通过网络引导系统的,也是一种C/S架构;不是一种服务,是多种服务形成一个技术
2、包含的服务器:
- DHCP服务器:用于为需要PXE服务的主机提供IP、定位引导程序
- TFTP服务器(简单文件传输协议):系统引导文件pxelinux.0文件,用于引导程序下载;使用udp69端口,是一个小而易于实现的文件传送协议
- 容易实现、速度快、不验证身份权限等,客户端请求文件就给他
- 一般用作于小文件的传输
- 包含内核文件和驱动文件,通过复制centos7的光盘里的内核和驱动文件
- pxelinux.0文件通过yum下载某一个软件获得
- FTP服务器:存储软件包;通过挂载centos7的光盘ftp获得软件包
3、工作原理
- 客户端向dhcp服务器发送广播,请求ip地址
- dhcp服务器响应客户端请求,分配地址池中的可用地址给客户端
- dhcp服务器提供tftp服务器的地址,引导客户端去tftp服务器取得系统所需的引导文件
- 客户端需要系统启动的内核文件和驱动文件
- 当操作系统安装之后需要一些软件包,客户端向ftp服务器请求(寻找软件包)
二、kickstart无人值守技
- 创建应答文件,预先定义好各种安装设置
- 免去交互设置过程,从而实现全自动化安装
三、实操
1、配置PXE
1.1、实验环境
服务器网卡配置文件,配置net模式下载软件包
服务器增加一张网卡,配置vm1仅主机模式,用于实验测试
1.2、安装软件
hostname server #服务器改名
yum -y install dhcp #安装dhcp服务
cp -p /usr/share/doc/dhcp*/dhcpd.conf.exampl
/etc/dhcp/dhcpd.conf #复制内容到dhcp主配置文件内
vim /etc/dhcp/dhcpd.conf #编辑dhcp配置文件
next-server 192.168.10.100 #指定tftp服务器的ip地址
systemctl start dhcpd #开启dhcp服务
yum -y install tftp-server.x86_64 #下载tftp服务
rpm -ql tftp-server #查询tftp所有安装完成的软件并找到其家目录
/var/lib/tftpboot #tftp家目录
yum provides */pxelinux.0 #查询包含支持pxelinux.0文件的软件包
syslinux提供了pxe的引导文件
yum -y install syslinux # 安装syslinux服务,得到系统引导文件,在tftp的家目录/var/lib/tftpboot/
rpm -ql syslinux | grep pxe #查询已安装的软件名包含pxe
cp -p /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #引导文件复制到tftp的家目录内挂载
挂载目录下包含:内核执行文件:vmlinuz 驱动伪文件系统:initrd.img
/mnt/images/pxeboot # pxeboot光盘的目录
cp vmlinuz initrd.img /var/lib/tftpboot/ #内核执行文件和驱动伪文件系统复制到tftp家目录
tftp家目录包含:系统引导文件:pxelinux.0;内核执行文件:vmlinuz;驱动伪文件系统:initrd.img
yum -y install vsftpd # 安装ftp服务
mkdir /var/ftp/centos7 #vsftp默认的共享目录/var/ftp下创建一个目录centos7,专门存放所需的文件
cp -rf /mnt/* /var/ftp/centos7/ #挂载点下所有的文件复制到ftp共享目录下
mkdir pxelinux.cfg #创建存放菜单文件的目录
isolinux.cfg #找到真正的菜单文件
cp -p isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default #菜单文件内的内容复制到pxelinux.cfg目录下的空文件defaule
vim /var/lib/tftpboot/pxelinux.cfg/default #查看菜单文件内容
cp -p splash.png vesamenu.c32 /var/lib/tftpboot/ #复制背景图和图形化到tftp家目录下
ls /var/lib/tftpboot/ #查询tftp家目录内容
vim /var/lib/tftpboot/pxelinux.cfg/default #打开菜单文件
menu title PXE CentOS7 install # 更改菜单标题
只留lanle linux 其余删除
1.3、启动服务
systemctl start vsftpd #开启vsftp服务
vim /etc/xinetd.d/tftp #tftp是由xinetd管家管理的,若开启的话,需要编辑
systemctl start tftp # 启用tftp服务
netstat -anup | grep * # 验证端口是否开启;TFTP:udp69端口;FTP:21端口
1.4、安装PXE
客户机Bios选择Network boot 进入安装
回撤即可安装
2、kickstart无人值守
2.1、下载kickstart工具
yum install -y system- config-kickstart #在 CentOS 7系统中安装system- config- kickstart工具
2.2、安装kickstart无人值守
-
通过图形化向导工具来配置安装应答文件
- 调用Kickstart2种方法
- 一种直接点击图标
- 第二种通过命令调用
system-config-kickstart
- 一种直接点击图标
- 调用Kickstart2种方法
-
如果用户对自动应答文件的配置比较熟悉,也可以直接编辑CentOS 7
安装后自动创建的应答文件(/root/anaconda-ks.cfg) ,根据需要适当修订后使用
2.3、具体配置
验证默认,无须更改
vim /etc/yum.repos.d/CentOS-Base.repo #编辑yum配置文件
保存在root目录下
查询root,产生文件ks.cfg,就是kickstart配置程序
vim ks.cfg
不勾选,配置文件直接显示密码
把ks.cfg拷贝到vsftp家目录下
2.4、自动读秒
vim /var/lib/tftpboot/pxelinux.cfg/default #服务器配置更改内容
无须手动选择菜单回撤,直接自动安装
以上是关于linux系统服务-PXE批量部署kickstart无人值守的主要内容,如果未能解决你的问题,请参考以下文章
linux系统服务-PXE批量部署kickstart无人值守