dhcp+checkkickstar的实验理解

news2024/11/14 14:51:00

文章目录

    • 实验介绍
    • 使用的服务介绍
      • PXE服务
      • dhcp服务
      • Kickstart 服务
      • tftp服务
    • 第一部分(基础部分)
        • 代码展示
        • 注意点
          • 第一点![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/13c0f4aabb664655a4dd285dd8e5527a.png)
          • 第二点
      • 结果展示
    • 第二部分(完整部分(升级版本))
      • 实验步骤:
      • 进入BIOS系统设置
    • 实验分析

实验介绍

本实验是dhcp+kickstar+ tftp服务的结合进行操作的,共分为两个部分。
第一部分(基础部分): 单纯的kickstar+dhcp服务,实现除镜像之外的,设置
第二部分(完整部分): 只需要在虚拟客户机的BIOS界面进行设置即可完成自动化配置,节省空间和步骤,提高自动化流程

使用的服务介绍

PXE服务

PXE(Preboot Execution
Environment,预启动执行环境)是一种由Intel开发的技术,它允许计算机通过网络启动,而不是从本地存储设备(如硬盘)启动。在运维领域,PXE服务常用于自动化操作系统安装、更新和维护

PXE服务的基本原理如下:

客户机请求网络启动:当客户机(通常是裸机服务器或没有操作系统的设备)开机或重启时,BIOS会检测到网络启动选项,并通过PXE协议向网络发送请求。

DHCP服务器分配IP地址:客户机通过PXE发出的请求会被DHCP(Dynamic Host Configuration
Protocol,动态主机配置协议)服务器接收,DHCP服务器会为客户机分配一个临时的IP地址,并提供必要的网络配置信息。

TFTP服务器提供引导文件:DHCP服务器还会告知客户机PXE引导文件的位置,客户机会通过TFTP(Trivial FileTransfer Protocol,简单文件传输协议)从TFTP服务器下载引导文件(如pxelinux.0)。

执行引导文件: 客户机下载并执行引导文件,该文件会加载必要的驱动程序和操作系统安装程序。

安装或更新操作系统: 根据配置,PXE引导过程可以启动操作系统安装过程,或者执行系统更新和维护任务。 在客户机从服务器下载资源的过程中,下载的资源(如引导文件、操作系统镜像等)通常存放在服务器上的共享存储空间中。具体来说:

TFTP服务器:PXE引导文件通常存放在TFTP服务器的指定目录下。TFTP服务器是一个简单的文件传输服务,用于在客户机和服务器之间传输小文件。

FTP或HTTP服务器: 对于较大的文件(如操作系统镜像),可能会使用FTP(File TransferProtocol,文件传输协议)或HTTP(HyperText Transfer Protocol,超文本传输协议)服务器来提供下载服务。这些服务器可以托管在独立的服务器上,或者与TFTP服务器集成在一起。

通过这种方式,运维人员可以集中管理和分发操作系统和软件更新,极大地简化了大规模系统部署和维护的工作流程。

dhcp服务

DHCP (Dynamic Host Configuration Protocol,动态主机配置协议)是一种用于自动分配和配置网络设备的 IP 地址和其他网络参数的协议。在 Linux
系统中,DHCP 服务通常由 dhcpd 守护进程负责管理和运行。

简述: 给客户机分发ip,实现更好的自动化管理的措施之一

主要功能
IP 地址分配: 为客户端分配可用的 IP 地址。
网络参数配置: 提供子网掩码、默认网关、DNS 服务器地址等网络参数。
租约管理: 管理 IP 地址的租约时间,确保地址的有效性和稳定性。
静态映射: 支持为特定设备分配固定 IP 地址(通过 MAC 地址绑定)。

Kickstart 服务

Kickstart 是一种自动化操作系统安装和配置的方法,主要用于 Red Hat Enterprise Linux (RHEL)
和其衍生版本(如 CentOS)的大规模部署。通过 Kickstart
服务,系统管理员可以预定义安装过程中需要回答的各种问题,从而实现无人值守的自动安装

tftp服务

