Centos7.9 Kickstart自动应答,无人值守安装


  有时候安装一两台服务器是轻松的事,但是如果要安装2,3百台的时候那就不是很轻松了,这时候无人值守的操作系统安装就变得非常重要。通过网络自动安装是非常方便而且快捷的。

先关闭防火墙吧

systemctl stop firewalld
systemctl disable firewalld

1.下载安装ISO

  首先我们想要下载一个要安装的镜像iso,可以去阿里下载要安装的镜像ISO文件,我这里下载的是CentOS-7-x86_64-Minimal-2009.iso。
下载完成之后,上传到一台服务器上。然后把光盘挂载到目录。如果看到挂载目录下有光盘的内容,那就标识成功了。

mkdir -p /mnt/iso
mount /tmp/CentOS-7-x86_64-Minimal-2009.iso /mnt/iso
ll /mnt/iso

在这里插入图片描述

2.安装TFTP

yum install -y tftp-server

在这里插入图片描述
vi /etc/xinetd.d/tftp
修改配置,把disable改为no.

# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        disable                 = no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

启动ftpserver

systemctl start tftp
systemctl enable tftp
systemctl status tftp

在这里插入图片描述

3.拷贝数据文件到ftp目录

拷贝必要文件,建立pxe的默认配置目录

#拷贝镜像文件
cd /var/lib/tftpboot
cp /mnt/iso/isolinux/initrd.img ./
cp /mnt/iso/isolinux/vmlinuz ./


yum install -y syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

#建立pxe的默认配置目录
mkdir  pxelinux.cfg

加入pxe的默认配置
vi pxelinux.cfg/default

default auto
timeout 60 
label auto
   menu default
   kernel vmlinuz
   append initrd=initrd.img repo=http://192.168.124.165/centos7/ ks=http://192.168.124.165/ks.cfg quiet
label linux text
   kernel vmlinuz
   append text initrd=initrd.img method=http://192.168.124.165/centos7/
 
label linux rescue
   kernel vmlinuz
   append rescue initrd=initrd.img method=http://192.168.124.165/centos7/

timeout 默认超时60秒,default auto 默认启动菜单"auto" ,后面的label auto就是菜单,后面的配置就是内核加载,如何加载初始化镜像。在后面的http地址在下一步的时候,我们会建立。

4.安装配置nginx

yum -y install nginx

#增加centos镜像下载地址配置
vi /etc/nginx/conf.d/centosdownload.conf 

配置文件的内容如下,192.168.124.165这个ip是这台服务器的ip

    server {
        listen       80;
        listen       [::]:80;
        server_name  192.168.124.165;

        # Load configuration files for the default server block.
        #include /etc/nginx/default.d/*.conf;
        
        location / {
		autoindex on;
		root "/var/lib/tftpboot/";
	  }

   
    }

#启动nginx,如果出现80端口就代表启动成功
nginx

在这里插入图片描述
把ISO的挂载目录,放入nginx访问地址

ln -s /mnt/iso/ /var/lib/tftpboot/centos7

在这里插入图片描述
通过浏览器打开nginx的访问地址http://192.168.124.165
在这里插入图片描述

5.安装DHCP服务

yum install -y dhcp
#编辑dhcp配置
vi /etc/dhcp/dhcpd.conf

配置文件的配置如下:

subnet 192.168.124.0 netmask 255.255.255.0 {
  interface "ens3";
  range 192.168.124.10 192.168.124.200;
  option domain-name-servers 223.5.5.5;
  option routers 192.168.124.1;
  default-lease-time 600;
  max-lease-time 7200;
  next-server 192.168.124.165;
  filename "pxelinux.0";
}

subnet 指为哪个网段分配网络参数,
range设置为客户端分配的IP地址池,这个可以分配客户端分配从192.168.124.10到192.168.124.200之间的IP地址。
domain-name-servers设置为客户端分配的DNS服务器地址,
routers设置为客户端分配的网关地址。
对网络启动至关重要的参数是next-server和filename,从安装部署流程可以看出,客户端启动计算机通过DHCP获得IP地址后,还需要从TFTP下载启动文件,而next-server设置的即TFTP服务器的地址,filename设置的是在该TFTP文件服务器上共享的启动文件名称,客户端通过这两个参数连接TFTP服务器,并从中下载启动文件

6.配置Kickstart自动应答文件

这是cento7.9的自动应答文件,保存在 /var/lib/tftpboot/ks.cfg,内容如下,这里的root默认密码设置了123456

#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts,键盘布局
keyboard 'us'
# Root password root密码
rootpw --iscrypted $1$rtzAm//y$MScUNgC4bHyZidRwzKlkz/
# System language 系统语言
lang en_US 
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use text mode install 安装模式,text是文本模式,graphical是图形
#text
graphical
# SELinux configuration  selinux配置,这里是关闭
selinux --disabled
# Do not configure the X Window System  是否启动图形界面,这里是启动文本界面,因为是服务器安装
skipx


# Firewall configuration 防火墙是否打开,这里是关闭
firewall --disabled
# Network information  网络模式是dhcp
network  --bootproto=dhcp --device=ens3
# Reboot after installation
reboot
# System timezone  设置时区
timezone Asia/Shanghai
# Use network installation  这里就是镜像安装地址
url --url="http://192.168.124.165/centos7/"
# System bootloader configuration  启动启动模式,这里是mbr
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information  安装是否清理原来磁盘的所有分区
clearpart --all --initlabel
# Disk partitioning information  系统分区格式,/boot 512MB swap 8192M ,其他的全部给根分区
part /boot --fstype="xfs" --size=512
part swap --fstype="swap" --size=8192
part / --fstype="xfs" --grow --size=1

reboot
#这里是需要安装的软件包,core是必须的,net-tools是另外安装的软件
%packages
@^minimal
@core
net-tools
%end

以上的配置文件,也可以通过 system-config-kickstart生成,但是需要图形界面。这一块我们就不讲。

yum -y install system-config-kickstart
#安装后,可以在图形界面,直接启动system-config-kickstart

以上东西准备好后就可以直接用一个客户机来进行网络系统安装了
在这里插入图片描述

在这里插入图片描述
这样就会自动安装完成。

  • 20
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机核动力

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值