使用vmware制作云平台redhat7.9镜像模板
一、概述
1.1 redhat7.9 定制镜像上传到云平台。 这个制作镜像得方式适用于多种iso 镜像。
将iso 镜像通过vmware 创建出一台虚机,对虚机做一些基础配置。在虚机上安装kvm 虚拟化得工具, 将iso 镜像在导入虚机种通过kvm创建一下虚机, 虚机创建出来后会进入安装得界面无法自己引导安装, 所以我们通过图形化界面virt-manager 或者console 方法进入引导得界面,将虚机生产出来,此时得虚机是允许在qcow2 里,然后我对这个镜像做定制得配置或者按照。
二、开始制作镜像
2.1 通过vmware 创建新的虚机


2.2 创建自定义虚拟机



2.3 指定系统磁盘容量,大小根据自己实际分配

2.4 自定义硬件,移除其他不必要的硬件,根据自己实际移除。



2.5 指定启动光盘

2.6 启动虚拟机

2.7 根据自身选择语言
本次测试选择英文

2.8 根据需求选择安装信息

本次安装是最小安装模式
2.9 进入分区





2.10 设置密码

2.11 创建完成后重启虚机,登录虚机

**到此镜像就准备差不多了,如果需要下载安装报自己做一个网络源安装所需要得软件包 **
三、定制配置信息
3.1 指定网卡名为eth0(根据需求来做,需要就做,不需要跳过就好)
修改网卡配置文件
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-ens32 /home/ifcfg-ens32
[root@localhost network-scripts]# cp ifcfg-ens33 /home/ifcfg-ens33[root@localhost network-scripts]# mv ifcfg-ens32 ifcfg-eth0
[root@localhost network-scripts]# sed -i 's/ens32/eth0/g' ifcfg-eth0
[root@localhost network-scripts]# cat ifcfg-eth0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=8221b333-543f-4818-b4a1-b3ac55933901
DEVICE=eth0
ONBOOT=yes[root@localhost network-scripts]# mv ifcfg-ens33 ifcfg-eth1
[root@localhost network-scripts]# sed -i 's/ens33/eth1/g' ifcfg-eth1
[root@localhost network-scripts]# cat ifcfg-eth1
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth1
UUID=59748da2-300f-41c4-9711-1052e2525cd8
DEVICE=eth1
ONBOOT=yes
3.2 修改/etc/sysconfig/grub,给GRUB_CMDLINE_LINUX参数中增加net.ifnames=0 biosdevname=0
[root@localhost ~]# cat /etc/sysconfig/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"
3.3 添加udev网卡规则
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:bd:47:6b brd ff:ff:ff:ff:ff:ff
3: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:bd:47:75 brd ff:ff:ff:ff:ff:ffinet 192.168.111.136/24 brd 192.168.111.255 scope global noprefixroute dynamic ens33valid_lft 1651sec preferred_lft 1651secinet6 fe80::478d:2a32:d1fc:48dd/64 scope link noprefixroutevalid_lft forever preferred_lft forever[root@localhost ~]# vim /etc/udev/rules.d/70-persistent-ipoib.rulesACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="32", ATTR{address}=="自己本地得mac地址", NAME="eth0"ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="33", ATTR{address}=="自己本地得mac地址", NAME="eth1"
3.4 生成系统引导文件
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-693.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-693.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-5ac3927ec296497d93cca4c4ef73aedc
Found initrd image: /boot/initramfs-0-rescue-5ac3927ec296497d93cca4c4ef73aedc.img
done
重启虚机,可以观察到网卡已经被更正为eth0、eth1

