系统学习Linux-PXE无人值守装机(附改密)

目录

pxe实现系统自动安装pxe工作原理

大致的工作过程如下:

PXE的组件:

一、配置vsftpd

二、配置tftp

三、准备pxelinx.0文件、引导文件、内核文件

四、配置dhcp

配置ip

配置dhcp

五、创建default文件

六、新建测试主机用来测试装机效果

七、配置无人值守

八、linux密码破


pxe实现系统自动安装
pxe工作原理

pxe(preboot execute environment)是由inter设计的协议,它可以使计算机通过网络启动,协议分为client/server的网络模式,pxe client在网卡的rom中(网卡需要支持pxe,目前几乎所有网卡都支持pxe),当计算机引导时,bios把pxe client调入到内存执行,pxe client 通过网络从服务器下载映像,并由此支持通过网络启动操作系统,可以实现无人值守的系统安装,只要客户机加电开机,客户机就会通过网络来引导并安装系统,这种系统安装方式适用于大批量的客户机的系统安装,避免了人为的系统引导,参数设置等所有的交互,而安装时的参数由事先编写好的文件来提供,从而提供工作效率。

大致的工作过程如下:

1、 客户机发送dhcp广播请求
2、dhcp服务器向客户机提供可用的ip地址并告知客户机tftp服务器的地址
3、tftp向客户机提供内核,驱动及引导文件
4、通过ftp/http/nfs获得安装文件,而安装时的参数由ks.cfg来提供
这样不仅系统可以通过网络引导并安装,在安装时也没有了交互的信息,从而实现了完全的加电自检安装。 

PXE的组件:

vsftpd/httpd/nfs

负责提供系统的安装文件

tftp

负责提供系统安装前的引导文件与内核文件

dhcp

负责提供客户端的IP地址分配与pxe引导文件,及pxe服务器地址

一、配置vsftpd

  1. 关闭防火墙与selinux
  2. 安装vsftpd
  3. 启动vsftpd
######配置本地yum
cd /etc/yum.repos.d
mkdir back
mv CentOS-* back
vim local.repo
###插入
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
###挂载sr0,安装vsftpd
mount /dev/sr0 /mnt
yum -y install vsftpd
systemctl start vsftpd
  1. 拷贝系统文件到/var/ftp/
