Linux Kickstart配置、使用备忘

2020-05-18  本文已影响0人  mini鱼

Linux Kickstart 备忘

简介

kickstart是一个利用Anconda工具实现服务器自动化安装的方法;通过生成的kickstart配置文件ks.cfg,服务器安装可以实现从裸机到全功能服务的的非交互式(无人值守式)安装配置。ks.cfg是一个简单的文本文件,文件包含Anconda在安装系统及安装后配置服务时所需要获取的一些必要配置信息(如键盘设置,语言设置,分区设置等);Anconda直接从该文件中读取必要的配置,只要该文件信息配置正确无误且满足所有系统需求,就不再需要同用户进行交互获取信息,从而实现安装的自动化。

简书参考

RedHat上的介绍

开始KickStart安装

RedHat详细boot参数

将ks文件放到web服务器(ftp或者u盘都可以)上
在进入系统引导界面后,按ESC,在boot提示符下,输入:

boot: linux ks=http://192.168.0.1/ks.cfg

如果网络内没有DHCP服务需要配置IP启动:

boot: linux ip=192.168.0.2 netmask=255.255.255.0 gateway=192.168.0.1 ks=http://192.168.0.1/ks.cfg

注:此处设置的ip地址是为了访问web服务设置,与系统安装后的ip地址不同

指定网卡:
boot: linux ks=http://172.16.1.201/ks_config/CentOS7-ks.cfg net.ifnames=0 biosdevname=0 ksdevice=eth1

生成ks文件的方式

  1. RedHat系版本安装完后自动生成的文件

    RedHat系版本安装完后在/root目录下会生成ks文件:anaconda-ks.cfg, 可以直接拿来使用

  2. 使用Kickstart Configurator图形界面创建和修改 kickstart 文件

    参考 RedHat KICKSTART CONFIGURATOR

    yum install system-config-kickstart
    启动 Kickstart Configurator,请将系统引导至图形环境,然后运行 system-config-kickstart,或在 GNOME 桌面上点击 应用程序 → 系统工具 → Kickstart,或者在 KDE 桌面上点击 开始应用程序启动器+应用程序 → 系统 → Kickstart。
    
  3. 根据模板进行修改

    Github CentOS模板

    CentOS 6 模板

# Kickstart file automatically generated by anaconda.

#version=DEVEL
zerombr
install
cdrom
lang en_US.UTF-8
keyboard us
network --onboot yes --device eth0 --bootproto dhcp --hostname=localhost.localdomain
rootpw  pwd_change_me
firewall --disable
authconfig --enableshadow --passalgo=sha512
selinux --disabled
timezone --utc Asia/Shanghai
bootloader --location=mbr --driveorder=vda --append="crashkernel=auto console=ttyS0 console=tty0"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --linux --drives=vda

#part / --fstype=ext4 --grow --asprimary --size=200

#repo --name="CentOS"  --baseurl=cdrom:sr0 --cost=100

# Partition clearing information
clearpart --none --initlabel
# Disk partitioning information
part / --fstype="ext4" --ondisk=vda --size=20479

%packages --excludedocs
#@base
@core
#@development
#@server-policy
wget
telnet
sysstat
#vim

%end

%post
# sh post.sh
%end

reboot

CentOS 7 模板

#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=vda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8

# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on --ipv6=auto
network  --hostname=localhost.localdomain

# Root password
rootpw pwd_change_me
# 密码加密
#rootpw  --iscrypted $6$Ka7MzfgRm5CS9N22$cMgIl

#Firewall configuration
#禁用防火墙
firewall --disabled

#SELinux configuration
#禁用selinux
selinux --disabled

# System services
services --enabled="chronyd"
# System timezone
timezone --isUtc Asia/Shanghai
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=vda
# Partition clearing information
clearpart --all --initlabel --drives=vda
# Disk partitioning information
part / --fstype="ext4" --ondisk=vda --size=2047

%packages
@^minimal
-NetworkManager-*
#@core
#chrony
#kexec-tools

%end

