Linux:通过VMWare,定制化Linux系统

news2024/11/25 12:21:58

一、原理图

在这里插入图片描述
在这里插入图片描述

二、新增磁盘(对应上图sdb盘)

在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、挂载磁盘

主要是四步:查看磁盘,分区磁盘,格式化磁盘,挂载磁盘

1、查看磁盘

在这里插入图片描述

2、分区磁盘

在这里插入图片描述在这里插入图片描述在这里插入图片描述

3、格式化磁盘

在这里插入图片描述在这里插入图片描述

4、挂载磁盘

创建两个备用目录,用于磁盘分区的挂载
其中,boot目录是启动盘,sysroot是根目录盘
在这里插入图片描述
挂载分区
在这里插入图片描述
参考:https://blog.csdn.net/Brave_heart4pzj/article/details/134423137

四、定制化Linux

就是把sda中的Linux启动相关的主要文件,拷贝到sdb中对应的目录中,制作一个启动引导分区。

1、安装grub工具

grub2-install --root-directory=/mnt /dev/sdb

在这里插入图片描述

2、检验grub安装是否成功

hexdump -C -n 512 /dev/sdb

在这里插入图片描述

3、拷贝启动目录的相关文件

rm -rf /mnt/boot/*
cp -rf /boot/* /mnt/boot/

在这里插入图片描述

4、修改grub.cfg配置文件

cd /mnt/boot/grub2/
cat grub.cfg

在这里插入图片描述
注意下图标红处,需要替换UUID和追加内容在这里插入图片描述
替换uuid
对应关系:下图中的sda1是启动目录,替换为sdb1uuidsda3的根目录uuid,替换成sdb2uuid
在这里插入图片描述

sed -i 's/62629ed9-28ce-4e8b-8e00-0f61180566ff/fb875777-dd19-43b2-a1c2-1bdef756f5b5/g' grub.cfg
sed -i 's/4576424e-9060-49d8-bb6c-8da404858558/41a1f1fd-2dbe-404d-840a-21f789e56b99/g' grub.cfg

grub.cfg截图中标记箭头的地方,追加如下内容

selinux=0 init=/bin/bash

最终配置结果
在这里插入图片描述

5、创建目标主机根文件系统

mkdir -pv /mnt/sysroot/{etc/rc.d,usr,var,proc,sys,dev,lib,lib64,bin,sbin,boot,srv,mnt,media,home,root}

在这里插入图片描述

6、拷贝根目录文件

cp /lib64/*.* /mnt/sysroot/lib64/
cp /bin/bash /mnt/sysroot/bin/

在这里插入图片描述

7、创建新虚拟机

移除默认的硬盘,让新虚拟机指向上面制作好的sdb硬盘
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
做好以上配置后,关闭原虚拟机系统,启动min-centos7系统
在这里插入图片描述
出现上图,说明一切顺利。

我这里出现过一个问题,就是在我启动min-centos7系统时,我的电脑直接蓝屏重启了。
然后,我继续启动min-centos7就正常了。
在这里插入图片描述
现在只能使用cd命令,ls命令都用不了,因为,我们没有拷贝ls相关的文件到根目录中。

8、定制其他命令

启动原虚拟机,进行相关指令文件的拷贝,定制我们需要的功能
这里以ls、reboot指令为例子。

mount /dev/sdb2 /mnt/sysroot/
cp /bin/ls /mnt/sysroot/bin/
cp /sbin/reboot /mnt/sysroot/sbin/

在这里插入图片描述
重启min-centos7
测试ls命令

/bin/ls

直接ls不能用,是因为我们没有配置环境。
在这里插入图片描述

五、对比

比对一下定制的虚拟机大小
在这里插入图片描述
在这里插入图片描述
总共大概1.2G大小左右

··

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

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

相关文章

Rocket mq namesrv源码分析

NameServer 作为注册中心,提供路由注册、路由踢出、路由发现功能,舍弃强一致,保证高可用,集群中各个节点不会实时通讯,其中一个节点下线之后,会提供另外一个节点保证路由功能。 启动入口 org.apache.rock…

鸿蒙应用开发-初见:ArkUI

编程范式:命令式->声明式 以一个卡片的实现做下讲解 命令式 简单讲就是需要开发用代码一步一步进行布局,这个过程需要开发全程参与。 Objective-C UIView *cardView [[UIView alloc] init]; cardView.backgroundColor [UIColor whiteColor]; ca…

文生视频的发展史及其原理解析:从Gen2、Emu Video到SVD、PixelDance

前言 考虑到文生视频开始爆发,比如 今年,作为最早探索视频生成领域的领头羊之一,Runway 先后发布Gen-1、Gen-2 模型(runway也是Stable Diffusion 开发商之一),特别是Gen-2带来了电影级别的高清晰度,令人瞩目&#xf…

Vue3-pnpm包管理器创建项目

一些优势:比同类工具快2倍左右、节省磁盘空间 官网:pnpm - 速度快、节省磁盘空间的软件包管理器 | pnpm中文文档 | pnpm中文网 npm升级到yarn再升级到pnpm(速度更快) 安装方式:npm install -g pnpm 创建项目&#…

C++之常用的拷贝和替换算法

C之常用的拷贝和替换算法 copy #include<iostream> using namespace std; #include<vector> #include<algorithm>void Myptint(int val) {cout << val << " "; }void test() {vector<int> v;for (int i 0; i < 10; i){v.pus…

波奇学C++:C++11的新特性

列表初始化 #include<iostream> using namespace std; struct A {int _x;int _y; }; int main() {// 三种方式等价&#xff0c;并且可以省略int x 1;int y { 2 };int z{ 3 };return 0; } {}按声明顺序初始化类成员变量 A p{ 1,2 }; cout << p._x; //1 cout &…

数字化转型导师坚鹏:BLM保险公司数字化转型战略培训圆满结束

在数字化转型背景下&#xff0c;为了落实监管政策《关于保险公司业保险业数字化转型的指导意见》&#xff0c;充分认识到学习保险公司数字化转型战略的价值和重要性&#xff0c;特别举办《2023年保险公司数字化转型战略专题培训班》。为了改变大家的认知&#xff0c;为了拓宽大…

销售漏斗是什么?

销售漏斗是一个重要的销售管理工具&#xff0c;它可以帮助销售人员更好地管理和跟踪潜在客户。销售漏斗模型通常被广泛应用于B2B销售中&#xff0c;它可以将销售过程细分为多个阶段&#xff0c;例如潜在客户、初步沟通、方案报价、谈判和签约等。 销售漏斗有以下作用&#xff…

洗地机应该怎么选?希亦、必胜、米博、添可、小米洗地机实测推荐

作为一个常年测评智能家居的博主&#xff0c;关于洗地机的测评使用这些年也积累了不少的体验感受。以至于常被周边的朋友问到&#xff0c;洗地机到底是不是真的好用&#xff1f;洗地机有什么优点吗&#xff1f;选购的时候应该怎么选呢&#xff1f;洗地机什么牌子比较好呢&#…

Spring Data Redis切换底层Jedis 和 Lettuce实现

1 简介 Spring Data Redis是 Spring Data 系列的一部分&#xff0c;它提供了Spring应用程序对Redis的轻松配置和使用。它不仅提供了对Redis操作的高级抽象&#xff0c;还支持Jedis和Lettuce两种连接方式。 可通过简单的配置就能连接Redis&#xff0c;并且可以切换Jedis和Lett…

redis优化秒杀和消息队列

redis优化秒杀 1. 异步秒杀思路1.1 在redis存入库存和订单信息1.2 具体流程图 2. 实现2.1 总结 3. Redis的消息队列3.1 基于list实现消息队列3.2 基于PubSub实现消息队列3.3 基于stream实现消息队列3.3.1 stream的单消费模式3.3.2 stream的消费者组模式 3.4 基于stream消息队列…

解决方案:新版WPS-右键粘贴值到可见单元格没有了

旧版WPS&#xff0c;右键就能出现 但是新版WPS不是在这里&#xff08;方法1&#xff09; 新版WPS&#xff08;方法2&#xff09; 视频详细教程链接&#xff1a;解决方案&#xff1a;新版WPS-右键粘贴值到可见单元格没有了 -- 筛选后复制公式粘贴为数值_哔哩哔哩_bilibili

<Linux>(极简关键、省时省力)《Linux操作系统原理分析之Linux 进程管理 5》(9)

《Linux操作系统原理分析之Linux 进程管理 5》&#xff08;9&#xff09; 4 Linux 进程管理4.5 Linux 信号4.5.1 信号的作用和种类1.信号机制2.信号种类 4.5.2 信号的处理4.5.3 信号处理函数1&#xff0e;数据结构2&#xff0e; 处理函数 signal3&#xff0e;程序例 4 Linux 进…

【特斯拉 tesla Roadster 开源 地址】

下载地址 https://service.tesla.com/roadster 打开长这样&#xff0c;在右边就是目前公开的东西了 服务信息 服务手册 零件手册 &#xff08;EPC&#xff09; 电路 连接 工作原理&#xff1a;敞篷跑车 https://service.tesla.com/docs/Public/Roadster/TheoryOp/1.2.5/tabm…

在Linux中部署MeterSphere并且结合内网穿透实现远程访问本地管理页面——“cpolar内网穿透”

文章目录 前言1. 安装MeterSphere2. 本地访问MeterSphere3. 安装 cpolar内网穿透软件4. 配置MeterSphere公网访问地址5. 公网远程访问MeterSphere6. 固定MeterSphere公网地址 前言 MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能&am…

Apache Doris 整合 FLINK 、 Hudi 构建湖仓一体的联邦查询入门

1.概览 多源数据目录&#xff08;Multi-Catalog&#xff09;功能&#xff0c;旨在能够更方便对接外部数据目录&#xff0c;以增强Doris的数据湖分析和联邦数据查询能力。 在之前的 Doris 版本中&#xff0c;用户数据只有两个层级&#xff1a;Database 和 Table。当我们需要连…

无需API开发,商米云打印机集成营销系统,优化电商运营和订单处理速度

轻松实现商米云打印机连接 在电子商务和客户服务系统运营中&#xff0c;能够无缝地连接硬件设备&#xff0c;如打印机&#xff0c;至关重要。商米云打印机为电商和客服系统提供了一种无需复杂API开发的连接方式。通过简化的配置流程&#xff0c;商家可以轻松地将商米云打印机集…

【深度学习】概率图模型(二)有向图模型详解(条件独立性、局部马尔可夫性及其证明)

文章目录 一、有向图模型1. 贝叶斯网络的定义2. 条件独立性及其证明a. 间接因果关系 X 3 → X 2 → X 1 X_3 \rightarrow X_2 \rightarrow X_1 X3​→X2​→X1​b. 间接果因关系 X 1 → X 2 → X 3 X_1 \rightarrow X_2 \rightarrow X_3 X1​→X2​→X3​c. 共因关系 X 1 ← X…

动态网页从数据库取信息,然后展示。

把数据库的驱动放在bin目录下。 通过servlet 读取数据库的内容&#xff0c;生成session,然后跨页面传给展示页。 package src;import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSe…

Git的原理与使用(一):Git的基本操作(包含:版本回退)

Git原理与使用一 一.Git的初识与安装1.什么是Git2.如何安装Git1.git命令与git help(Git下的"man手册")2.centos下安装Git3.ubantu下安装Git 二.Git的前置操作与前置知识1.创建Git本地仓库2.配置Git3.理解Git的分区1.工作区2.暂存区3.版本库4.分区关系总结 三.添加文件…