魏蓝

以梦为马

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

统计

系统的自动化安装应答文件制作

一、自动安装的应答文件

1.实现自动安装前,需要制作对应的安装应答文件,称为kickstart文件,用于保存安装,过程需要指定的选项

2.我们安装centos后本地就有一个anaconda-ks.cfg的文件,就是应答文件

[root@centos8 ~]# vim anaconda-ks.cfg 

 

 

二、kickstart文件格式说明

1.kickstart文件主要包括三个部分:命令段、程序段和脚本段

2.命令段:指明各种安装前配置,如键盘类型等

命令段中的常见命令:

复制代码
keyboard: 设定键盘类型
lang: 语言类型
zerombr:清除mbr
clearpart:清除分区
part: 创建分区
rootpw: 指明root的密码
timezone: 时区
text: 文本安装界面
network:指定网络设置
firewall:设置防火墙设置
selinux:设置selinux设置
reboot:安装完自动重启
user:安装完成后为系统创建新用户
url: 指明安装源
复制代码

3.程序包段:指明要安装的程序包组或程序包,不安装的程序包等

 %packages
 @^environment group: 指定环境包组,如:@^minimal-environment
 @group_name
 package
 -package
 %end

4.脚本段:

%pre: 安装前脚本
 %post: 安装后脚本

5.注意:

  • CentOS 8,7,6 不同版本的kickstart文件格式不尽相同,不可混用
  • %addon, %packages, %onerror, %pre 、 %post 必须以%end结束,否则安装失败

6.示例:使用 system-config-kickstart 来创建ks文件(CentOS7.x)

1).安装system-config-kickstart ,启用xmanager

[root@centos7 ~]# yum -y install system-config-kickstart

[root@centos7 ~]# export DISPLAY=192.168.93.1:0.0
[root@centos7 ~]# system-config-kickstart

2、按需配

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 没加载出来就先保存

 

 出现这个bug我们需要修改配置文件/etc/yum.repos.d/xxx.repo中的base改为development

 

重新再打开

[root@centos7 yum.repos.d]# system-config-kickstart

出来了

 

 恢复刚才的包

 

 

 

 再次保存再centos7上再编辑它

配置yum源

 

 基于ssh的key验证再创建一个用户

 

 至此文件创建结束

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
keyboard 'us'
# Root password
rootpw --plaintext 123456
# System language
lang en_US
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use text mode install
text
firstboot --disable
# SELinux configuration
selinux --disabled
 
 
# Firewall configuration
firewall --disabled
# Network information
network  --bootproto=dhcp --device=eth0
# Reboot after installation
reboot
# System timezone
timezone Africa/Abidjan
# Use network installation
url --url="http://192.168.93.129/centos/7/os/x86_64"
# System bootloader configuration
bootloader --append="net.ifnames=0" --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part / --fstype="xfs" --size=10000
part /boot --fstype="xfs" --size=1000
part /swap --fstype="xfs" --size=2048
%post
mkdir /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
cat > /etc/yum.repos.d/base.repo <<EOF
[development]
name=CentOS
#baseurl=http://192.168.93.129/centos/7/
baseurl=file:///mnt
        https://mirrors.cloud.tencent.com/centos/7/os/x86_64/
gpgcheck=0
enabled=1
 
#[AppStream]
#name=aaaaa
#baseurl=http://mirrors.cloud.tencent.com/centos/7/os/x86_64/
#gpgcheck=0
 
[extras]
name=extras
baseurl=https://mirrors.cloud.tencent.com/centos/7/extras/x86_64/
gpgcheck=0
 
[epel]
name=epel
baseurl=https://mirrors.cloud.tencent.com/epel/7/x86_64/
gpgcheck=1
gpgkey=http://mirrors.cloud.tencent.com/epel/RPM-GPG-KEY-EPEL-7
 
EOF
 
 
mkdir /root/.ssh -m 700
cat > /root/.ssh/authorized_keys <<EOF
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDBrQUDWXbcK/TppT7esuaNAyx9uBRRUgrzfa5DrgU5VcB5KB+OEsXQsG7hXD/2grLgYJ64pCQkQpoC2onmp1P4yc+hqjptV6XU2oBqHIUiKS4mGZQgbyYdcH3hbWUL4IoBK5cSmciuIMA4qCdnSizj9Db0nrK1/46jtreJ1Iq3v
4i0fGu9IfxnM1W/FD0nbm/+L9QigkGcqbrjY0K8mBlTrLvQuzI1YpukkkvPuRaLJ1Rq+cWnpebcayVN5zoJRYiHs21kp4wulAlMP3Gy60Uvshains6bHu+e0JL25bggSn5QVS3aEIa6ba2IGJbnyH9Bqrru957PfUon4cgygfpGB//PahCvHdfXyBi3MCB3+t7Jeo6KSQqsCExGft
blfMBTZzRocOck7uakkFymR04krbVzZe7pUEFx/tqWxBFDqJxiw0xiLRPTNTaTtM1nNTzlJ4c5n8zxCY4f0SRa7vqkCUknyDsPDX8QahnansSBhBny8rRcQS+p7INdBrOdayc= root@centos8
EOF
chmod 600 /root/.shh/authorized_keys
 
useradd linuxn64
echo 123456 | passwd --stdin linuxn64
 
%end
 
%packages
@web-server
 
%end 

3.检查此文件语法

[root@centos7 ~]# ksvalidator ks7.cfg 

4.将其传到centos8仓库中

[root@centos8 .ssh]# mkdir /var/www/html/ks
[root@centos7 ~]# scp ks7.cfg 192.168.93.129:/var/www/html/ks/centos7.cfg

 

 

 

我们现在就可以用它进行安装了。

5.利用此文件进行安装

 效果如下:

 

 

 

posted on   魏蓝  阅读(784)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示