cd /var/ftp
mkdir centos7
cp -r /mnt/* /var/ftp/centos7
sync

二、配置tftp

###安装
yum install -y tftp-server
###修改配置文件
vim /etc/xinit.d/tftp
###修改处
disable=no
###启动
systemctl start tftp

三、准备pxelinx.0文件、引导文件、内核文件

###准备pxelinux.0文件
yum install -y syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
###准备引导文件、内核文件
cd /mnt/images/pxeboot
cp initrd.img vmlinuz /var/lib/tftpboot

四、配置dhcp

配置ip

vim /etc/sysconfig/network-scripts/ifcfg-ens33
###改为
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.100.253
PREFIX=24
GATEWAY=192.168.100.254
###保存退出,重启网络、ip a 查看
systemctl restart network
ip a

配置dhcp

yum -y install dhcp
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
##删除前3段的subnet字段,修改剩下的字段
subnet 192.168.100.0 netmask 255.255.255.0 {range 192.168.100.1 192.168.100.252;#option domain-name-servers ns1.internal.example.org;#option domain-name "internal.example.org";option routers 192.168.100.254;option broadcast-address 192.168.100.255;default-lease-time 600;max-lease-time 7200;next-server 192.168.100.253;filename "pxelinux.0";
}
###启动DHCP服务
systemctl start dhcpd
systemctl start nfs
systemctl start tftp

五、创建default文件

cd /var/lib/tftpboot
mkdir pxelinux.cfg
cd pxelinux.cfg
cp /var/lib/tftpboot/initrd.img vmlinuz /var/lib/tftpboot/pxelinux.cfg/
vim default
###插入内容
default auto			#默认安装标签
prompt 1				#等待用户确认,1表示等待,0表示不等待
label auto			    #定义标签kernel vmlinuz	#指定内核append initrd=initrd.img method=ftp://192.168.100.253/centos7 #指定引导镜像文件与系统安装文件

六、新建测试主机用来测试装机效果

新建虚拟机

开机,连接成功,按下回车开始安装

加载完后自动调度显示以下测试完毕

七、配置无人值守

配置ks文件

##使用图形界面配置
yum install -y system-config-kickstart.noarchsystem-config-kickstart

 基本配置

安装方法 

引导装在程序选项

分区信息

脚本看自己是否需要配置

例:local脚本 

保存 

查看是否保存

拷贝:从/root/anaconda-ks.cfg文件中拷贝软件安装字段到ks.cfg 

vim anaconda-ks.cfg
##复制以下字段插入到ks.cfg
%packages
@^graphical-server-environment
@base
@core
@desktop-debugging
@development
@dial-up
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@hardware-monitoring
@input-methods
@internet-browser
@multimedia
@print-client
@x11
chrony
kexec-tools%end

拷贝ks.cfg到ftp

cp ks.cfg /var/ftp

修改default文件

vim /var/lib/tftpboot/pxelinux.cfg/default
###修改
default auto
prompt 0
label autokernel vmlinuzappend initrd=initrd.img method=ftp://192.168.100.254/centos7 ks=ftp://192.168.100.254/ks.cfg

验证

自动自动自动

加载完后会自动配置并安装

安装好后会自动重启

ip是dhcp的地址池分配

八、linux密码破解

自动安装或许有忘记密码的可能所以写一份root密码恢复步骤

press ‘e’

此界面按e可进入编辑选项

找到linux行在最后加入rd.baeak 输入后执行ctrl+x开始编辑

输入ctrl+x后会进入编辑界面 switch_root:/# ;

switch_root:/# mount -o remount,rw /sysroot/   /以读写方式重新挂载/sysroot目录;
switch_root:/# chroot /sysroot                 /修改/sysroot;
sh-4.2# passwd                                 /输入要修改的密码两遍
■  ■  ■  ■  root  ■  ■  ■  ■
■  ■  ■ ■ ■
■  ■  ■  ■  ■  ■    ■ ■ ■
passwd  ■  ■  ■  ■  ■  ■  ■  ■  ■  ■  ■  ■
sh-4.2# touch /.autorelavel                   /创建/.autorelabel,如果开启SeLinux必须配置;
sh-4.2# exit                                 /退出
switch_root:/# exit                          /重启

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQLite简单介绍

一.简单介绍 SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且已经在很多嵌入式产品中使用了它,它占用资源非常的低&…

uni-app 之 目录结构

目录结构: 工程简介 | uni-app官网 (dcloud.net.cn) pages/index/index.vue 页面元素等 static 静态文件,图片 字体文件等 App.vue 应用配置,用来配置App全局样式以及监听 应用生命周期 index.html 项目运行最终生成的文件 main.js 引用的…

Jenkins

文章目录 下载安装登录安装插件创建用户配置访问地址访问jenkins操作页面再次确认插件 配置配置maven配置jdk远程配置凭证应用服务器 下载安装 我使用的是Docker 参考链接https://blog.csdn.net/a3562323/article/details/108490419?csdn_share_tail%7B%22type%22%3A%22blog%…

Fiddler中 AutoResponder 使用

Fiddler的 AutoResponder ,即URL重定向功能非常强大。不管我们做URL重定向,还是做mock测试等,都可以通过该功能进行实践。 下面,小酋就来具体讲下该功能的用法。 Enable rules 启用规则Unmatched requests passthrough 没有匹配…

知识储备--基础算法篇-矩阵

2.矩阵 2.1第54题螺旋矩阵 第一题上来就跪了,看了官方答案感觉不是很好理解,找了一个比较容易理解的。 class Solution(object):def spiralOrder(self, matrix):""":type matrix: List[List[int]]:rtype: List[int]"""…

【JMeter】 二次开发插件开发 Dubbo 接口测试插件浅析

概述 在一些企业中,各类业务系统非常丰富,相互之间或对外提供很多的服务或接口这些服务或接口中,有很多是需要强契约约束的,服务的提供方、服务的使用方必须遵守相同契约这类服务最典型的就是RPC,其中应用广泛的有Dub…

【Android Framework系列】第13章 SVG矢量图形自定义组件(绘制中国地图)

1 前言 本章节我们来了解下什么是SVG矢量图形,怎么通过SVG实现图形的绘制,通过SVG实现不规则的自定义控件,项目实现一个中国地图,实现每个省都能够点击,项目地址在文末请自取。 2 SVG概念 2.1 SVG矢量图形 SVG 指可…

uni-app 客服按钮可上下拖动动

项目需求: 因为悬浮客服有时候会遮挡住界面内容,故需要对悬浮的气泡弹窗做可拖动操作 movable-area:可拖动区域 movable-view:可移动的视图容器,在页面中可以拖拽滑动或双指缩放。 属性说明 属性名类型默认值说…

音视频技术开发周刊 | 309

每周一期,纵览音视频技术领域的干货。 新闻投稿:contributelivevideostack.com。 腾讯云音视频及边缘平台专场邀你一起见证“连接”的力量 9月7日,腾讯全球数字生态大会之腾讯云音视频及边缘平台专场即将开启!本次专场将重点分享腾…

JVM类的加载相关的问题

JVM类的加载相关的介绍 学习类的加载的加载过程对深入理解JVM有十分重要的作用,下面就跟我一起学习JVM类的加载过程吧! 文章目录 JVM类的加载相关的介绍一、类的加载过程二、双亲委派机制1、类加载器的种类2、为什么JVM要分成不同的类的加载器3、类的加…

目标检测框架MMDetection训练自定义数据集实验记录

在上一篇博文中,博主完成了MMDetection框架的环境部署与推理过程,下面进行该框架的训练过程,训练的入口文件为tools/train.py,我们需要配置的内容如下: parser.add_argument(--config,default"/home/ubuntu/prog…

朴素,word,任何参考文献导入endnote

朴素,word,任何参考文献导入endnote 注意:对于以下这几种不做阐述,看其他帖子都有讲述: 这里的参考文献指的是类似于: [1]. Li Y, Lu Y, Huo X, et al. Bandgap tuning strategy by cations and halide io…

github无法访问

1.查看ip ipaddress.com 2.地址如下: 3.修改本地host文件 (1)打开访达后,在键盘上按ShiftCommandG组合键,进入,在etc找到host文件,修改 (2)如果修改不成功&#xff0…

【深度学习实验】数据可视化

目录 一、实验介绍 二、实验环境 三、实验内容 0. 导入库 1. 归一化处理 归一化 实验内容 2. 绘制归一化数据折线图 报错 解决 3. 计算移动平均值SMA 移动平均值 实验内容 4. 绘制移动平均值折线图 5 .同时绘制两图 6. array转换为tensor张量 7. 打印张量 一、…

如何移除 ONLYOFFICE 中的插件

如果您需要移除 ONLYOFFICE 编辑器中的某个甚至所有的插件,本文会向您介绍如何操作。如要详细了解,请阅读本文。 为什么会想移除插件 ONLYOFFICE 用户想知道如何删除插件,隐私问题是主要原因之一。有些插件(如照片编辑器&#xf…

thinkphp6 入门(5)-- 模型是什么 怎么用

一、模型 MVC架构 之前开发一个功能,后端为在控制器(C)中写 php SQL,前端为在页面(V)中写html css js,这就形成了 VC 架构。 但是发现,相同的数据逻辑(SQL&#xf…

建筑安全运行监测,预防建筑潜在风险

建筑物是人们生活和工作的场所,其安全性直接关系到人们的生命财产安全。建筑安全运行监测旨在及时发现和识别潜在的安全隐患,以确保建筑物的稳定运行,其重要性不可低估。 建筑安全运行监测可以帮助及早发现结构问题。随着时间的推移&#xff…

优化Docker权限管理:配置Docker用户组

Docker 利用 Linux 的用户和组权限来管理对 Docker 守护进程的访问权限。一般情况下,只有 root 用户和属于 docker 用户组的用户才被允许访问 Docker 守护进程。在 Linux 系统上使用 Docker 时,如果您尚未配置 docker 用户组,那么作为非 root…

企业级智能PDF及文档处理SDK GdPicture.NET 14.2 Crack

企业级智能PDF及文档处理SDK GdPicture.NET 提供了一组非常先进的 API,这些 API 利用了人工智能、机器学习和模糊逻辑算法等尖端技术。经过超过 15 年的持续研究和对创新的专注,我们的 SDK 已成为市场上针对PDF、OCR、条形码、文档成像和各种格式最全面的…

大数据成为市场营销利器 ,促进金融贷款企业获客精准化

随着大数据技术的不断普及,中国对尖端技术和云计算技术的投资大幅增加。大数据、云计算技术、物联网等一系列新一代信息技术也加速完善。 目前,大数据技术也非常成熟,大数据的应用领域也多种多样。大数据的重要方面“运营商大数据”已经被政…