3.5 创建网络yum源
[root@localhost ~]# cat /etc/yum.repos.d/redhat-aliyun.repo
[aliyun]
name=aliyun
baseurl= https://mirrors.aliyun.com/centos/7/os/x86_64/
enabled=1
gpgcheck=0[root@localhost yum.repos.d]# yum repolist
Loaded plugins: product-id, search-disabled-repos, subscription-managerThis system is not registered with an entitlement server. You can use subscription-manager to register.aliyun | 3.6 kB 00:00:00
(1/2): aliyun/group_gz | 153 kB 00:00:01
(2/2): aliyun/primary_db | 6.1 MB 00:00:42
repo id repo name status
aliyun aliyun 10,072
repolist: 10,072
3.5 软件包安装,禁用selinux
禁用selinux
[root@localhost yum.repos.d]# cat /etc/selinux/config | grep SELINUX
# SELINUX= can take one of these three values:
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
SELINUXTYPE=targeted
卸载防火墙与NetworkManager
[root@localhost yum.repos.d]# yum remove -y NetworkManager-* firewalld-* python-firewall
Loaded plugins: product-id, search-disabled-repos, subscription-managerThis system is not registered with an entitlement server. You can use subscription-manager to register.Resolving Dependencies
--> Running transaction check
---> Package NetworkManager.x86_64 1:1.18.8-1.el7 will be erased
---> Package NetworkManager-config-server.noarch 1:1.18.8-1.el7 will be erased
---> Package NetworkManager-libnm.x86_64 1:1.18.8-1.el7 will be erased
---> Package NetworkManager-team.x86_64 1:1.18.8-1.el7 will be erased
---> Package NetworkManager-tui.x86_64 1:1.18.8-1.el7 will be erased
---> Package firewalld.noarch 0:0.6.3-11.el7 will be erased
---> Package firewalld-filesystem.noarch 0:0.6.3-11.el7 will be erased
---> Package python-firewall.noarch 0:0.6.3-11.el7 will be erased
--> Finished Dependency ResolutionDependencies Resolved=============================================================================================================================================================================================================================================Package Arch Version Repository Size
=============================================================================================================================================================================================================================================
Removing:NetworkManager x86_64 1:1.18.8-1.el7 @anaconda/7.9 5.1 MNetworkManager-config-server noarch 1:1.18.8-1.el7 @anaconda/7.9 463NetworkManager-libnm x86_64 1:1.18.8-1.el7 @anaconda/7.9 8.5 MNetworkManager-team x86_64 1:1.18.8-1.el7 @anaconda/7.9 40 kNetworkManager-tui x86_64 1:1.18.8-1.el7 @anaconda/7.9 648 kfirewalld noarch 0.6.3-11.el7 @anaconda/7.9 1.9 Mfirewalld-filesystem noarch 0.6.3-11.el7 @anaconda/7.9 239python-firewall noarch 0.6.3-11.el7 @anaconda/7.9 1.9 MTransaction Summary
=============================================================================================================================================================================================================================================
Remove 8 PackagesInstalled size: 18 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transactionErasing : firewalld-0.6.3-11.el7.noarch 1/8Erasing : 1:NetworkManager-tui-1.18.8-1.el7.x86_64 2/8Erasing : firewalld-filesystem-0.6.3-11.el7.noarch 3/8Erasing : python-firewall-0.6.3-11.el7.noarch 4/8Erasing : 1:NetworkManager-config-server-1.18.8-1.el7.noarch 5/8Erasing : 1:NetworkManager-team-1.18.8-1.el7.x86_64 6/8Erasing : 1:NetworkManager-1.18.8-1.el7.x86_64 7/8Erasing : 1:NetworkManager-libnm-1.18.8-1.el7.x86_64 8/8Verifying : python-firewall-0.6.3-11.el7.noarch 1/8Verifying : firewalld-filesystem-0.6.3-11.el7.noarch 2/8Verifying : 1:NetworkManager-tui-1.18.8-1.el7.x86_64 3/8Verifying : firewalld-0.6.3-11.el7.noarch 4/8Verifying : 1:NetworkManager-1.18.8-1.el7.x86_64 5/8Verifying : 1:NetworkManager-libnm-1.18.8-1.el7.x86_64 6/8Verifying : 1:NetworkManager-config-server-1.18.8-1.el7.noarch 7/8Verifying : 1:NetworkManager-team-1.18.8-1.el7.x86_64 8/8Removed:NetworkManager.x86_64 1:1.18.8-1.el7 NetworkManager-config-server.noarch 1:1.18.8-1.el7 NetworkManager-libnm.x86_64 1:1.18.8-1.el7 NetworkManager-team.x86_64 1:1.18.8-1.el7 NetworkManager-tui.x86_64 1:1.18.8-1.el7firewalld.noarch 0:0.6.3-11.el7 firewalld-filesystem.noarch 0:0.6.3-11.el7 python-firewall.noarch 0:0.6.3-11.el7Complete!
[root@localhost yum.repos.d]#
安装系统常用命令
[root@localhost yum.repos.d]# yum install -y net-tools vim-enhanced bridge-utils psmisc java
四、打包镜像
4.1 安装生产镜像软件包
[root@localhost ~]# yum install qemu-img -y
4.2 将系统盘生成为qcow2镜像
[root@localhost yum.repos.d]# qemu-img convert -f raw -O qcow2 /dev/sda /home/redhat7.9.qcow2
[root@localhost yum.repos.d]# ll /home/
total 2098628
-rw-r--r--. 1 root root 1982857216 Feb 21 02:22 redhat7.9.qcow2
[root@localhost yum.repos.d]# qemu-img info /home/redhat7.9.qcow2
image: /home/redhat7.9.qcow2
file format: qcow2
virtual size: 60G (64424509440 bytes)
disk size: 2.0G
cluster_size: 65536
Format specific information:compat: 1.1lazy refcounts: false
将/home/redhat7.9.qcow2 拉取下来上传云平台即可,若是需要安装其他得软件自行安装,安装完在将系统盘生成为qcow2镜像即可。
相关文章:
使用vmware制作云平台redhat7.9镜像模板
一、概述 1.1 redhat7.9 定制镜像上传到云平台。 这个制作镜像得方式适用于多种iso 镜像。 将iso 镜像通过vmware 创建出一台虚机,对虚机做一些基础配置。在虚机上安装kvm 虚拟化得工具, 将iso 镜像在导入虚机种通过kvm创建一下虚机, 虚机创…...
OpenCV基础(28)使用OpenCV进行摄像机标定Python和C++
摄像头是机器人、监控、太空探索、社交媒体、工业自动化甚至娱乐业等多个领域不可或缺的一部分。 对于许多应用,必须了解相机的参数才能有效地将其用作视觉传感器。 在这篇文章中,您将了解相机校准所涉及的步骤及其意义。 我们还共享 C 和 Python 代码以…...
APB总线详解及手撕代码
本文的参考资料为官方文档AMBA™3 APB Protocol specification文档下载地址: https://pan.baidu.com/s/1Vsj4RdyCLan6jE-quAsEuw?pwdw5bi 提取码:w5bi APB端口介绍介绍总线具体握手规则之前,需要先熟悉一下APB总线端口,APB的端口…...
【Linux/Windows】源文件乱码问题解决方法总结
🐚作者简介:花神庙码农(专注于Linux、WLAN、TCP/IP、Python等技术方向)🐳博客主页:花神庙码农 ,地址:https://blog.csdn.net/qxhgd🌐系列专栏:Linux技术&…...
Python 四大主流 Web 编程框架
目前Python的网络编程框架已经多达几十个,逐个学习它们显然不现实。但这些框架在系统架构和运行环境中有很多共通之处,本文带领读者学习基于Python网络框架开发的常用知识,及目前的4种主流Python网络框架:Django、Tornado、Flask、Twisted。 …...
学UI设计,可以向哪些方向发展?该怎么学?
1、什么是UI设计?UI设计,全称 User Interface,翻译成中文意思叫做用户界面设计。2、UI设计的类型UI设计按用户和界面来分可分成四种UI设计。分别是移动端UI设计,PC端UI设计,游戏UI设计,以及其它UI设计。第一…...
【C++】初识CC++内存管理
前言 我们都知道C&C是非常注重性能的语言,因此对于C&C的内存管理是每一个C/C学习者必须重点掌握的内容,本章我们并不是深入讲解C&C内存管理,而是介绍C&C内存管理的基础知识,为我们以后深入理解C&C内存管理做铺…...
Nacos快速使用指南
简单例子:springboot快速集成nacos官方github文档命名空间是绝对隔离的。group之间可以通过配置实现跨 group访问配置中心Nacos config官方文档应用级别的默认配置文件名(dataId)dataId 的完整格式如下:${prefix}-${spring.profil…...
复旦发布国内首个类ChatGPT模型MOSS,和《流浪地球》有关?
昨晚,复旦大学自然语言处理实验室邱锡鹏教授团队发布国内首个类ChatGPT模型MOSS,现已发布至公开平台https://moss.fastnlp.top/ ,邀公众参与内测。 MOSS和ChatGPT一样,开发的过程也包括自然语言模型的基座训练、理解人类意图的对…...
国家级高新区企业主要经济指标(2012-2021年)
数据来源:国家统计局 时间跨度:2012-2021 区域范围:全国(及各分类统计指标) 指标说明:手工提取最新的中国统计年鉴数据中各个excel指标表,形成各个指标文件的多年度数据,便于多年…...
SpringBoot2核心技术-核心功能【05、Web开发】
目录 1、SpringMVC自动配置概览 2、简单功能分析 2.1、静态资源访问 1、静态资源目录 2、静态资源访问前缀 2.2、欢迎页支持 2.3、自定义 Favicon 2.4、静态资源配置原理 3、请求参数处理 0、请求映射 1、rest使用与原理 2、请求映射原理 1、普通参数与基本注解 …...
2021-03 青少年软件编程(C语言)等级考试试卷(六级)解析
2021-03 青少年软件编程(C语言)等级考试试卷(六级)解析T1. 生日相同 2.0 在一个有180人的大班级中,存在两个人生日相同的概率非常大,现给出每个学生的名字,出生月日。试找出所有生日相同的学生。 时间限制:1000 内存限制:65536 输入 第一行为整数n,表示有n个学生,n …...
数据库的多租户隔离
数据库的多租户隔离有三种方案 1、独立数据库 一个租户一个数据库,这种方案的用户数据隔离级别最高,安全性最好,成本也最高 优点:为不同的租户提供独立的数据库,有助于简化数据模型的扩展设计,满足不同租…...
网络输入分辨率是否越大越好
目标检测比如 yolov5,训练输入图像大小默认是 640*640,这个是不是越大训练的效果越好 ? 这个肯定不是的。而且,如果仅调整输入图像的分辨率,不改变网络结构的话,检测准确率反而会下降的。首先,…...
离线采集普遍解决方案
简介 使用Datax每日全量相关全量表,使用Maxwell增量采集到Kafka然后到Flume然后到Hdfs。 DataX全量 生成模板Json gen_import_config.py # codingutf-8 import json import getopt import os import sys import MySQLdb#MySQL相关配置,需根据实际情…...
SAP ABAP 数据类型P类型详解
ABAP中比较难以理解的是P类型的使用,P类型是一种压缩类型,主要用于存储小数,定义时要指定字节数和小数点位数,定义语法如下: DATA: name(n) TYPE P decimals m,n代表字节数,最大为16,m是小…...
应用沙盒seccomp的使用
应用沙盒原理参考https://zhuanlan.zhihu.com/p/513688516 1、什么是Seccomp? seccomp 是 secure computing 的缩写,其是 Linux kernel 从2.6.23版本引入的一种简洁的 sandboxing 机制。 系统调用: 在Linux中,将程序的运行空间分为内核与用户空间(内核态和用户态),在逻辑…...
C++项目——高并发内存池(2)——thread_cache的基础功能实现
1.并发内存池concurrent memory pool 组成部分 thread cache、central cache、page cache thread cache:线程缓存是每个线程独有的,用于小于64k的内存的分配,线程从这里申请内存不需要加锁,每个线程独享一个cache,这…...
【C进阶】数据的存储
文章目录:star:1. 数据类型:star:2. 整形在内存中的存储2.1 存储规则2.2 存储模式2.3 验证大小端模式:star:3. 数据范围3.1 整形溢出3.2 数据范围的求解3.3 练习:star:4. 浮点型在内存中的存储4.1 浮点数的存储规则4.2 练习5. :star::star:总结(思维导图)⭐️1. 数据类型 在了…...
【已解决】异常断电文件损坏clickhouse启动不了:filesystem error Structure needs cleaning
问题 办公室有一台二手服务器,作为平时开发测试使用。由于机器没放在机房,会偶发断电异常断电后,文件系统是有出问题的可能的,尤其是一些不断在读写合并的文件春节后,发现clickhouse启动不了,使用systemct…...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...
ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
boost::filesystem::path文件路径使用详解和示例
boost::filesystem::path 是 Boost 库中用于跨平台操作文件路径的类,封装了路径的拼接、分割、提取、判断等常用功能。下面是对它的使用详解,包括常用接口与完整示例。 1. 引入头文件与命名空间 #include <boost/filesystem.hpp> namespace fs b…...
免费批量Markdown转Word工具
免费批量Markdown转Word工具 一款简单易用的批量Markdown文档转换工具,支持将多个Markdown文件一键转换为Word文档。完全免费,无需安装,解压即用! 官方网站 访问官方展示页面了解更多信息:http://mutou888.com/pro…...
使用VMware克隆功能快速搭建集群
自己搭建的虚拟机,后续不管是学习java还是大数据,都需要集群,java需要分布式的微服务,大数据Hadoop的计算集群,如果从头开始搭建虚拟机会比较费时费力,这里分享一下如何使用克隆功能快速搭建一个集群 先把…...
多模态学习路线(2)——DL基础系列
目录 前言 一、归一化 1. Layer Normalization (LN) 2. Batch Normalization (BN) 3. Instance Normalization (IN) 4. Group Normalization (GN) 5. Root Mean Square Normalization(RMSNorm) 二、激活函数 1. Sigmoid激活函数(二分类&…...
【动态规划】B4336 [中山市赛 2023] 永别|普及+
B4336 [中山市赛 2023] 永别 题目描述 你做了一个梦,梦里有一个字符串,这个字符串无论正着读还是倒着读都是一样的,例如: a b c b a \tt abcba abcba 就符合这个条件。 但是你醒来时不记得梦中的字符串是什么,只记得…...
