pxe远程安装服务及无人值守安装

安装PXE远程服务的步骤(安装一台虚拟机做为服务器,300G)

一、准备Centos安装源(yum仓库)

挂载光盘:mount /devcdrom /mnt
永久挂载:vi /etc/fstab ; 添加: /dev/cdrom /mnt iso9660 defaults 0 0
关闭防火墙:systemctl stop firewalld
开机自启:systemctl disable firewalld
关闭核心防御:vi /etc/selinux/config ; 修改 SELINUX=disabled
切换至: cd /etc/yum.repos.d/
建立目录:mkdir backup
移动文件:mv C* backup/
复制数据:cp backup/Centos-Base.repo local.repo
编辑文件:linux

vi local.repo
[centos]
name=CentOS
baseurl=file:///mnt
gpgcheck=0
enabled=1
#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

清除yum缓存:yum clean all
开启本地yum缓存:yum makecacheweb

二、安装并启用TFTP服务

建立目录:mkdir -p /var/ftp/centos7
复制光盘数据:cp -rf /mnt/* /var/lib/centos7
安装vsftpd服务:yum -y -install vsftpd
启动vsftpd服务:systemctl start vsftpd
开机自启:systemctl enable vsftpd
安装TTP服务,服务由tftp-server软件包提供:yum -y install tftp-servercentos

该软件由xinetd超级服务进行管理,所以配置文件位于/etc/xinetd.d/tftp。 配置时只要将“disable=yes” 改成“disable=no”,而后启动xinetd服务便可:缓存

vi /etc/xinetd.d/tftp 
.....................省略内容
改成:disable=no
.....................省略内容

启动tftp服务:systemctl start tftp
开机自启:systemctl enable tftpbash

三、准备Linux内核、初始化镜像文件

切换目录:cd /mnt/images/pxeboot
复制两个文件:cp vmlinux initrd.img /var/lib/tftpboot服务器

四、准备PXE引导程序、启动菜单文件

PXE引导程序为pxelinux.0 由软件包syslinux提供,因此先安装syslinux:
yum -y install syslinux
复制文件: cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot网络

五、安装dhcp服务

安装dhcp: yum -y install dhcp
编辑: vi /etc/dhcp/dhcpd.conf架构

subnet 20.0.0.0 netmask 255.255.255.0 {
option routers 20.0.0.24;
option subnet-mask 255.255.255.0;
option domain-name "bdqn.com";
option domain-name-servers 20.0.0.254,202.106.0.20;
default-lease-time 21600;
max-lease-time 43200;
range 20.0.0.100 20.0.0.200;
next-server 20.0.0.24;                    #####指定 TFTP 服务器的地址
filename "pxelinux.0";                     ####指定 PXE 引导程序的文件名
}

启动dhcp服务:systemctl start dhcpd
开机自启:systemctl enable dhcpdapp

六、配置启动菜单文件

启动菜单用来指导客户机的引导过程,包括如何调用内核,如何加载初始化镜像。默认
的启动菜单文件为 default,应放置在 tftp 根目录的 pxelinux.cfg 子目录下,典型的启动
菜单配置可参考如下操做手动创建。dom

建立文件: mkdir /var/lib/tftpboot/pxelinux.cfg
编辑:vi /var/lib/tftpboot/pxelinux.cfg/default

default auto
prompt 1
   label auto
            kernel vmlinuz
            append initrd=initrd.img method=ftp://20.0.0.24/centos7
   label linux text
            kernel vmlinuz
            append text initrd=initrd.img method=ftp://20.0.0.24/centos7
   label linux rescue
            kernel vmlinuz
            append rescue initrd=initrd.img method=ftp://20.0.0.24/centos7

七、安装一台虚拟机(测试机),内存大于2G,不一样装光盘镜像;进入系统,回车。。。。(测试)

实现Kickstart无人值守安装。(在服务器在配置)

一、安装system-config-kickstart工具,即经过图形化向导工具来配置安装应答文件。

yum -y install system-config-kickstart

二、在服务器切换root用户打开图形界面进行配置:

基本配置:
默认语言:Chinese (P.R. of China)—中文(简体)
键盘:U.S English
时区:Asia/Shanghai
Root密码:abc123
默认密码:abc123
勾选√:给root密码加密
高级配置:
目标架构:X8六、AMD6四、活IntelEm64T
勾选√:安装后重启
不勾选:在文本模式中执行安装(默认为图形化模式)

########安装方法##########
安装方法:
勾选√:执行全新安装

安装方法:
勾选√:FTP
FTP服务器:ftp://20.0.0.254
FTP目录:centos

########引导装载程序选项######
安装类型:
勾选√:安装新引导装载程序

########分区信息##########
在“分区信息”界面中,需正确规划硬盘分区方案。例如,可划分一个 500MB 的/boot
分区、 4GB 的/home 分区、 2GB 的 swap 分区,将剩余空间划分给根分区

/boot xfs 是 500
/home xfs 是 4096
swap swap 是 2048
/ xfs 是 1
########################

#####网络配置及防火墙配置####
在“网络配置”界面中,添加一个网络设备“ens33”,将网络类型设为“DHCP”。
在“防火墙配置”界面中,能够选择禁用 SELinux、禁用防火墙。

#####软件包选择#####
CentOS 7 系统开始再也不提供软件包的选择,若是须要安装软件包,能够根据须要将/root/anaconda-ks.cfg 的软件包安装脚本复制到 ks.cfg 文件中,只须要复制%packages 到%end 部分便可,在%packages 到%end 之间,包含以@开头的软件包列表,将不须要的软件名删除,剩下的就是系统会自动安装的软件包。例如,仅保留如下内容即为采用最小化安装

###其余信息###
若没有特殊需求,在“验证”界面、“显示配置”界面中,保持默认设置就能够了

####安装脚本后####
勾选√:使用解释程序:/bin/bash
在下面键入您的%post脚本:

rm -rf /etc/yum.repos.d/*
echo -e ‘[base]\nname=CentOS7.6\nbaseurl=ftp://20.0.0.254/centos7\nenabled=1
ngpgcheck=1\ngpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7’>/etc/yum.repos.d/centos7.repo

三、切换到字符界面

编辑:vi ks.cfg
在数据最后添加:%packages
@^minimal
%end

四、启动自动应答文件

在 PXE 远程安装服务器中,将上一节创建的应答文件复制到/var/ftp/centos7 目录下,
使客户机可以经过 ftp://20.0.0.254/centos7/ks.cfg 访问;而后编辑引导菜单文件
default,添加 ks 引导参数以指定 ks.cfg 应答文件的 URL 路径。

复制:cp /root/ks.cfg /var/ftp/ks.cfg
编辑:vi /var/lib/tftpboot/pxelinux.cfg/default

default auto
prompt 0
  label auto
       kernel vmlinuz
       append initrd=initrd.img method=ftp://20.0.0.24/centos7 ks=ftp://20.0.0.24/ks.cfg
   (其余几行在开头添加“#”号)

五、验证无人值守安装

在测试机上进行验证:
启用自动应答安装以后,当客户机每次以 PXE 方式引导时,将自动下载 ks.cfg 应答配
置文件,而后根据其中的设置安装 CentOS 7 系统,而无须手工干预,如图 6.8 所示,这样
就能够同时为多台客户机安装系统了。
客户机安装完成之后,检查其 YUM 软件仓库配置,能够发现已经按照“安装后脚本”的
设置自动创建了/etc/yum.repos.d/centos7.repo 文件。

[root@localhost ~]# cat /etc/yum.repos.d/centos7.repo
[base]
name=CentOS7.6
baseurl=ftp://20.0.0.24/centos7
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/ RPM-GPG-KEY-CentOS-7

—————————————————————————————————————————————————————————————————————————————————————————— 到此结束,感谢观看。