银河麒麟服务器操作系统V10SP1基于Kickstart无人值守安装

       KickStart(简称:ks)是一种无人值守安装方式。KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。这样,如果KickStart文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装。

一、ks文件的生成。ks文件生成有两种方式:

        1、在已有的ks模板文件中进行修改(找一台已安装银河麒麟高级服务器操作系统的机器,在/root目录下找到initial-setup-ks.cfg文件修改)

        2、使用图形化工具system-config-kickstart生成ks文件,若没有则直接在线安装,执行命令:yum -y install system-config-kickstart

二、ks文件组成

        ks文件可分为三部分,第一部分为命令段,用于对系统的基本配置,命令有install、url、Keyboard、Lang、Network、Timezone等;第二部分为软件包段,以%packages开头,%end结尾;第三部分为脚本段,分为安装前脚本,以%pre标识;安装后脚本,以%post标识

 

       从上图可以看出银河麒麟高级服务器操作系统V10SP1安装过程中需人工干预的所有选项,以下为initial-setup-ks.cfg示例。

#命令段
#version=DEVEL
# X Window System configuration information  
xconfig  --startxonboot  #配置X window,--startxonboot使用图形界面登录系统
# License agreement  同意许可协议
eula --agreed
# Use graphical install
graphical    #以图形化进行安装,或改为text:以文本形式进行安装
# Network information   网络配置
network  --bootproto=dhcp --device=ens33 --onboot=off --ipv6=auto --no-activate
network  --bootproto=dhcp --hostname=localhost.localdomain
ignoredisk --only-use=sda   #格式化、分区仅使用sda
# Use CDROM installation media
cdrom      #以本地CD-ROM为源安装系统
# Run the Setup Agent on first boot
firstboot --enable   #在系统第一次启动时启用“代理设置”
# System services
services --enabled="chronyd"
# Keyboard layouts
keyboard --vckeymap=cn --xlayouts='cn'  #键盘布局为中文
# System language
lang zh_CN.UTF-8     #系统语言是中文,utf8的编码格式
# Root password   root密码
rootpw --iscrypted $6$XypESMTZrNXE.HpGTXrUqCcLIvz.It8HHSQAe292kymkwGdh.hum6
# System timezone
timezone Asia/Shanghai --isUtc   #设定时区为上海
# System bootloader configuration
bootloader --location=none  #不设定引导记录的位置
autopart --type=lvm         #自动分区,
# Partition clearing information 在建立新分区前清空系统上原有的分区表,默认不删除分区,--none不移除任何分区,--initlabel初始化磁盘卷标为系统架构的默认卷标
clearpart --none --initlabel


#软件包段
%packages
@^kylin-desktop-environment #带UKUI GUI的软件包组进行服务器安装
# @^minimal-environment  最小化安装软件包组
kexec-tools
%end


#脚本段
%post --nochroot #%post包含的脚本默认是在chroot环境运行,--nochroot允许在chroot环境之外运行命令
#####copy kyinfo and LICENSE
if [ -e /tmp/.kyinfo ];then
  echo y | cp -a /tmp/.kyinfo $ANA_INSTALL_PATH/etc/
fi
if [ -e /tmp/LICENSE ];then
  echo y | cp -a /tmp/LICENSE $ANA_INSTALL_PATH/etc/
fi
if [ -e /run/install/repo/.kyinfo ];then
  echo y | cp -a /run/install/repo/.kyinfo $ANA_INSTALL_PATH/etc/
fi
if [ -e /run/install/repo/LICENSE ];then
  echo y | cp -a /run/install/repo/LICENSE $ANA_INSTALL_PATH/etc/
fi

##### kylin postaction
## cdrom install, copy .kylin-post-actions
if [ -e /run/install/repo/.kylin-post-actions ];then
  echo y | cp -a /run/install/repo/.kylin-post-actions /tmp/.kylin-post-actions
  echo "repo=/run/install/repo" > /tmp/.kylin-repo
