就业班 2401--3.12 Linux Day16 PXE布置——自动化装系统

什么是PXE?

PXE,全名Pre-boot Execution Environment,预启动执行环境;通过网络接口启动计算机,不依赖本地存储设备(如硬盘)或本地已安装的操作系统;由Intel和Systemsoft公司于1999年9月20日公布的技术;Client/Server的工作模式;PXE客户端会调用网际协议(IP)、用户数据报协议(UDP)、动态主机设定协议(DHCP)、小型文件传输协议(TFTP)等网络协议;PXE客户端(client)这个术语是指机器在PXE启动过程中的角色。一个PXE客户端可以是一台服务器、笔记本电脑或者其他装有PXE启动代码的机器(我们电脑的网卡)

pxe+kickstart 全自动安装操作系统,(不包括win)pxe是网卡上的芯片kickstart软件 pylickstart 用来配置操作系统安装过程的配置文件ks.cfg

initrd初始化磁盘影像文件

图中的vmlinux应该为vmliuz

PXE工作原理示意图说明

1. Client向PXE Server上的DHCP发送IP地址请求消息,DHCP检测Client是否合法(主要是检测Client的网卡MAC地址),如果合法则返回Client的IP地址,同时将启动文件pxelinux.0的位置信息一并传送给Client。2. Client向PXE Server上的TFTP发送获取pxelinux.0请求消息,TFTP接收到消息之后再向Client发送pxelinux.0大小信息,试探Client是否满意,当TFTP收到Client发回的同意大小信息之后,正式向Client发送pxelinux.0。3. Client执行接收到的pxelinux.0文件。4. Client向TFTP发送针对本机的配置信息(记录在TFTP的pxelinux.cfg目录下),TFTP将配置文件发回Client,继而Client根据配置文件执行后续操作。5. Client向TFTP发送Linux内核请求信息,TFTP接收到消息之后将内核文件发 送给Client。6. Client向TFTP发送根文件请求信息,TFTP接收到消息之后返回Linux根文件 系统。7. Client启动Linux内核(启动参数已经在4中的配置文件中设置好了)。8. Client通过NFS下载镜像文件,读取autoyast自动化安装脚本。 至此,Client正式进入自动化安装模式开始安装系统直到完成

一、环境

名称

软件

vmware

系统

centos7.5

网络

桥接

ip地址

10.20.157.100(自己的服务器地址)

二、安装前准备