TFTP(Trivial File Transfer
Protocol,简单文件传输协议)是一种用于在网络中传输文件的轻量级协议。它基于UDP(User Datagram
Protocol,用户数据报协议),提供了基本的文件传输功能,而不包含复杂的认证和交互机制。

在运维领域,TFTP服务主要用于以下场景:

网络设备配置文件备份和恢复: 许多网络设备(如路由器、交换机、防火墙等)支持通过TFTP服务备份和恢复配置文件。这样,运维人员可以方便地保存和还原设备的配置,以应对故障或配置错误。

操作系统安装和更新: TFTP服务可以用于在PXE(Preboot Execution Environment,预启动执行环境)环境中提供引导文件和操作系统镜像。客户机可以通过网络从TFTP服务器下载所需的文件来启动或安装操作系统。

固件升级: 一些设备(如打印机、服务器、存储设备等)支持通过TFTP服务升级固件。运维人员可以通过TFTP服务将新的固件文件传送到设备,以更新其软件版本。

文件共享和传输: 虽然TFTP协议本身没有复杂的文件权限和认证机制,但在一些简单的应用场景中,TFTP服务可以用于在不同设备之间共享和传输文件。

TFTP服务的主要特点包括:

简单性: TFTP协议非常简单,不包含复杂的认证和交互机制。这使得TFTP服务易于实现和使用,但也限制了它的功能和安全性。

无状态性 :TFTP服务是无状态的,即每个请求都是独立的,不依赖于前一个请求的结果。这使得TFTP服务具有良好的可扩展性和可靠性。

可靠性: 尽管TFTP协议本身没有内置的可靠性机制,但通过UDP协议的重传机制和TFTP自身的错误检测功能,TFTP服务在传输小文件时仍然具有较高的可靠性。

安全性 :由于TFTP协议没有内置的安全性机制,因此在使用TFTP服务时,通常需要结合其他安全措施(如防火墙、加密隧道等)来保护数据的安全

第一部分(基础部分)

操作步骤截图

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述之后保存退出,并检查语法,如下所示,我下面有输出就表示我42行的文件内容有误需更正
在这里插入图片描述

代码展示
在这里插入代码片这段代码是一个 Kickstart 文件(ks.cfg),用于自动化 Red Hat Enterprise Linux (RHEL) 或 CentOS 系统的安装过程。Kickstart 文件允许你预先定义安装过程中的各种选项,从而实现无人值守的自动安装。下面是对这段代码的逐行解释:
 

#platform=x86, AMD64, or Intel EM64T 
#version=DEVEL 
# 这两行是注释,指定了平台类型和版本。这里假设是 x86、AMD64 或 Intel EM64T 架构,版本为开发版。
 
# Install OS instead of upgrade
install 
# 指定安装新的操作系统而不是升级现有的操作系统。
 
# Keyboard layouts
keyboard 'us' 
# 设置键盘布局为美国英语。 
 
# Root password
rootpw --iscrypted $1$1Cfim.Jb$i6OWVI3oi8QSynjsz7HtK/
# 设置 root 用户的密码,密码已经被加密。
 
# System language 
lang zh_CN 
# 设置系统语言为简体中文。
 
# System authorization information 
auth  --useshadow  --passalgo=sha512 
# 使用影子密码文件,并指定密码哈希算法为 SHA-512。
 
# Use text mode install 
text
# 使用文本模式进行安装,而不是图形界面。
 
# SELinux configuration
selinux --enforcing 
# 启用 SELinux,并设置为强制模式。
 
# Do not configure the X Window System
skipx
# 跳过 X Window System 的配置。
 
# Firewall configuration
firewall --disabled
# 禁用防火墙。
 
# Network information
network  --bootproto=dhcp --device=ens33 
# 设置网络配置为 DHCP,使用 ens33 网卡。
 
# Reboot after installation
reboot 
# 安装完成后自动重启系统。
 
# System timezone
timezone Asia/Shanghai 
# 设置系统时区为亚洲/上海。
 
