PCE自动装机

news2024/11/8 23:42:36

服务端和客户端

pxe:c/s模式,允许客户端通过远程服务器(服务端)下载引导镜像,加载安装吻技安,实现自动化安装操作系统。

无人值守:安装选项不需要认为干预,可以自动化实现。

pxe优点:

1.规模化 同时装配多台服务器20多台不超过30台。

2.自动化

3.远程实现:不需要光盘u盘。

c/s客户端和服务端可以是多台。

pxe的安装条件:

硬件:网卡要支持pxe协议。主板支持网络引导。

软件:服务端要有dhcp服务,可以在客户机启动时自动分配ip地址。

TFTP 简单文件传输协议,传小文件,引导镜像文件很小,使用tftp

BSFTP 文件传输协议,传送大文件,安装文件。

test2作为服务端

[root@test2 ~]# yum -y install tftp-server xinetd

FTP xinetd 网络守护进程服务程序,用来管理轻量级的网络服务。管理TFTP的文件传输,是一个后台进程,使用的是udp协议端口是69

[root@test2 ~]# yum -y install dhcp

DCHP

[root@test2 ~]# yum -y install dhcp

VSFTP

准备pxe的引导文件,通过光盘镜像把文件复制出来复制到/var/lib/tftpboot/

vmlinuz linux的系统的内核文件

initrd.img 初始化镜像文件,引导加载的模块文件

pxelinux.0 引导程序文件

安装pxe的引导程序

配置启动菜单文件:

无人值守

安装无人值守

实验

1.关闭防火墙安装tftp 文件传输

[root@test2 ~]# systemctl stop firewalld
[root@test2 ~]# setenforce 0
[root@test2 ~]# yum -y install tftp-server xinetd     安装文件输出

2.重启安装的配置文件,设置为开机自启

[root@test2 ~]# systemctl restart tftp     重启配置文件
[root@test2 ~]# systemctl enable tftp     开机自启
Created symlink from /etc/systemd/system/sockets.target.wants/tftp.socket to /usr/lib/systemd/system/tftp.socket.
[root@test2 ~]# systemctl restart xinetd.service    重启配置文件
[root@test2 ~]# systemctl ana xinetd.service   
Unknown operation 'ana'.
[root@test2 ~]# systemctl enable xinetd.service    开机自启

3.修改tftp配置文件

[root@test2 ~]# vim /etc/xinetd.d/tftp
#       and to start the installation process for some operating systems.
​
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = no            把yes改为no  单个发送成为并发
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        disable                 = no           把yes改为no 
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
:wq!                     
[root@test2 ~]# systemctl restart tftp   修改配置文件后要重启
[root@test2 ~]# systemctl restart xinetd     修改配置文件后要重启  

4.安装dhcp分配IP地址

[root@test2 ~]# yum -y install dhcp

5.复制dhcp到/etc/dhcpd.conf 覆盖掉原来的文件

