pxe远程安装

news2024/11/27 0:18:12

        PXE

规模化:可以同时装配多台服务器

自动化:自动安装操作系统和各种配置

不需要光盘U盘        前置需要一台PXE服务器

pxe是预启动执行环境,再操作系统之前运行

实验:

首先先关闭防火墙等操作

[root@localhost ~]# systemctl disable --now firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# setenforce 0
[root@localhost ~]# vim /etc/selinux/config 
修改成
SELINUX=disabled

然后吧虚拟机网络设置成仅主机模式 然后yum安装

yum install -y tftp-server  xinetd  dhcp  vsftpd  syslinux
[root@localhost ~]# cd /mnt/
[root@localhost mnt]# ls
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL
[root@localhost mnt]# cd images/
[root@localhost images]# ls
efiboot.img  pxeboot  TRANS.TBL
[root@localhost images]# cp pxeboot/
cp: 在"pxeboot/" 后缺少了要操作的目标文件
Try 'cp --help' for more information.
[root@localhost images]# cd pxeboot/
[root@localhost pxeboot]# ls
initrd.img  TRANS.TBL  vmlinuz
[root@localhost pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot/
[root@localhost pxeboot]# cd /usr/share/syslinux/
[root@localhost syslinux]# ls
altmbr.bin     dosutil       ifcpu64.c32         kbdmap.c32   pcitest.c32     syslinux.com
altmbr_c.bin   elf.c32       ifcpu.c32           linux.c32    pmload.c32      syslinux.exe
altmbr_f.bin   ethersel.c32  ifplop.c32          ls.c32       poweroff.com    ver.com
cat.c32        gfxboot.c32   int18.com           lua.c32      pwd.c32         vesainfo.c32
chain.c32      gptmbr.bin    isohdpfx.bin        mboot.c32    pxechain.com    vesamenu.c32
cmd.c32        gptmbr_c.bin  isohdpfx_c.bin      mbr.bin      pxelinux.0      vpdtest.c32
config.c32     gptmbr_f.bin  isohdpfx_f.bin      mbr_c.bin    reboot.c32      whichsys.c32
cpuid.c32      gpxecmd.c32   isohdppx.bin        mbr_f.bin    rosh.c32        zzjson.c32
cpuidtest.c32  gpxelinux.0   isohdppx_c.bin      memdisk      sanboot.c32
diag           gpxelinuxk.0  isohdppx_f.bin      memdump.com  sdi.c32
disk.c32       hdt.c32       isolinux.bin        meminfo.c32  sysdump.c32
dmitest.c32    host.c32      isolinux-debug.bin  menu.c32     syslinux64.exe
[root@localhost syslinux]# cp p
cp: 在"p" 后缺少了要操作的目标文件
Try 'cp --help' for more information.
[root@localhost syslinux]# cp pxelinux.0 /var/lib/tftpboot/
[root@localhost syslinux]# ls /var/lib/tftpboot/
initrd.img  pxelinux.0  vmlinuz
[root@localhost syslinux]# cd /var/lib/t
tftpboot/ tpm/      tuned/
[root@localhost syslinux]# cd /var/lib/tftpboot/
[root@localhost tftpboot]# ls
initrd.img  pxelinux.0  vmlinuz
[root@localhost tftpboot]# mkdir pxelinux.cfg
[root@localhost tftpboot]# ls
initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz
[root@localhost tftpboot]# cd pxelinux.cfg/

[root@localhost pxelinux.cfg]# vim default
default auto 							#指定默认入口名称
prompt 0 								#设置是否等待用户选择,“1”表示等待用户控制

label auto								#图形安装(默认)引导入口,label 用来定义启动项
kernel vmlinuz							#kernel 和 append用来定义引导参数
append initrd=initrd.img method=ftp://192.168.80.66/centos7

label linux text						#文本安装引导入口
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.80.66/centos7

label linux rescue						#救援模式引导入口
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.80.66/centos7
[root@localhost syslinux]# cd /var/lib/tftpboot/
[root@localhost tftpboot]# ls
initrd.img  pxelinux.0  vmlinuz
[root@localhost tftpboot]# mkdir pxelinux.cfg
[root@localhost tftpboot]# ls
initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz
[root@localhost tftpboot]# cd pxelinux.cfg/
[root@localhost pxelinux.cfg]# vim default
[root@localhost pxelinux.cfg]# vim default
[root@localhost pxelinux.cfg]# vim default
[root@localhost pxelinux.cfg]# cd /etc/xinetd.d/
[root@localhost xinetd.d]# vim t
tcpmux-server  tftp           time-dgram     time-stream
[root@localhost xinetd.d]# vim tftp

service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = no
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        disable                 = no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

然后启动

[root@localhost xinetd.d]# systemctl enable --now tftp xinetd
Created symlink from /etc/systemd/system/sockets.target.wants/tftp.socket to /usr/lib/systemd/system/tftp.socket.
在vim修改vim dhcpd.conf文件

max-lease-time 7200;

# Use this to enble / disable dynamic dns updates globally.
ddns-update-style none;

next-server 192.168.80.66;
filename "pxelinux.0";


subnet 192.168.80.0 netmask 255.255.255.0 {
  range 192.168.80.100 192.168.80.200;
  option routers 192.168.80.30;
}

最后安装[root@localhost dhcp]# yum install -y system-config-kickstart.noarch


然后到虚拟机找到第二个文件

然后保存到root中

这时候我们到根目录中就可以看见ks.的那个文件了

anaconda-ks.cfg  initial-setup-ks.cfg  ks.cfg  公共  模板  视频  图片  文档  下载




先vim到[root@localhost ~]# vim anaconda-ks.cfg这个目录复制下面的东西

%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@development
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony
kexec-tools

%end

在vim到root@localhost ~]# vim ks.cfg
在最下面添加上去上面的东西
[root@localhost ~]# cp ks.cfg /var/ftp/
[root@localhost ~]# cd /var/ftp/
[root@localhost ftp]# ls
ks.cfg  pub
[root@localhost ftp]# mkdr centos7
bash: mkdr: 未找到命令...
[root@localhost ftp]# mkdir centos7
[root@localhost ftp]# mount /dev/sr0 centos7/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ftp]# ls centos7/
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL

当我们操作完成之后在去准备一台新的客户机 不用挂载光盘 运行内存一定大于2GB

然后虚拟机创建就好了

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

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

相关文章

Linux学习之路 -- 文件 -- 文件描述符

前面介绍了与文件相关的各种操作&#xff0c;其中的各个接口都离不开一个整数&#xff0c;那就是文件描述符&#xff0c;本文将介绍文件描述符的一些相关知识。 目录 <1>现象 <2>原理 文件fd的分配规则和利用规则实现重定向 <1>现象 我们可以先通过prin…

搭建父模块和工具子模块

第一章 项目父模块搭建 1.1 nancal-idsa 作为所有工程的父工程&#xff0c;用于管理项目的所有依赖版本。 1.2 指定 pom 类型模块&#xff0c;删除 src 目录&#xff0c;点击Reload project 1.3 添加依赖 pom.xml <parent> <groupId>org.springframework.…

纯干货,源代码防泄露的有效方法

随着云计算、移动互联、物联网等新技术的发展&#xff0c;传统的安全边界变得越来越模糊&#xff0c;访问控制模式局限性也越来越明显。企业需满足员工在任意时间、地点对企业内部进行访问的需求&#xff1b;服务器之间各自为界、相互独立&#xff0c;缺乏统一的安全管理标准&a…

DeepSeek发布全新开源大模型,GPT-4级别能力 价格仅百分之一

最新国产开源MoE大模型&#xff0c;刚刚亮相就火了。 DeepSeek-V2性能达GPT-4级别&#xff0c;但开源、可免费商用、API价格仅为GPT-4-Turbo的百分之一。 因此一经发布&#xff0c;立马引发不小讨论。 从公布的性能指标来看&#xff0c;DeepSeek-V2的中文综合能力超越一众开源…

第六代移动通信介绍、无线网络类型、白皮书

关于6G 即第六代移动通信的介绍&#xff0c; 图解通信原理与案例分析-30&#xff1a;6G-天地互联、陆海空一体、全空间覆盖的超宽带移动通信系统_6g原理-CSDN博客文章浏览阅读1.7w次&#xff0c;点赞34次&#xff0c;收藏165次。6G 即第六代移动通信&#xff0c;6G 将在5G 的基…

初识Node.js-认识node(安装Node.js环境配置)

目录 一、node介绍 1.概念和特点 2.核心功能 3.应用场景 二、Node初使用 1.安装node配置 windows上安Node.js 1.windows安装包&#xff08;.msi&#xff09; 2、Windows 二进制文件 (.exe)安装 Linux 上安装 Node.js 直接使用已编译好的包 Ubuntu 源码安装 Node.js …

Linux进程地址空间第三讲

至今为止&#xff0c; 我们所学到的大多数的知识&#xff0c; 包括语言&#xff0c; 数据结构&#xff0c; 动静态库等等的 都是在下面这3G&#xff0c; 也就是用户空间里的(进程等待&#xff0c; 信号之类的与内核有关的是在上面那1G里的) 所以对于我们来说&#xff0c; 我们…

避雷!5.3分,新增1区被标记On Hold,共12本SCI/SSCI慎投!

本周投稿推荐 SSCI • 2/4区经管类&#xff0c;2.5-3.0&#xff08;录用率99%&#xff09; SCIE&#xff08;CCF推荐&#xff09; • 计算机类&#xff0c;2.0-3.0&#xff08;最快18天录用&#xff09; SCIE&#xff08;CCF-C类&#xff09; • IEEE旗下&#xff0c;1/2…