# Use network installation
url --url="http://172.25.253.9/mnt" 
#  指定网络安装源的 URL。这个地址和挂载目录根据自己的实际情况来
 
# System bootloader configuration
bootloader --location=mbr 
# 在主引导记录(MBR)安装引导加载程序。
 
# Clear the Master Boot Record 
zerombr
# 清除主引导记录,删除任何旧的引导加载程序。
 
# Partition clearing information
clearpart --all --initlabel 
# 清除所有磁盘分区,并为磁盘初始化标签。
 
# Disk partitioning information
part /boot --fstype="xfs"  --size=1024
part swap --fstype="swap"  --size=512 
part / --fstype="xfs" --grow --size=1 
# 创建分区:/boot 分区大小为 1024 MB,文件系统类型为 xfs;
# swap 分区大小为 512 MB;根分区 / 使用剩余空间,最小大小为 1 MB,
# 文件系统类型为 xfs。 
 
%packages 
@base 
httpd 
%end 
# 指定安装的软件包组和单个软件包。
# 这里安装了基础软件包组和 httpd(Apache HTTP Server)。
 
%post 
mkdir  -p /rhel7 
 
echo mount /dev/cdrom  /rhel7 >> /etc/rc.d/rc.local
 
chmod +x  /etc/rc.d/rc.local
 
cat > /etc/yum.repos.d/rhel.repo << EOF 
[rhel7]
name=rhel7 
baseurl=file:///rhel7 
gpgcheck=0
EOF
 
yum install gcc -y 
%end 
# %post 部分是在安装完成后执行的脚本。这里创建了一个目录 /rhel7,
# 并将挂载 CD-ROM 到该目录的命令添加到 /etc/rc.d/rc.local 文件中,
# 以便系统启动时自动挂载。然后修改了 rc.local 文件的权限,使其可执行。# 接着创建了一个本地 yum 仓库配置文件 rhel.repo,
# 最后使用 yum 安装了 gcc 编译器。 

 
# 这个 Kickstart 文件定义了从网络安装 RHEL 或 CentOS 系统的整个过程,
# 包括分区、软件包选择以及安装后的配置任务。
# 通过使用这样的文件,可以大大简化大规模部署操作系统的工作。

注意点
第一点在这里插入图片描述

当服务配置完成之后,需要将/root/ks.cfg复制到/var/www/html的默认访问路径下面,并制作软链接 ,而后重启各类服务。而index.html是我自己做的一个默认页面,内容随意。

第二点

在这里插入图片描述
在配置分区的时候,只有根要选择grow,即立即代表分配、充满。其他的不需要,有就删掉。不然容易内存崩掉客户机无法启动

结果展示

运行可能需要几分钟甚至到10分钟不等,根据电脑配置和硬盘速率等因素决定,稍等即可让它跑完
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

第二部分(完整部分(升级版本))

实验步骤:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

此处的地址和目录是自己服务器的地址和目录,在kerner vmlinuz上面添加default 则默认开机选择第一个,然后把后面的default删掉

进入BIOS系统设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这个后面是循环执行,当第二遍的时候,需要改成硬盘启动

实验分析

本次实验是通过对应PEX技术的配置,模拟实现自动化远程控制客户机进行自动化安装配置的一个过程,从而展示出来了在对应大型网络系统的维护和部署方面的便捷性特点。

TFTP服务的注意事项和关键点
在Linux系统中,TFTP服务器的默认共享文件夹通常位于以下路径:
/var/lib/tftpboot,这个目录是TFTP服务器默认监听的目录,客户端可以通过TFTP协议从这些目录中下载所需的文件。
如果需要 修改也行,但建议不要动,尤其是初学阶段。
而后我们建立,pxelinux.cfg目录,将default文件cp进去进行配置我们的默认设置
在这里插入图片描述

dhcp关键点
在这里插入图片描述
其中的filename 定义了客户端应该下载的文件名,这个文件是PXE引导过程中的引导程序。在这种情况下,客户端将下载名为 pxelinux.0 的文件,这是SYSLINUX项目的一部分,用于引导Linux操作系统。

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

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

相关文章