[root@test2 ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? yes

6.修改dhcp的配置文件

[root@test2 ~]# vim /etc/dhcp/dhcpd.conf
​
Use this to enble / disable dynamic dns updates globally.
​
ddns-update-style none;     注释掉
next-server 192.168.65.21;  
#指定tftp的服务器
filename "pxelinux.0";     
#指定下载pxe的引导文件
​
This is a very basic subnet declaration.
​
subnet 192.168.65.0 netmask 255.255.255.0 {    该网关  子网掩码
  range 192.168.65.100 192.168.65.110;    改网段范围
  option routers 192.168.65.21;   改为ip地址
}
​
wq!
[root@test2 ~]# systemctl restart dhcpd   重启

7.挂载光盘镜像

[root@test2 ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
​
/dev/sr0                iso9660   4.3G  4.3G     0  100% /mnt

8.进入挂载点查看内核文件

[root@test2 ~]# cd /mnt/
[root@test2 mnt]# ls
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
EULA             isolinux  repodata  TRANS.TBL
[root@test2 mnt]# cd images/
[root@test2 images]# ls
efiboot.img  pxeboot  TRANS.TBL
[root@test2 images]# cd pxeboot/
[root@test2 pxeboot]# ls
initrd.img  TRANS.TBL  vmlinuz            linux的系统内核文件 vmlinuz
​

9.复制内核文件vmlnuz到配置文件中的根目录下

[root@test2 pxeboot]# ll
总用量 57838
-rw-r--r--. 1 root root 52584760 11月 26 2018 initrd.img
-r--r--r--. 1 root root      441 11月 26 2018 TRANS.TBL
-rwxr-xr-x. 1 root root  6639904 11月  9 2018 vmlinuz
[root@test2 pxeboot]# cp vmlinuz /var/lib/tftpboot/

10.复制initrd.img 初始化镜像文件,引导加载的模块文件到根目录/var/lib/tftpboot/

[root@test2 pxeboot]# ls
initrd.img  TRANS.TBL  vmlinuz
[root@test2 pxeboot]# cp initrd.img /var/lib/tftpboot/

检查文件是否复制到根目录下

[root@test2 pxeboot]# cd /var/lib/tftpboot/
[root@test2 tftpboot]# ls
initrd.img  vmlinuz

11.安装pxe的引导程序 是syslinux

[root@test2 tftpboot]# yum -y install syslinux
[root@test2 tftpboot]# cd /usr/share/syslinux/         pxeLinux.0程序引导文件
[root@test2 syslinux]# ls
cpuidtest.c32  hdt.c32       kbdmap.c32          poweroff.com  vesamenu.c32
diag           host.c32      linux.c32           pwd.c32       vpdtest.c32
disk.c32       ifcpu64.c32   ls.c32              pxechain.com  whichsys.c32
dmitest.c32    ifcpu.c32     lua.c32         找到 pxelinux.0    zzjson.c32
dosutil        ifplop.c32    mboot.c32           reboot.c32
elf.c32        int18.com     mbr.bin             rosh.c32

12.复制程序引导文件pxelinux.0到根目录

[root@test2 syslinux]# cp pxelinux.0 /var/lib/tftpboot/
[root@test2 syslinux]# cd /var/lib/tftpboot/
[root@test2 tftpboot]# ls     查看是否复制完成
initrd.img  pxelinux.0  vmlinuz    初始化镜像   程序引导文件   内核文件    
[root@test2 tftpboot]#          三个一个都不能少都要复制到/var/lib/fttpboot/注意权限是否足够

13.安装vsftp 整个镜像文件复制到vsftp默认的根目录下

[root@test2 tftpboot]# yum -y install vsftpd
[root@test2 tftpboot]# cd /var/ftp/
[root@test2 ftp]# ls
 pub
[root@test2 ftp]# mkdir centos7 
[root@test2 ftp]# cp -fr /mnt/* /var/ftp/centos7/    因为文件大所以用ftp传不用vsftp
[root@test2 ftp]# cd /var/ftp/centos7/
[root@test2 centos7]# ls
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
EULA             isolinux  repodata  TRANS.TBL
[root@test2 centos7]# systemctl restart vsftpd   重启一下vsftp
​

14.配置启动菜单文件

[root@test2 centos7]# mkdir /var/lib/tftpboot/pxelinux.cfg   在根目录里创建一个目录
[root@test2 centos7]# cd /var/lib/tftpboot/
[root@test2 tftpboot]# ls    查看创建的目录
initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz

15.在新建的配置文件中配置(default)

[root@test2 tftpboot]# cd pxelinux.cfg/
[root@test2 pxelinux.cfg]# ls
[root@test2 pxelinux.cfg]# vim default
default auto
#指定安装程序的入口,使用这个文件作为安装程序的入口。自动选择。
prompt 0
#是否等待用户选择,0不等待用户输入自动完成。1需要用户手动完成
label auto
#图形界面的默认安装入口
kernel vmlinuz
#表示加载内核文件,是vmlinuz
append initrd=initrd.img method=ftp://192.168.65.21/centos7
​
label linux text
#字符界面,最小化安装
kernel vmlinuz
#加载内核
append initrd=initrd.img method=ftp://192.168.65.21/centos7
​
label linux rescue
#救援模式的引导入口
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.65.21/centos7
:wq!   

在新建的虚拟机上操作

1.运行新建虚拟机

无人值守操作

1.xshell安装无人值守

[root@test2 pxelinux.cfg]# yum -y install system-config-kickstart

无人值守配置

1.回到根目录进入保存文件修改配置文件

[root@test2 pxelinux.cfg]# cd
[root@test2 ~]# ls
anaconda-ks.cfg       ks.cfg  模板  图片  下载  桌面
initial-setup-ks.cfg  公共    视频  文档  音乐
[root@test2 ~]# vim ks.cfg
    把这些安装包添加进来,格式以%开头以%结尾
%packages
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@print-client
@x11
binutils
chrony
ftp
gcc
kernel-devel
kexec-tools
make
open-vm-tools
patch
python
​
%end

2.把ks.cfg添加到default

[root@test2 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default 
​
label auto
#图形界面的默认安装入口
kernel vmlinuz
#表示加载内核文件,是vmlinuz
append initrd=initrd.img method=ftp://192.168.65.21/centos7 ks=ftp://192.168.65.21/ks.cfg

3.把ks.cfg复制到ftp的根目录

[root@test2 ~]# vim ks.cfg
[root@test2 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default 
[root@test2 ~]# cp ks.cfg /var/ftp/
[root@test2 ~]# cd /var/ftp/
[root@test2 ftp]# ls
centos7  ks.cfg  pub
[root@test2 ftp]# 

4.到新建的虚拟机,虚拟机是卡住的状态,这是直接重启虚拟机。

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

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

相关文章

Linux C语言:变量的作用域和生命周期(auto、register、static和extern)

一、变量存储类型-auto 1、auto变量的说明 变量在程序中使用时,必须预先说明它们的存储类型和数据类型。 变量说明的一般形式是&#xff1a; <存储类型> <数据类型 > <变量名> &#xff1b; <存储类型>是关键词auto、register、static和extern<…

光储充一体化充电站:能源革新的绿色引擎

在这个科技日新月异的时代&#xff0c;一场绿色能源的革命正悄然兴起。 光储充一体化充电站&#xff0c;作为这场革命中的璀璨明星&#xff0c;正以其独特的魅力&#xff0c;引领我们走向更加环保、高效的未来。 光储充一体化充电站&#xff0c;顾名思义&#xff0c;将光伏发电…

Java爬虫——正则表达式应用

Pattern Matcher均属于regex下 步骤&#xff1a;pattern获取正则&#xff0c;matcher获取文本对象&#xff0c;find截取字符串&#xff08;返回true、false&#xff09;&#xff0c;group获得字符 例题&#xff1a;爬取指定文字 分析&#xff1a; 二次调用时&#xff1a; 循环…

【云服务器介绍】选择指南 腾讯云 阿里云全配置对比 搭建web 个人开发 app 游戏服务器

​省流目录&#xff1a;适用于博客建站&#xff08;2-4G&#xff09;、个人开发/小型游戏[传奇/我的世界/饥荒]&#xff08;4-8G&#xff09;、数据分析/大型游戏[幻兽帕鲁/雾锁王国]服务器&#xff08;16-64G&#xff09; 1.京东云-618专属活动 官方采购季专属活动地址&#x…

循环 -控制语句

循环 循环是什么 重复执行一段代码的结构。只要满足循环的条件&#xff0c;会一直执行这个代码。 循环条件&#xff1a;在一定范围之内&#xff0c;按照指定的次数来执行循环。 循环体&#xff1a;在指定的次数内执行的命令序列。只要条件满足循环体会被一直执行。 循环和…

抖店被扣保证金,做起来太难导致心态崩了,怎么办?

我是王路飞。 技术、黑科技这些东西&#xff0c;决定不了你做店的结果。 能够决定最终结果的&#xff0c;一定是心态&#xff0c;是乐观还是悲观&#xff1f;是自负还是自卑&#xff1f;是焦躁还是踏实&#xff1f;这很关键。 店铺被扣保证金了&#xff0c;感觉没希望了&…

Arduino 项目:太阳能跟踪器

在本文中&#xff0c;您将逐步学习如何使用 光敏电阻和舵机制作双轴太阳能跟踪器 Arduino 项目。在这个项目中&#xff0c;我们将使用一些光敏传感器来跟踪阳光&#xff0c;并将利用舵机将太阳能电池板引导到可提高其效率的区域。 此项目所需的组件 序号部件名称描述数量备注…

加码多肤色影像技术 这是传音找到的“出海利器“?

全球化时代&#xff0c;市场竞争愈演愈烈&#xff0c;产品差异化已然成为了企业脱颖而出的关键。在黄、白肤色长期占据人像摄影主赛道的背景下&#xff0c;传音就凭借独一无二的多肤色影像技术走出非洲&#xff0c;走向了更广阔的新兴市场。 聚焦深肤色人群拍照痛点&#xff0c…

2024酒店IPTV云桌面系统建设方案

Hello大家好&#xff0c;我是点量小芹&#xff0c;这一年多的时间一直在分享实时云渲染像素流相关的内容&#xff0c;今天和大家聊聊酒店IPTV云桌面电视系统解决方案&#xff0c;或者有的朋友也会称之为IPTV服务器。熟悉小芹的朋友知道&#xff0c;IPTV软件系统是我们一直在推的…

C++迈向精通:当我尝试修改虚函数表

尝试修改虚函数表 本期纯整活儿好吧&#xff01;&#xff01;&#xff01;&#xff01; 初衷 有一天我突然开始好奇虚函数表是否真的存在&#xff0c;于是我开始想是否能够从C中查看或者调用虚函数表中的内容。&#xff0c;于是有了下面的操作。 操作过程 起初我并没有思路…

gridview的模板按钮如何判断用户点击的是哪一行

在asp.net的 GridView 控件中&#xff0c;判断用户点击的是哪一行通常可以通过处理 GridView 的 RowCommand 事件来实现。RowCommand 事件会在 GridView 的每个按钮&#xff08;除非另有指定的CommandName&#xff09;被点击时触发&#xff0c;并且事件参数中包含了足够的信息来…

基于redis的分布式锁

一、redis分布式锁基本信息 1.详细讲解&#xff1a; Redis 分布式锁是一种用于控制分布式系统中多个进程对共享资源的并发访问的机制。通过 Redis 的原子操作和过期时间功能&#xff0c;可以实现一个简单而有效的分布式锁。接下来&#xff0c;我们将详细介绍其工作原理、基本…

杨氏矩阵和杨辉三角的空间复杂度较小的解题思路

文章目录 题目1 杨氏矩阵题目2 杨辉三角 题目1 杨氏矩阵 有一个数字矩阵&#xff0c;矩阵的每行从左到右是递增的&#xff0c;矩阵从上到下是递增的&#xff0c;请编写程序在这样的矩阵中查找某个数字是否存在。 要求&#xff1a;时间复杂度小于O(N); 思路: 我们可以通过题目…

springboot SSM 宠物医院管理系统(源码+论文)

绪论 1.1 计算机管理信息系统的发展情况 1958 年美国首先提出了 “管理信息系统 ”&#xff08;即 MIS&#xff1a;Management Information Systems&#xff09;&#xff0c;从而也引出了另外一个概念 ——“管理信息系统 ”。综合其多种定义以及根据在实际中的应用&#xff…

C语言| 数组

直接定义一个数组&#xff0c;并给所有元素赋值。 数组的下标从0开始&#xff0c;下标又表示数组的长度。 【程序代码】 #include <stdio.h> int main(void) { int a[5] {1, 2, 3, 4, 5}; int i; for(i0; i<5; i) { printf("a[%d] %d\…

HSP_08章 断点调试

P100 断点调试 1. 基本介绍 一个实际场景 在开发中&#xff0c;新手程序员在查找错误时&#xff0c;这时有经验的程序员就会提示&#xff0c;可以用断点调试&#xff0c;一步一步的看源码执行的过程, 从而发现错误所在。 断点调试介绍 -基本介绍 2. 函数的调试

在不使用js在情况下只用css实现瀑布流效果

使用到的是grid 布局&#xff0c;需要注意的是grid-template-rows: masonry; 目前只有Firefox 浏览器支持这个效果&#xff0c;而且还是一个实验性属性需要在设置里面开发实验性选项才行。 实例 <!DOCTYPE html> <html> <head><title>Document</ti…

某国资集团数据治理落地,点燃高质量发展“数字引擎”

​某国有资产经营控股集团为快速提升集团的内控管理能力和业务经营能力&#xff0c;以数字化促进企业转型的信息化建设势在必行。集团携手亿信华辰开启数据治理项目&#xff0c;在数据方面成功解决“哪里来、怎么盘、怎么管、怎么用”的问题&#xff0c;不断推动企业数字化转型…

焦化行业排放平台简介

在当今社会&#xff0c;环保事业日益受到人们的关注。焦化行业作为重要的工业领域之一&#xff0c;其排放问题一直是环保工作的重点。为了有效控制焦化行业的排放&#xff0c;实施焦化行业排放平台成为了必不可少的措施。朗观视觉小编将详细探讨焦化行业排放平台的实施范围&…

vue技巧(十)全局配置使用(打包后可修改配置文件)

1、背景 vue打包目前主流用的有webpack和vite两种&#xff0c;默认用的webpack。&#xff08;二者的区别大家可以各自上网查&#xff0c;我没用过vite&#xff0c;所以不过多介绍&#xff09;vue通过webpack打包后&#xff0c;源码会被压缩&#xff0c;但一些关键配置可…