贪吃蛇游戏(C语言实现)

目录 游戏效果展示文件代码的展示test.cSnake.cSnake.h 下一个坐标不是食物 游戏效果展示 QQ录屏20240507163633 文件 代码的展示 test.c #define _CRT_SECURE_NO_WARNINGS#include<locale.h> //设置本地化 #include"Snake.h"//游戏的测试逻辑 void test() {…

免单狂欢模式:电商销售的新风潮

免单狂欢模式&#xff0c;是电商行业里一股新兴的销售力量。它以其独特的激励机制、社交属性与合规运营&#xff0c;迅速吸引了众多消费者的目光&#xff0c;成为推动销售业绩飙升的强大动力。 一、合规运营&#xff0c;稳健发展 在免单狂欢模式中&#xff0c;我们严格遵守法律…

搭建Harbor仓库

文章目录 Harbor仓库搭建Harbor仓库安装 docker 服务修改配置文件 Harbor仓库 搭建Harbor仓库 下载 Harbor 仓库 安装 docker 服务 # step 1: 安装必要的一些系统工具 yum install -y yum-utils device-mapper-persistent-data lvm2 # Step 2: 添加软件源信息 yum-config-m…

NFCP502-W05 电流数据是多少安培?

YOKOGAWA NFCP502-W05 是一款由横河电机&#xff08;Yokogawa Electric Corporation&#xff09;生产的微型断路器&#xff08;Microcircuit Breaker&#xff0c;简称 MCB&#xff09;。 横河电机是一家日本的跨国公司&#xff0c;专注于自动化和控制系统、仪器和其他相关设备…

sh包装脚本

两个脚本,运行的时间间隔分别是一分钟和五分钟,放入到sh文件中,挂在后代,脚本里面的路径最好是绝对路径。 新建sh文件 新建 run_test.sh 文件,使其可以运行两个不同的 Python 脚本,一个每分钟运行一次,另一个每五分钟运行一次。下面是修改后的 run_test.sh 文件的示例:…

学QT的第二天~

小黑子鉴别界面 #include "mywidget.h" void MyWidget::bth1() { if(edit3 ->text()"520cxk"&&edit4 ->text()"1314520") { qDebug()<< "你好&#xff0c;真爱粉"; this->close(); } else { speecher->sa…

EMAIL-PHP功能齐全的发送邮件类可以发送HTML和附件

EMAIL-PHP功能齐全的发送邮件类可以发送HTML和附件 <?php class Email { //---设置全局变量 var $mailTo ""; // 收件人 var $mailCC ""; // 抄送 var $mailBCC ""; // 秘密抄送 var $mailFrom ""; // 发件人 var $mailSubje…

PyQt6--Python桌面开发(1.安装配置环境)

一.PyQt6简介 PyQt&#xff1a;PyQt是一个功能强大且成熟的GUI框架&#xff0c;基于Qt库。它提供了丰富的组件、布局和主题选项&#xff0c;以及强大的功能和灵活性。PyQt的优点是它具有现代化的外观和丰富的功能&#xff0c;适用于复杂的GUI应用程序。然而&#xff0c;由于Py…

Cobalt Strike DNS Beacon使用

0. 前言 1. 实验运行流程 2. 环境搭建 2.1.1 安装虚拟机软件VMware……大家应该都有装吧&#xff0c;这里就不教了 2.1.2 Windows 10虚拟机&#xff08;受害机&#xff09; 2.1.3 Ubuntu虚拟机&#xff08;攻击机&#xff09; 2.1 安装虚拟机 2.2 安装Java 2.3 安装Dock…

通过管理系统进行升级怎么选?

现在通过系统来做办公效率提升的又很多&#xff0c;但怎么选&#xff0c;确实很关键。 我们是在去年年初的时候进行企业系统化的。当时刚摘下口罩&#xff0c;领导也是意识到团队办公的不便&#xff0c;数据管理的混乱&#xff0c;业务流转的低效等原因&#xff0c;开始寻找各…

数据结构——链表专题3

文章目录 一、判断链表是否有环二、返回入环的第一个节点三、随机链表的复制 一、判断链表是否有环 原题链接&#xff1a;判断链表是否有环 这道题可以使用快慢指针&#xff0c;fast一次走两步&#xff0c;slow一次走一步&#xff0c;如果有环&#xff0c;它们在环里面必定会…

SAP-ABAP-视图

1、什么是视图&#xff1f; 当需要查询多个表中的某些字段的数据时&#xff0c;就可以使用视图。视图不影响数据库中的数据&#xff0c;仅作为查询手段或工具。 2、视图类型&#xff1a; 数据库视图和维护视图经常使用。 3、创建视图SE11 3.1、数据库视图 可以直接输入表名…