# 关闭防火墙、selinux
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
[root@localhost ~]# setenforce 0
[root@localhost ~]# sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config# 配置ip地址
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPADDR=10.20.157.100
PREFIX=24
GATEWAY=10.20.157.1
DNS1=114.114.114.114
DNS2=8.8.8.8
DEVICE="ens33"
ONBOOT="yes"[root@localhost ~]# systemctl restart network# 配置yum源并按章软件包
[root@localhost ~]# rm -rf /etc/yum.repos.d/*
[root@localhost ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
[root@localhost ~]# curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
[root@localhost ~]# yum clean all
[root@localhost ~]# yum makecache fast
[root@localhost ~]# yum install -y dhcp tftp tftp-server syslinux wget vsftpd pykickstart

三、dhcp服务器配置

[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
#确保配置文件内容如下
ddns-update-style interim;
ignore client-updates;
authoritative;
allow booting;
allow bootp;
allow unknown-clients;# A slightly different configuration for an internal subnet.subnet 192.168.231.0 netmask 255.255.255.0 
{range 192.168.231.140 192.168.231.200;option domain-name-servers 8.8.8.8;option domain-name "server1.example.com";option routers 192.168.231.2;option broadcast-address 192.168.231.255;default-lease-time 600;max-lease-time 7200;# PXE SERVER IPnext-server 192.168.231.140;     # DHCP server ipfilename "pxelinux.0";}

四、TFTP服务准备(不需要修改)

[root@localhost ~]# vim /etc/xinetd.d/tftp
#修改内容如下
service tftp
{socket_type          = dgramprotocol                = udpwait                      = yesuser                    = rootserver                  = /usr/sbin/in.tftpdserver_args             = -s /var/lib/tftpbootdisable                 = noper_source              = 11cps                     = 100 2flags                   = IPv4}[root@localhost ~]# cp /usr/share/syslinux/{pxelinux.0,menu.c32,memdisk,mboot.c32,chain.c32} /var/lib/tftpboot/
[root@localhost ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@localhost ~]# mkdir /var/lib/tftpboot/netboot

五、VSftpd服务准备

要安装的客户端机子需要点几下,如果是nat就选nat模式,反之就是桥接)

在VMware中将cd驱动器链接

[root@localhost ~]# mount /dev/cdrom /mnt
[root@localhost ~]# cp -rf /mnt/* /var/ftp/pub/   (这里可以更改pub为自己的,后面也要修改)# 拷贝系统启动时需要的镜像文件
[root@localhost ~]# cp /var/ftp/pub/images/pxeboot/vmlinuz /var/lib/tftpboot/netboot/
[root@localhost ~]# cp /var/ftp/pub/images/pxeboot/initrd.img /var/lib/tftpboot/netboot/# 创建ks.cfg 文件
[root@localhost ~]# vim /var/ftp/pub/ks.cfg
#platform=x86, AMD64, or Intel EM64T#version=DEVEL# Firewall configurationfirewall --disabled# Install OS instead of upgradeinstall# Use NFS installation mediaurl --url="ftp://10.20.157.100/pub/"rootpw --plaintext 123456
#root的密码设为123456# Use graphical installgraphicalfirstboot disable# System keyboardkeyboard us# System languagelang en_US# SELinux configurationselinux disabled# Installation logging levellogging level=info
# System timezonetimezone Asia/Shanghai# System bootloader configurationbootloader location=mbrclearpart --all --initlabelpart swap --asprimary --fstype="swap" --size=1024part /boot --fstype xfs --size=200part pv.01 --size=1 --growvolgroup rootvg01 pv.01logvol / --fstype xfs --name=lv01 --vgname=rootvg01 --size=1 --growreboot%packages@corewget%end%post%end# 检查语法是否有错误
[root@localhost ~]# ksvalidator /var/ftp/pub/ks.cfg

六、PXE菜单

这个文件可以更改自己的pxe,名字

[root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/defaultdefault menu.c32prompt 0timeout 30MENU TITLE Togogo.net Linux TrainingLABEL centos7_x64MENU LABEL CentOS 7 X64 for newrainKERNEL /netboot/vmlinuzAPPEND  initrd=/netboot/initrd.img inst.repo=ftp://10.20.157.100/pub ks=ftp://10.20.157.100/pub/ks.cfg

七、重启服务

[root@localhost ~]# systemctl enable dhcpd vsftpd tftp
[root@localhost ~]# systemctl restart dhcpd vsftpd tftp

八、创建虚拟机-自动安装系统

注意:内存必须大于2G(如果小于就安装不成功)

然后开始启动,选择否

下面的这个在这里() ---》电源---》打开电源时进入固件^ ---  ^

扩展

ip r (看网关)

255是广播地址

内存不能低于两个g

rc.local 开机自启

硬盘

镜像

网络                这是系统启动的时候的优先级,可以修改

ftp账号密码:这样写(网站也可以这样写)

以后可能会见到更多这样的

 lftp ftp://账号:密码@ip地址

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

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

相关文章

云游戏发行是什么?云游戏发行的演进历程

云游戏发行是一系列基于云游戏技术的游戏发行策略或行为,融合云试玩、云微端、可玩广告、跨端移植等技术,从而在传统游戏发行生态的基础上实现更为卓越的发行效果。 云游戏发行出现的原因 近年来,游戏市场出现负增长。其原因一方面在于游戏版…

一套plm系统大约多少钱?彩虹PLM系统

一套PLM(产品生命周期管理)系统的价格因多个因素而异,包括企业规模、需求复杂性、系统功能、技术支持和厂商选择等。一般来说,面向小型和微型企业的PLM产品,其价位在5万元~15万元左右;面向中型企业的中端PL…

【数据结构学习笔记】冒泡排序

【数据结构学习笔记】冒泡排序 参考电子书:排序算法精讲 算法原理 对未排序的元素进行多次遍历,每次遍历都将相邻的两个元素进行比较,如果它们的顺序错误就交换它们的位置。在每一轮遍历后,最大的元素会被冒泡到序列的末端。这…

【Docker】容器的生态系统

Docker提供了一整套技术支持,包括核心技术、平台技术、支持技术。 核心技术 容器核心技术是指能让Container(容器)在host(集群、主机)上运行起来的那些技术。 1)容器规范:OCI(runt…

【Java】读取手机文件名称

首先,确保你已经连接了你的手机并已启用 USB 调试模式。然后,你需要使用 Android Debug Bridge(ADB)工具来获取手机文件列表。以下是一个简单的 Java 代码片段,使用 ProcessBuilder 调用 ADB 命令来获取文件列表&#…

InnoDB和MyISAM存储引擎

InnoDB mysql默认存储引擎 支持事务,行级锁(并发量大),外键约束,容量大,支持缓存,支撑主键自增, 全文检索,不存储表的总行数,需要sql逐行统计 MyISAM 不…

QString的参数传递

在 Qt 框架中,QString 是一个非常常用的类,用于处理字符串。当涉及到 QString 的参数传递时,通常需要考虑以下几点: 按值传递 (Pass by Value): 当你将一个 QString 对象作为参数传递给一个函数时,你可以直接传递它的值。这种情况下,函数会接收这个 QString 的一个副本。…

沙发3d模型制作过程---模大狮模型网

制作沙发的3D模型通常需要经历以下步骤: 概念设计: 首先,根据设计师或客户的需求,进行概念设计。这包括通过手绘草图或数字绘图软件创建初始设计概念。 建模: 使用专业的3D建模软件(例如Blender、Maya、3ds Max)进行建…

ATFX汇市:美国2月CPI数据来袭,高通胀问题或进一步缓解

ATFX汇市:今日20:30,美国劳工部将公布2月未季调核心CPI年率数据,前值为3.9%,预期值3.7%,预期将下降0.2个百分点。历史数据看,美国核心CPI年率处于快速下降状态,去年3月份数据仍高达5.6%&#xf…

CSS 用 flex 布局绘制骰子

<!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style>.box {height: 100px;width: 100px;border: 2px solid grey;border-radius: 10px;display: flex;justify-content: center; // 水平居中/* alig…

[论文笔记] ICLR 2022 | 减少跨语言表示差异,字节跳动AI Lab通过流形混合增强跨语言迁移

论文地址:https://openreview.net/pdf?id=OjPmfr9GkVv代码地址:https://github.com/yhy1117/X-Mixup 字节跳动人工智能实验室和加利福尼亚大学圣塔芭芭拉分校的研究者提出了 跨语言流形混合(X-Mixup)方法为目标语言提供 “折衷” 的表示,让模型自适应地校准表示差…

LLM(大语言模型)常用评测指标-MAP@R

MAPR (Mean Average Precision at R) 是一种用于评估信息检索系统或排序模型效果的评价指标。它特别适用于那些返回一组相关结果的情况&#xff0c;例如搜索引擎或推荐系统。这里的“R”代表返回的相关结果的数量。MAPR 考虑了结果的排名和相关性两个因素。 计算方法 计算平…

基础小白快速入门web前端开发技术------->hbuilder的下载安装以及简易的网页最开始制作

工欲善其事&#xff0c;必先利其器&#xff0c; 在我们学习开发网页设计&#xff0c;我们首先需要一个良好的开发工具 这里我比较推荐hbuilder这个 只需要进入官网傻瓜下载&#xff0c;傻瓜安装 https://dcloud.io/ 点击hbuilder选择版本进行下载安装即可 hbuilder的新建文件…

01 THU大模型之基础入门

1. NLP Basics Distributed Word Representation词表示 Word representation: a process that transform the symbols to the machine understandable meanings 1.1 How to represent the meaning so that the machine can understand Compute word similarity 计算词相似度 …

高级语言讲义2018软专(仅高级语言部分)

1.编写程序输入任意一个正整数n&#xff0c;,输出由组成的最大正整数。例如输入3846,则输出8643. #include <stdio.h>void sort(int *arr,int m,int n) {for(int im; i<n-1; i)for(int jm; j<nm-i; j)if(arr[j]<arr[j1]) {int temparr[j];arr[j]arr[j1];arr[j1…

【计算机网络实践】FileZilla Server1.8.1实现局域网ftp文件传输

大二新生随便写写笔记&#xff0c;轻喷&#xff0c;鉴于本人在网络搜索中并未搜索到1.8.1版本的使用方法&#xff0c;因而瞎写一页。 一、准备 下载一个FileZilla Server1.8.1在你想作为服务器的主机上&#xff08;此处直接在官网下载即可&#xff1a;Download FileZilla Serve…

收下这份实操案例,还怕不会用Jmeter接口测试工具

一、简介 JMeter&#xff0c;一个100&#xff05;的纯Java桌面应用&#xff0c;由Apache组织的开放源代码项目&#xff0c;它是接口功能、自动化、性 能测试的工具。具有高可扩展性、支持HTTP、HTTPS、TCP、等多种协议&#xff0c;还可以自己编写Java脚本对 协议进行扩展。 官…

Seatunnel系列之:Apache Iceberg sink connector和往Iceberg同步数据任务示例

Seatunnel系列之:Apache Iceberg sink connector和往Iceberg同步数据任务示例 一、支持的Iceberg版本二、支持的引擎三、描述四、支持的数据源信息五、数据库依赖六、数据类型映射七、Sink选项八、往Iceberg同步数据任务示例一、支持的Iceberg版本 1.4.2二、支持的引擎 SparkF…

力扣● 1143.最长公共子序列 ● 1035.不相交的线 ● 53. 最大子序和 动态规划

● 1143.最长公共子序列 1.dp数组含义。 dp[i][j]&#xff1a;数组1[0,i-1]范围的子数组和数组2[0,j-1]的子数组的公共子序列最长长度。注意这里不需要一定以A[i-1]/B[j-1]结尾&#xff0c;原因在下面有说明。 动态规划求子序列的问题&#xff0c;一般都是dp的下标相对于数组…

Java Web实战(三)Web后端之MySQL语法使用详解-01

目录 MySQL数据模型SQL 分类DDL(Data Definition Language)databasetable DML(Data Manipulation Language)DQL (Data Query Language)条件查询统计分组、排序、分页 案例&#xff1a;根据页面原型分析需求完成员工信息查询 MySQL数据模型 database table record SQL 分类 简…