元岳食堂采购供应链系统-智慧食堂数据化解决方案

随着社会的发展和科技的进步&#xff0c;在数字化浪潮的推动下&#xff0c;智慧食堂供应链系统逐渐成为食堂管理的重要工具。在此背景下&#xff0c;元岳食堂采购供应链系统应运而生&#xff0c;该系统通过其独特的数字化和自动化功能&#xff0c;能够对食堂的采购、储存、配送…

重庆市合川区第二届网络安全“钓鱼城“杯部分题解

MISC 下载文件后&#xff0c;进行分析 往下划看见smb 最开始以为是通过smb协议下载的文件 找半天没发现&#xff0c;往前翻了翻&#xff0c;看见了flag 存储为原始数据 通过上述分析发现开头是pk&#xff0c;保存为zip压缩包 发现需要密码 感觉是伪加密 使用工具一把梭 再…

免费的GA/T1400视图库平台Easy1400软件又迭代出新版本了!

自从年初发布了这款免费的GA1400视图库平台&#xff08;https://blog.csdn.net/xiejiashu/article/details/135050381&#xff09;&#xff0c;本来就是想做一做能给大家差不多能用就行了&#xff0c;没成想总是忍不住要改一改、优化优化&#xff0c;于是又经过了几个月的优化&…

合宙Air201定位模组,千万不要忘记设置这个......

最近一个杭州的客户&#xff0c;使用合宙的 Air201——4G资产定位模组&#xff0c;做室内wifi定位&#xff0c;发现在同一园区不同楼栋内定位结果相同&#xff0c;找到我们希望做问题排查。 排查过程记录在这里了&#xff0c;如果你也有类似问题&#xff0c;希望可以帮助到你~ …

Pinterest:从 Druid 到 StarRocks,实现 6 倍成本效益比提升

导读&#xff1a; 开源无国界&#xff0c;StarRocks 自开源以来&#xff0c;近3年的时间里已在全球数据技术领域崭露头角。我们欣喜地发现&#xff0c;越来越多的海外用户正在使用并积极推广着 StarRocks。为了促进知识共享&#xff0c;StarRocks中文社区将精选优秀文章与大家共…

华为手机平板开启下方提示条(横条)

打开设置&#xff0c;系统与更新&#xff0c;系统导航方式&#xff0c;手势导航&#xff0c;更多设置&#xff0c;显示提示条。 该功能部分机型不支持&#xff0c;我的MatePad SE支持&#xff08;别买&#xff0c;割韭菜&#xff09;

有自增变量作为循环条件的循环边界的理解

while (i < 100) 先判断后增加 当次i值用于判断&#xff0c;范围1~99&#xff0c; 递增后的i值为当次循环值&#xff0c;即循环内的i值&#xff0c;范围2~100 当 i 9 时&#xff0c;小于 100&#xff0c;进入循环体。在进入循环体之前&#xff0c;i 递增为 10。10满足i…

面试笔记--(正在整理版)

面试常见: Jvm&#xff0c;高并发&#xff0c;多线程&#xff0c;数据库&#xff0c;redis&#xff0c;框架 多线程 1.线程和进程是什么?如何保证线程安全性? 进程线程&#xff08;一&#xff09;——基础知识&#xff0c;什么是进程&#xff1f;什么是线程&#xff1f;_…

手机卡换了上网的ip会改变吗

在数字化时代&#xff0c;互联网已成为我们日常生活不可或缺的一部分。无论是工作、学习还是娱乐&#xff0c;我们都离不开网络的支持。而每当涉及到网络连接&#xff0c;IP地址这一概念便显得尤为重要。IP地址不仅是设备在网络中的唯一标识&#xff0c;还关系到我们的网络体验…

Selenium + Python 自动化测试06(frame操作方法)

上一篇我们讲述了特殊元素的操作方法&#xff0c;本篇接着讲一些可能遇到的其它操作方法。 如frame操作。 Frame 标签有Frameset、Frame、Iframe 3种&#xff0c;Frameset可以直接照常进行元素定位。Frame、Iframe需要驱动切换到对应的frame才可以定位到。否则 &#xff0c;会…