fi
## copy kylin post scripts in new os
if [ -e /tmp/.kylin-post-actions ];then
  echo y | cp -a /tmp/.kylin-post-actions $ANA_INSTALL_PATH/bin
fi
if [ -e /tmp/.kylin-repo ];then
  echo y | cp -a /tmp/.kylin-repo $ANA_INSTALL_PATH/tmp/
fi

## copy and run .kylin-post-actions-nochroot
if [ -e /run/install/repo/.kylin-post-actions-nochroot ];then
  echo y | cp -a /run/install/repo/.kylin-post-actions-nochroot /tmp/.kylin-post-actions-nochroot
fi
if [ -e /tmp/.kylin-post-actions-nochroot ];then
  /bin/bash -x /tmp/.kylin-post-actions-nochroot &> $ANA_INSTALL_PATH/var/log/.kylin-post-actions-nochroot.log
fi

%end

%post

systemctl disable systemd-networkd-wait-online.service
systemctl disable multipathd.service

### do kylin post action
if [ -e /bin/.kylin-post-actions ];then
  /bin/bash -x /bin/.kylin-post-actions &> /var/log/.kylin-post-actions.log
fi

%end

%addon ADDON_placeholder --enable --reserve-mb=1024M
%end

%anaconda
pwpolicy root --minlen=8 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=8 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=8 --minquality=1 --notstrict --nochanges --notempty
%end

三、重新制作iso镜像

        1、准备好银河麒麟高级服务器操作系统V10-SP1,将其挂载在/mnt目录下,创建iso目录,将/mnt下内容全部复制到/iso下。并将制作好的ks文件拷贝至该目录下

        2、修改启动文件/iso/isolinux/isolinux.cfg,指明ks文件位置

        3、使用命令mkisofs重新将/iso目录下所有文件打包为iso镜像,本次以X86架构为例:

mkisofs -o /kylin10.iso -V kylin-V10 -b isolinux/isolinux.bin  -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -T -v /iso/
# /iso/ 为文件所在目录 ,-V 后面面加的内容为ISO挂载上去显示的名称,-o 后面的/kylin10.iso为新生成的iso镜像所在目录及名称

四、将打包好的iso镜像用U盘制作启动盘或刻录至光盘,选择从U盘或光盘启动,即可实现自动化的安装了(注:银河麒麟高级服务器操作系统V10SP2需要单独指定安装源)。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
PXE (Preboot Execution Environment)是一种远程启动技术,它可以使计算机通过网络从远程服务器引导,并在无需人工干预的情况下进行安装和配置。Kickstart是一个自动化安装工具,它使用一个预先配置的策略文件来自动进行安装操作系统。PXE配合Kickstart可以实现无人值守安装。 要实现PXE Kickstart无人值守安装,需要进行以下步骤: 1. 首先,搭建PXE远程安装服务器。这包括安装并启用TFTP服务、DHCP服务,准备Linux内核和初始化镜像文件,准备PXE引导程序,安装FTP服务并准备CentOS 7安装源,配置启动菜单文件等。 2. 安装system-config-kickstart工具来配置Kickstart选项。这可以通过执行命令"yum install -y system-config-kickstart"来完成。 3. 打开"Kickstart配置程序"窗口,并进行基本配置。这可以通过在桌面菜单中选择"应用程序"→"系统工具"→"Kickstart"或执行"system-config-kickstart"命令来实现。 4. 配置Kickstart选项,包括自动应答文件的保存以及需要安装的软件包的配置。 5. 编辑引导菜单文件default,添加ks引导参数。这将告诉PXE引导程序使用Kickstart配置来进行无人值守安装。 6. 最后,验证无人值守安装。通过重新启动计算机并从PXE服务器引导,系统将自动进行Kickstart配置的安装操作。 通过以上步骤,您可以成功实现PXE Kickstart无人值守安装。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值