配置PXE预启动执行环境:Kickstart自动化无人值守安装

news2024/11/15 12:01:46

文章目录

  • 实现 Kickstart 无人值守安装
    • 1. 安装Kickstart和配置应答文件(图形化界面)
    • 2. 配置 PXE 菜单支持 Kickstart 无人值守安装
    • 3. 验证 Kickstart 无人值守安装
    • 4. 拓展:命令行配置应答文件(命令行界面)


实现 Kickstart 无人值守安装

Kickstart 是 Red Hat 系统的一个工具,用于自动化系统安装。通过预先配置的应答文件,可以实现无人值守的系统安装。

1. 安装Kickstart和配置应答文件(图形化界面)

  1. 安装 Kickstart 配置工具

    yum install -y system-config-kickstart  
    # 安装 Kickstart 配置工具
    
  2. 打开 Kickstart 配置程序

    可以通过桌面菜单“应用程序”–>“系统工具”–>“Kickstart” 打开,或执行 system-config-kickstart 命令。

  3. 配置 Kickstart 选项

    • 基本配置

      • 默认语言设为“中文(简体)”
      • 时区设为“Asia/Shanghai”
      • 设置 root 密码
      • 高级配置中勾选“安装后重启”。

      在这里插入图片描述

    • 安装方法

      • 选择 FTP
      • FTP 服务器:ftp://192.168.80.10
      • FTP 目录:centos7

      在这里插入图片描述

    • 引导装载程序选项

      • 安装类型:安装新引导装载程序
      • 安装选项:在主引导记录(MBR)中安装引导装载程序

      在这里插入图片描述

    • 分区信息

      • 清除主引导记录
      • 删除所有现存分区
      • 初始化磁盘标签
      • 添加分区:
        • /boot,文件系统类型:xfs,固定大小:500M
        • swap,固定大小:4096M
        • /home,文件系统类型:xfs,固定大小:4096M
        • /,文件系统类型:xfs,使用磁盘上全部未使用空间

      在这里插入图片描述

    • 网络配置

      • 添加网络设备 ens33
      • 网络类型设为 DHCP
    • 防火墙配置

      • 禁用 SELinux、禁用防火墙
    • 软件包安装

      • 选择“最小安装”,并在详细包中选择“调试工具”和“兼容性库”。
      • 页面可能会报错:“由于下载软件包信息失败,软件包选择被禁止。”,在后续操作再配置。
    • 安装后脚本配置YUM仓库

      • 勾选“使用解释程序”:/bin/bash

      • 脚本编辑(注意格式):

        rm -rf /etc/yum.repos.d/*
        echo '[local]
        name=local
        baseurl=ftp://192.168.80.10/centos7
        enabled=1
        gpgcheck=0' > /etc/yum.repos.d/local.repo
        
  4. 保存生成的 Kickstart 应答文件

    将 Kickstart 文件保存为 ks.cfg (默认保存在 root/ks.cfg ),并复制到 FTP 服务器的 /var/ftp 目录下。

    cp /root/ks.cfg /var/ftp/ks.cfg
    # 将 Kickstart 应答文件复制到 FTP 服务器
    
  5. 配置安装软件包

    可以根据实际需求将/root/anaconda-ks.cfg 的软件包安装脚本复制到 ks.cfg文件中,只需要复制%packages 到%end 部分即可。

    ks.cfg 文件中指定要安装的软件包。如,最小化安装时使用以下内容:

    vim /var/ftp/ks.cfg
    
    %packages
    @^minimal
    %end
    

2. 配置 PXE 菜单支持 Kickstart 无人值守安装

/var/lib/tftpboot/pxelinux.cfg/default 文件中,添加 Kickstart 启动入口:

vim /var/lib/tftpboot/pxelinux.cfg/default	

default auto 							
prompt 0 	#设置是否等待用户选择,“0”表示不等待用户控制

label auto								
kernel vmlinuz	#kernel 和 append用来定义引导参数
append initrd=initrd.img method=ftp://192.168.80.10/centos7 ks=ftp://192.168.80.10/ks.cfg
#添加 ks 引导参数以指定 ks.cfg 应答文件的 URL 路径

# 方式二,直接配置入口,不建议,未测试
label linux ks  # 无人值守安装引导入口
kernel vmlinuz
append ks=ftp://192.168.80.10/ks.cfg initrd=initrd.img method=ftp://192.168.80.10/centos7

3. 验证 Kickstart 无人值守安装

每次客户端通过 PXE 引导时,将自动加载 ks.cfg 配置文件,并按照其中的指示安装 CentOS 7 系统,无需人工干预。

登录系统后验证YUM源是否更改:

cat /etc/yum.repos.d/local.repo  
# 验证本地 YUM 源配置是否正确

在这里插入图片描述

在这里插入图片描述

4. 拓展:命令行配置应答文件(命令行界面)

在命令行中配置 Kickstart 文件,需手动编辑 ks.cfg 文件,并加入相应的配置指令。以下是详细的配置步骤:

  1. 基本配置
# 设置语言
lang zh_CN.UTF-8

# 设置时区
timezone Asia/Shanghai

# 设置 root 密码(明文密码)
rootpw --plaintext your_root_password

# 安装后重启
reboot
  1. 安装方法
# 选择安装方法为 FTP,并指定服务器和目录
url --url="<ftp://192.168.80.10/centos7>"
  1. 引导装载程序选项
# 安装新的引导装载程序到主引导记录(MBR)
bootloader --location=mbr
  1. 分区信息
# 清除主引导记录
zerombr

# 删除所有现存分区
clearpart --all --initlabel

# 添加分区
part /boot --fstype="xfs" --size=500
part swap --size=4096
part /home --fstype="xfs" --size=4096
part / --fstype="xfs" --grow --size=1
  1. 网络配置
# 配置网络设备 ens33 ,使用 DHCP
network --bootproto=dhcp --device=ens33 --onboot=yes
  1. 防火墙配置
# 禁用防火墙
firewall --disabled

# 禁用 SELinux
selinux --disabled
  1. 软件包安装
%packages
@^minimal
@debugging
@compat-libraries
%end
  1. 安装后脚本配置 YUM 仓库
%post --interpreter /bin/bash
rm -rf /etc/yum.repos.d/*
echo '[local]
name=local
baseurl=ftp://192.168.80.10/centos7
enabled=1
gpgcheck=0' > /etc/yum.repos.d/local.repo
%end

完整的 ks.cfg 文件示例

# Kickstart 配置文件

# 1. 基本配置
lang zh_CN.UTF-8
timezone Asia/Shanghai
rootpw --plaintext your_root_password
reboot

# 2. 安装方法
url --url="<ftp://192.168.80.10/centos7>"

# 3. 引导装载程序选项
bootloader --location=mbr

# 4. 分区信息
zerombr
clearpart --all --initlabel
part /boot --fstype="xfs" --size=500
part swap --size=4096
part /home --fstype="xfs" --size=4096
part / --fstype="xfs" --grow --size=1

# 5. 网络配置
network --bootproto=dhcp --device=ens33 --onboot=yes

# 6. 防火墙配置
firewall --disabled
selinux --disabled

# 7. 软件包安装
%packages
@^minimal
@debugging
@compat-libraries
%end

# 8. 安装后脚本配置 YUM 仓库
%post --interpreter /bin/bash
rm -rf /etc/yum.repos.d/*
echo '[local]
name=local
baseurl=ftp://192.168.80.10/centos7
enabled=1
gpgcheck=0' > /etc/yum.repos.d/local.repo
%end

说明

  • rootpw:设置 root 用户的密码,可以用 -iscrypted 选项加密存储密码。
  • network:配置网络设备,默认设置 ens33 使用 DHCP。
  • %post:定义安装后脚本,配置 YUM 仓库。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2068986.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

猜数3次-python

题目要求&#xff1a; 定一个数字&#xff08;1-10&#xff0c;随机产生&#xff0c;通过3次判断来猜出数字&#xff09; 数字随机产生&#xff0c;范围1-10有三次机会猜测数字&#xff0c;通过3层嵌套判断实现每次猜不中会提示大了或者小了 ps&#xff1a;补充随机函数 imp…

client网络模块的开发和client与server端的部分联动调试

客户端网络模块的开发 我们需要先了解socket通信的流程 socket通信 server端的流程 client端的流程 对于closesocket()函数来说 closesocket()是用来关闭套接字的,将套接字的描述符从内存清除,并不是删除了那个套接字,只是切断了联系,所以我们如果重复调用,不closesocket()…

合合信息文档解析Coze插件发布,PDF转Markdown功能便捷集成

近日&#xff0c;TextIn开发的PDF转Markdown插件正式上架Coze平台。 在扣子搜索“pdf转markdown”&#xff0c;或在Coze平台搜索“pdf2markdown”&#xff0c;即可找到插件&#xff0c;在你的专属智能体中便捷使用文档解析功能。 如果想测试解析插件在你需要的场景下表现如何&…

R语言VAR模型的多行业关联与溢出效应可视化分析

全文链接&#xff1a;https://tecdat.cn/?p37397 摘要&#xff1a;本文对医疗卫生、通信、金融、房地产和零售等行业的数据展开深入研究。通过读取数据、计算收益率、构建 VAR 模型并进行估计&#xff0c;帮助客户进一步分析各行业变量的影响及残差的协方差与相关矩阵&#xf…

xml打印模板解析-SAAS本地化及未来之窗行业应用跨平台架构

一、为何要自己设置打印模板系统 1.确保自由知识产权 2.支持跨平台&#xff1a;物联网&#xff0c;自助终端&#xff0c;电脑&#xff0c;web&#xff0c;C#&#xff0c;jsp,android,java,php 等多种语言 二、xml 代码解析 package CyberWinPHP.Cyber_Plus;import java.io.…

2024下半年软考有哪些科目开考?该怎么选?

近年来&#xff0c;软考&#xff08;软件水平考试&#xff09;的难度逐渐攀升&#xff0c;这并非源于题目本身的复杂化&#xff0c;而是官方对通过率的调控策略所致。整体通过率维持在13%左右&#xff0c;高级别考试更是低至10%以下&#xff0c;考生需慎重对待。以湖南2024年上…

数据仓库建模的步骤-从需求分析到模型优化的全面指南

想象一下,你正站在一座巨大的图书馆前。这座图书馆里存放着你公司所有的数据。但是,书籍杂乱无章,没有分类,没有索引。你如何才能快速找到所需的信息?这就是数据仓库建模要解决的问题。本文将带你深入了解数据仓库建模的主要步骤,让你掌握如何将杂乱的数据转化为有序、高效、易…

Java | Leetcode Java题解之第367题有效的完全平方数

题目&#xff1a; 题解&#xff1a; class Solution {public boolean isPerfectSquare(int num) {double x0 num;while (true) {double x1 (x0 num / x0) / 2;if (x0 - x1 < 1e-6) {break;}x0 x1;}int x (int) x0;return x * x num;} }

监控摄像头能看到电脑屏幕内容吗?监控摄像头VS电脑屏幕监控软件!告别盲区,让您的企业管理无死角!

在企业管理中&#xff0c;监控摄像头和电脑屏幕监控软件都是重要的工具&#xff0c;但它们在监控电脑屏幕内容方面存在显著差异。本文将深入探讨监控摄像头在捕捉电脑屏幕内容时的局限性&#xff0c;并对比介绍安企神——电脑屏幕监控软件的优势及其功能策略&#xff0c;帮助企…

在Windows下安装设置Node.js 20.16.0

文章目录 一、下载Node.js二、安装Node.js三、设置Node.js四、更换npm源 一、下载Node.js 官网地址&#xff08;中文网&#xff09; 或者使用直链下载 二、安装Node.js 打开下载好的安装包&#xff0c;点击下一步 同意用户协议后下一步 选择安装目录后下一步 可以根据自…

02 tkinter有趣项目-头像制作-界面设计

头像制界面设计 **avatar.png** **界面** 界面分析 背景图片: 顶部中央位置显示一个小孩背着书包的图片。这个图片是程序的背景&#xff0c;占据了大部分的窗口空间。 标题和按钮: 在图片上方&#xff0c;有一个标题栏&#xff0c;显示文本“在线姓氏头像制作”&#xff0c;使…

vue+fastadmin跨域请求问题

记录一个 vuefastadmin项目api 访问跨域问题 前端页面使用的是 axios 发起请求&#xff0c;api 是 fastadmin 写的&#xff0c;遇到跨域错误&#xff1a; 解决办法&#xff1a; 控制器代码中加入check_cors_request()实现跨域检测 fa 官网对跨域的说明 &#xff1a;跨域配置 -…

乐凡三防高亮屏工业平板电脑的应用场景

随着科技的发展&#xff0c;三防高亮屏工业平板电脑在越来越多的领域中得到广泛应用。下面探讨一下三防高亮屏工业平板电脑的应用场景及其在不同领域中的优势。 物流行业 在物流行业中&#xff0c;三防高亮屏工业平板电脑可以用于仓库管理、货物跟踪、运输调度等多个方面。在阳…

在Ubuntu22.04使用PySide6或PyQt5的文件选择框时,无法显示文件夹中的文件问题的解决方案

摘要&#xff1a;在使用PySide6或PyQt5开发图形用户界面&#xff08;GUI&#xff09;应用程序时&#xff0c;我们经常会使用 QFileDialog 来让用户选择文件或文件夹。然而&#xff0c;有时候会遇到一个奇怪的问题&#xff0c;即在打开文件选择对话框时&#xff0c;某些文件类型…

Vue3的三种样式控制及实现原理

你好&#xff0c;我是沐爸&#xff0c;欢迎点赞、收藏和关注。个人知乎 Vue3中一共有三种样式控制&#xff0c;分别是全局样式控制、局部作用域样式控制和深度样式控制&#xff0c;今天我们一起看下这三种样式控制的使用&#xff0c;以及实现的原理是什么。 一、全局样式控制…

数据恢复技术-手动修复MBR-/NTFS分区

前言 本文只作为本人学习笔记&#xff0c;不做他用&#xff0c;转载请注明原处谢谢&#xff01; 本文教大家如何手工修复MBR引导分区&#xff0c;找回丢失的数据&#xff0c;先附加题目镜像&#xff08;右键我的电脑或win标&#xff0c;选择管理/磁盘管理---操作---附加VHD&…

笔记整理—uboot启动过程(2)BL1低级初始化

lowlevel_init看名字就知道是关于初级方面的初始化&#xff0c;其中可用将其干的事情分为11个步骤&#xff1a; &#xff08;1&#xff09;push {lr} 也就是lr压栈。 &#xff08;2&#xff09;检测复位状态&#xff1a;如冷上电、热启动、睡眠等。冷上电要初始化DDR后才能使用…

MS2232/MS2232T——±20kV ESD 保护、3V-5.5V 供电、真 RS-232 收发器

MS2232/MS2232T 芯片是集成电荷泵、具有 20kV ESD 保护的 RS-232 收发器&#xff0c;包括两路接收器、两路发送器。芯 片满足 TIA/EIA-232 标准&#xff0c;为异步通信控制器和串口连接器 提供通信接口。 芯片采用 3V-5.5V 供电&#xff0c;电荷泵仅用 4 个 0.1-0.47μF 小…

GUI / GitOps / API: 用 Bytebase 实现 SQL 审核

修改数据库中的数据时&#xff0c;确保安全准确至关重要。Bytebase 提供 SQL 审核功能&#xff1a;将 SQL 变更应用到数据库之前&#xff0c;可对其进行评估。SQL 审核可通过 Bytebase GUI、GitOps 工作流或 API 触发。 本教程将使用 Bytebase 的 SQL 审核来改进数据库 Schema …

对数据治理和云采用的思考:过去和现在

组织在向云服务转变的过程中面临数据治理复杂性和挑战。 如今&#xff0c;到了 2024 年&#xff0c;形势已经发生了变化&#xff0c;但根本问题却愈演愈烈。 数据的增长以及网络攻击的频率和复杂性不断增加&#xff0c;使得对强大的数据治理和安全的需求比以往任何时候都更加…