Python基础-->数据类型/变量/运算符

文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 一.变量 变量是一个保存数据的容器&#xff0c;变量通常分为变量和常量&#xff0c;常量中存储的是固定数据&#xff0c;而变量中存储的数据是可变的。 # 定义常量 PI 3.14159# 定义变量 rad…

service调mapper

为什么要用连接池 springboot项目连接池是什么 数据库如何配置 数据库如何开发 步骤&#xff1a; 1、先得到这个类hikariDataSource对象 HikariDataSource hikariDataSource new HikariDataSource();2、用这个类调set方法获取url,name,pwd等 //连接数据库的基本信息 HikariD…

动态规划数学问题前缀思想

前言&#xff1a;看到这个题目&#xff0c;感觉有点像动态规划&#xff0c;因为数据量有点大&#xff0c;不可能去枚举所有的情况 我们定义 dp[ i ] 为以 a[ i ] 结尾的方案数&#xff0c;用变量qian 记录 i 之前的所有枚举的情况 如果 a[ i ] 是奇数&#xff0c;那么 qian q…

浅谈面向数据报的协议-UDP协议

1.什么是网络协议 协议用通俗的话来说就是约定&#xff0c;因为计算机之间的传输媒介是光信号和电信号. 通过 "频率" 和 "强弱" 来表示 0 和 1 这样的信息. 要想传递各种不同的信息, 就需要约定好双方的数据格式. 计算机生产厂商有很多; 计算机操作系统, …

AI人工智能的发展历史

人工智能的发展历史 在人工智能&#xff08;AI&#xff09;的发展历史中&#xff0c;我们见证了一系列巨大的突破和进展。人工智能是一门研究如何使计算机能够模仿人类智能的科学与技术。其发展可以追溯到1950年代&#xff0c;而如今&#xff0c;AI已经渗透到我们生活的各个领域…

JNPF快速开发平台让业务活起来

在当前数字化转型的浪潮中&#xff0c;企业正面临着前所未有的挑战&#xff0c;这些挑战主要体现在两个方面&#xff1a;一是需要迅速地响应市场上的各种变化&#xff0c;二是必须不断提升业务流程的效率。传统的软件开发模式通常伴随着时间消耗长、成本投入高以及难以迅速适应…

Docker网络模式及通信

一、Docker默认的网络通信 1.1 Docker安装后默认的网络设置 Docker服务器安装完成之后&#xff0c;默认在每个宿主机会生成一个名称为docker0的网卡&#xff0c;其IP地址都是172.17.0.1/16 [rootubuntu1804 ~]#apt -y install bridge-utils [rootubuntu1804 ~]#brctl show 另…

2024年新SCI顶刊算法红嘴蓝鹊优化器RBMO优化Transformer模型的多变量时间序列预测

matlab R2024a以上 一、数据集 二、2024年新SCI顶刊算法红嘴蓝鹊优化器RBMO 红嘴蓝鹊优化算法(Red-billed blue magpie optimizer, RBMO)是一种新型的元启发式算法&#xff08;智能优化算法&#xff09;&#xff0c;灵感来源于红嘴蓝鹊的合作、高效的捕食行为。 该成果由Shen…

005集——运算符和循环——C#学习笔记

C# 提供了许多运算符。 其中许多都受到内置类型的支持&#xff0c;可用于对这些类型的值执行基本操作。 这些运算符包括以下组&#xff1a; 算术运算符&#xff0c;将对数值操作数执行算术运算比较运算符&#xff0c;将比较数值操作数布尔逻辑运算符&#xff0c;将对 bool 操作…

基于医院临床数据中心而建立的ADR药品智能监测上报系统,源码支持二次开发

ADR监测上报系统是基于医院临床数据中心而建立&#xff0c;运用信息技术实现药品不良反应的智能监测、报告管理、知识库查询、统计分析等功能。 系统自动提取不良反应报告数据&#xff0c;主动实时监测临床发生的不良反应&#xff0c;第一时间反馈到ADR监测组&#xff0c;及时…