%addon com_redhat_kdump --enable --reserve-mb='auto'
%end

%post
#yum install -y http://10.0.2.2:8080/rpm/elfin-1.1.3-0.cloud.el6.x86_64.rpm
%end

%anaconda
%end
reboot

Centos8 模板 (auth已废弃)
Centos8 参考

#version=Centos8
# Use CDROM installation media
cdrom
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=vda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8

# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on --ipv6=auto
network  --hostname=localhost.localdomain

# Root password
rootpw kingsoft
# 密码加密
#rootpw  --iscrypted $6$Ka7MzfgRm5CS9N22$cMgIl

#Firewall configuration
#禁用防火墙
firewall --disabled

#SELinux configuration
#禁用selinux
selinux --disabled

# System services
services --enabled="chronyd"
# System timezone
timezone --isUtc Asia/Shanghai
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=vda
# Partition clearing information
clearpart --all --initlabel --drives=vda
# Disk partitioning information
part / --fstype="ext4" --ondisk=vda --grow

%packages
@^minimal-environment
-NetworkManager*
telnet
net-tools
vim

%end

%addon com_redhat_kdump --enable --reserve-mb='auto'
%end

%post
#yum install -y http://10.0.2.2:8080/rpm/elfin-1.1.3-0.cloud.el6.x86_64.rpm
%end

%anaconda
%end
reboot

Ubuntu 模板

#Generic Kickstart template for Ubuntu
#Platform: x86 and x86-64
#

#System language
lang en_US

#Language modules to install
langsupport en_US

#System keyboard
keyboard us

#System mouse
mouse

#System timezone
timezone America/New_York

#Root password
rootpw --disabled

#Initial user (user with sudo capabilities) 
user ubuntu --fullname "Ubuntu User" --password root4me2

#Reboot after installation
reboot

#Use text mode install
text

#Install OS instead of upgrade
install

#Installation media
cdrom
#nfs --server=server.com --dir=/path/to/ubuntu/
#url --url http://server.com/path/to/ubuntu/
#url --url ftp://server.com/path/to/ubuntu/

#System bootloader configuration
bootloader --location=mbr 

#Clear the Master Boot Record
zerombr yes

#Partition clearing information
clearpart --all --initlabel 

#Basic disk partition
part / --fstype ext4 --size 1 --grow --asprimary 
part swap --size 1024 
part /boot --fstype ext4 --size 256 --asprimary 

#Advanced partition
#part /boot --fstype=ext4 --size=500 --asprimary
#part pv.aQcByA-UM0N-siuB-Y96L-rmd3-n6vz-NMo8Vr --grow --size=1
#volgroup vg_mygroup --pesize=4096 pv.aQcByA-UM0N-siuB-Y96L-rmd3-n6vz-NMo8Vr
#logvol / --fstype=ext4 --name=lv_root --vgname=vg_mygroup --grow --size=10240 \
--maxsize=20480
#logvol swap --name=lv_swap --vgname=vg_mygroup --grow --size=1024 --maxsize=8192

#System authorization infomation
auth  --useshadow  --enablemd5 

#Network information
network --bootproto=dhcp --device=eth0

#Firewall configuration
firewall --disabled --trust=eth0 --ssh 

#Do not configure the X Window System
skipx

Ubuntu 配置参考

配置文件详细解析

RedHat Kickstart选项详情

kickstart的配置文件格式

  1. 命令部分(必选项)

    配置系统的属性及安装中的各种必要设置信息,如语言、键盘类型、时区等信息

  2. 设定需要安装的软件包及包组,Anaconda会自动解决依赖关系

    使用%packages指明开始,%end指明结束.包组以@开始标明,软件名可以直接写,但每个之间需要换行

  3. 安装前脚本

    使用%pre指明开始,%end指明结束,将每个命令写一行

  4. 安装后脚本

    使用%post指明开始,%end指明结束,将每个命令写一行

Kickstart文件参数说明

必选命令:

自选项:

上一篇 下一篇

猜你喜欢

热点阅读