kickstart自动安装脚本制作及PXE网络安装环境

kickstar自动安装脚本制作(以rhel7为例)

1.基础配置

在虚拟机的虚拟网络编辑器上关闭DHCP服务,避免与实验安装的DHCP产生冲突

配置网络可用

2.安装并开启图形界面

init:0——关机;1——单用户模式;2、3、4——有网络的多用户模式;5——有图形的用户模式

[root@localhost ~] yum group install "server with GUI" -y #安装图形界面
[root@localhost ~] init 5 #开启图形界面
[root@localhost ~] ls /root/
anaconda-ks.cfg  Documents  init_ip.sh  Pictures  Templates
Desktop          Downloads  Music       Public    Videos
[root@localhost ~] cat /root/anaconda-ks.cfg #系统自动生成的文件,记录了系统在安装过程中的所有设定
3.下载生成kickstart工具,并生成ks.cfg文件
#安装图形化生成kickstart的工具
[root@localhost ~] yum install system-config-kickstart  
#启动制作工具 
[root@localhost ~] system-config-kickstart  

 
[root@localhost ~] yum install httpd -y
[root@localhost ~] systemctl enable  --now httpd #下载并启动apache
[root@localhost ~] ln -s /rhel7.9/ /var/www/html/ 
#因为/rhel7.9已经挂载过,所以使用软连接使其能够在/var/www/html/下看到
[root@localhost ~] cd /var/www/html/
[root@localhost html] ll
total 4
-rw-r--r--. 1 root root 1205 Aug  4 17:55 ks.cfg
lrwxrwxrwx. 1 root root    9 Aug  4 11:25 rhel7.9 -> /rhel7.9/

在root下会生成一个ks.cfg文件

[root@localhost ~] vim ks.cfg # 通过以上步骤生成的
#修改一下文件内容

[root@localhost ~] cp /root/ks.cfg /var/www/html/
4.新建虚拟机

打开后光标选择第一个点击tab,输入ks=http://172.25.254.102/ks.cfg

由于当前虚拟机没有DHCP服务,所以会显示失败,实验完成

搭建DHCP服务并测试kickstart脚本

由于模拟的是生产环境,是不能通过VMware对IP进行分配的,因为外部的环境是不能使用VMware的DHCP池。

DHCP的作用:为其他提供分配ip的功能

1.安装dhcp,生成配置文件
[root@localhost ~] yum install dhcp -y
[root@localhost ~] cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf #将模板覆盖为dhcpd.conf便于修改,如果不想要提示是否覆盖,在cp前加上\转义符,表示\cp为真实的cp
2.修改配置文件
[root@localhost ~]vim /etc/dhcp/dhcpd.conf

表示35行以后删除

按照本机设置修改

[root@localhost ~] systemctl enable --now dhcpd
3.按照上一实验步骤4继续进行

PXE网络安装环境实现服务器自动部署

PXE原理:如果主机A安装好DHCP,主机B没有系统且选择从网卡启动;主机B向主机A发送广播要IP,主机A响应之后向主机B发送包含IP的数据包。通过DHCP主机A向主机B发送一个文件地址,主机B就能通过这个文件地址去主机A上读取对应文件(pxelinux.0),通过此方法读取到主机A上的url就能在主机B上进行系统的安装

步骤:

[root@localhost html] yum search pxelinux
[root@localhost html] yum install syslinux.x86_64
[root@localhost html] yum install tftp-server.x86_64 #共享pxelinux .0数据文件的网络服务
[root@localhost html] systemctl enable --now tftp
[root@localhost html] rpm -ql tftp-server 
/etc/xinetd.d/tftp
/usr/lib/systemd/system/tftp.service
/usr/lib/systemd/system/tftp.socket
/usr/sbin/in.tftpd
/usr/share/doc/tftp-server-5.2
/usr/share/doc/tftp-server-5.2/CHANGES
/usr/share/doc/tftp-server-5.2/README
/usr/share/doc/tftp-server-5.2/README.security
/usr/share/man/man8/in.tftpd.8.gz
/usr/share/man/man8/tftpd.8.gz
/var/lib/tftpboot #通过查询得知所有的数据都应放在这个目录下

通过对比两图可知从网卡启动的界面实际上就是光盘中的isolinux文件

[root@localhost isolinux] cp /rhel7.9/isolinux/* /var/lib/tftpboot/
[root@localhost isolinux] cp /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/ #拷贝到 /var/lib/tftpboot中
[root@localhost tftpboot] mkdir pxelinux.cfg
[root@localhost tftpboot] cp isolinux.cfg pxelinux.cfg/default 
[root@localhost tftpboot] vim /etc/dhcp/dhcpd.conf
# This is a very basic subnet declaration.
​
subnet 172.25.254.0 netmask 255.255.255.0 {
  range 172.25.254.30 172.25.254.40;
  option routers 172.25.254.2;
  next-server 172.25.254.102;#tftp所在的主机
  filename "pxelinux.0";
}
[root@localhost tftpboot] systemctl restart dhcpd #修改之后重启
[root@localhost tftpboot] vim /var/lib/tftpboot/pxelinux.cfg/default #修改网卡启动出现的界面 

模拟第一次启动

选择第一个进入后开始自动下载安装,结束后再次返回此界面。退出后改为默认以硬盘方式启动即完成

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值