当前位置: 首页 > news >正文

Ubuntu-22.04安装VMware虚拟机并安装Windows10

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、VMware是什么?
  • 二、安装VMware
    • 1.注册VMware账号
    • 2.下载虚拟机
    • 3.编译vmmon&vmnet
    • 4.加载module
    • 5.安装bundle
  • 三、安装Windows10
    • 1.基础配置
    • 2.进阶配置
      • 1.上网方式配置
      • 2.性能配置
  • 四、写在最后
  • 总结


前言

最近在研究虚拟机,主要集中在KVM、Virtualbox和VMware这三种虚拟机上。前面我已经研究了前两种虚拟机的安装和使用方式,这篇文章介绍3兄弟中最后一个虚拟机安装和使用方式。

Virtualbox虚拟机安装和使用

KVM虚拟机安装和使用

相比于前两种,VMware的安装方式最麻烦,但是综合体验下来我感觉流畅度最好。如果你确实有在Linux上使用VMware虚拟机的需求,那不妨跟着我看下去吧。


一、VMware是什么?

Run Windows, Linux and BSD virtual machines on a Windows or Linux desktop with VMware Workstation Pro, the industry standard desktop hypervisor.

二、安装VMware

1.注册VMware账号

现在下载指定版本的虚拟机需要注册账号了,老早以前貌似不需要。

中文官网地址

英文官网注册时候触发了一个网页bug,最好用中文方式注册。

2.下载虚拟机

一定要慎重,实测16.2.5是最适合Ubuntu-22.04的虚拟机,不要乱下版本,后续出问题对于小白来说几乎无法自行解决。

注意:16.0.0的发布时间比Ubuntu-22.04还早,实测安装过程中遇到了不小问题。

VMware-16.2.5下载连接

在这里插入图片描述

3.编译vmmon&vmnet

这两个是核心module,具体干什么用的自行查下官方,这里不介绍,总之必须装。

注意:实测bundle文件里自带的vmmon和vmnet貌似版本和自身不匹配,我用了很多办法都报错,所以从git下载源代码自行编译。

克隆代码:

git clone -b workstation-16.2.5 https://gitee.com/anold/vmware-host-modules.git

查看内核版本:
必须先知道内核版本,否则后面无法进行!

uname -r6.5.0-27-generic

我的正在运行的版本是6.5.0-27-generic,编译的module一定要和当前运行的内核版本匹配,否则无法正常运行。

安装gcc-12:
编译vmmon&vmnet的gcc版本必须和编译VMware的版本一致,否则会提示找不到合适的gcc version的错误。看到这里估计你开始冒冷汗了吧,怎么限制条件那么多!

sudo apt install gcc-12

安装完gcc-12你应该是12.3.0-1ubuntu1~22.04这个版本。如果你不是你就先把你的Ubuntu-22.04升级成最新版本再进行下一步。

sudo apt update
sudo apt upgrade

开始编译vmmon&vmnet:

cd vmware-host-modules/make VM_UNAME=$(uname -r)sudo make install 

编译很快可以不用指定多线程。另外,安装要root权限。

4.加载module

module现在默认要手动加载一次,默认是安装在/usr/lib/modules/$(uname -r)/misc/文件夹下面的,有两个ko分别是vmmon.kovmnet.ko,如果你没有那一定是你操作错误了或者环境变量的问题。

sudo modprobe vmmon
sudo modprobe vmnetlsmod | grep vmvmnet                  73728  0
vmmon                 163840  1

有就对了,没有说明加载ko报错了,定位下原因。

5.安装bundle

chmod u+x VMware-Workstation-Full-16.2.5-20904516.x86_64.bundlesudo ./VMware-Workstation-Full-16.2.5-20904516.x86_64.bundle

等待安装完成即可,会在应用列表自动生成VMware的图标。这个时候安装过程完毕。

三、安装Windows10

1.基础配置

打开VMware软件并创建一个新虚拟机:
在这里插入图片描述

选则配置模式:

Typical:典型配置,只需要简单的配置即可,比较适合小白
Custom:专业配置,很多参数需要自己一个个配,不适合没有丰富硬件和系统知识的人操作

在这里插入图片描述

选则Windows10的ISO镜像,最好使用官方镜像,不支持GHOST镜像

在这里插入图片描述

系统和用户配置:

系统可以后面激活,不填的话会给个提示,点击忽略即可。

在这里插入图片描述

配置虚拟机安装路径:

创建一个文件夹即可,可编辑文本框,如果Browser失效就手输。

在这里插入图片描述

虚拟磁盘分配:

如果你只是临时测试那么Windows10至少给30G的磁盘空间,如果你是长久使用至少给60G的磁盘空间,不能超过你的可用磁盘空间大小的前提下,越大越好。

单文件存储在性能上可能有优势,多文件在复制移动上有优势,依据个人需要选则。

在这里插入图片描述

确认基本配置:

在这里插入图片描述

在这里插入图片描述

2.进阶配置

1.上网方式配置

这个时候我们还没配置上网方式,这样会导致安装的虚拟机没有网络可用。跟着VMware一起安装的还有Virtual Network Editor,也是一个GUI程序,可以在应用列表里找到。

由于操作的是网卡,需要root权限!请按照我的步骤一步步操作,防止对宿主机系统造成破坏!

在这里插入图片描述

我们看到厚道的VMware实际上还是给我们创建了3种虚拟网卡。记着这些虚拟网卡的名字,后面会用到。

2.性能配置

内存配置:
WIndows10的话建议不小于4GB,当然不影响宿主机的情况下越大越好。

在这里插入图片描述
虚拟核心:
我的电脑有4核心8线程,我给了4个线程,把硬件虚拟化勾上(BIOS需要先打开CPU虚拟化,不懂的百度),如果你不用硬件虚拟化可以不用勾选,会切换到软件虚拟化运行,可能会很卡。

在这里插入图片描述

网络配置:
这里配置vmnet8,也就是通过NAT来上外网(取决于网卡的状态)。

在这里插入图片描述

到这里进阶配置也结束了,至少你的虚拟机能跑起来了。接下来点击Save保存刚才的配置并回到主界面,点击打开虚拟机就进入安装流程了。

四、写在最后

1、gcc版本和内核版本一定要匹配上,否则会出各种错误
2、网络种NAT和Bridge适用不同场景,一般都是可以上外网的,这取决于你宿主机的网络状态
3、性能的话我觉得VMware在Linux上的表现也是很惊艳的,默认安装方式它比KVM和Virtualbox流畅


总结

1、比Windows上安装麻烦不少,需要足够的耐心

相关文章:

Ubuntu-22.04安装VMware虚拟机并安装Windows10

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、VMware是什么?二、安装VMware1.注册VMware账号2.下载虚拟机3.编译vmmon&vmnet4.加载module5.安装bundle 三、安装Windows101.基础配置2.进阶…...

ELK企业日志分析系统介绍

前言 随着企业级应用系统日益复杂,随之产生的海量日志数据。传统的日志管理和分析手段,难以做到高效检索、实时监控以及深度挖掘潜在价值。在此背景下,ELK日志分析系统应运而生。本文将从ELK 日志分析系统的原理、架构及其在实践中的应用做相…...

在C#中读取写入字节流与读取写入二进制数据, 有何差异?

在C#中,读取和写入字节流与读取和写入二进制数据有些许不同,尽管它们在某些情况下可能会重叠使用。以下是它们之间的主要区别: 读取和写入字节流: 读取和写入字节流通常指的是处理文件或流中的原始字节数据。在C#中,可…...

数据库相关知识总结

一、数据库三级模式 三个抽象层次: 1. 视图层:最高层次的抽象,描述整个数据库的某个部分的数据 2. 逻辑层:描述数据库中存储的数据以及这些数据存在的关联 3. 物理层:最低层次的抽象,描述数据在存储器中时如…...

【汇编语言实战】输出数组中特定元素

C语言描述&#xff1a; #include <stdio.h> int main() {int a[]{1,2,3,4,5,6};printf("%d",a[3]); }汇编语言&#xff1a; include irvine32.inc .data arr dword 1,2,3,4,5,6 num dword 1 ;输出第二个元素 .code main proc mov esi,offset arr mov edx,nu…...

WordPress LayerSlider插件SQL注入漏洞复现(CVE-2024-2879)

0x01 产品简介 WordPress插件LayerSlider是一款可视化网页内容编辑器、图形设计软件和数字视觉效果应用程序,全球活跃安装量超过 1,000,000 次。 0x02 漏洞概述 WordPress LayerSlider插件版本7.9.11 – 7.10.0中,由于对用户提供的参数转义不充分以及缺少wpdb::prepare(),…...

MOS管的判别符号记忆与导通条件

参考链接 MOS管的判别与导通条件 (qq.com)https://mp.weixin.qq.com/s?__bizMzU3MDU1Mzg2OQ&mid2247520228&idx1&sn5996780179fbf01f66b5db0c71622ac3&chksmfcef6c86cb98e590e3d3734ee27797bdded17b6b648b3b0d3b1599e8a4496a1fa4e457be6516&mpshare1&…...

数据指标与经营智慧:构建有洞见的经营分析报告

经营分析报告不仅仅是数字的堆砌&#xff0c;它是企业运营状况的“晴雨表”&#xff0c;能够反映企业的健康状况和发展潜力。一个有洞见的经营分析报告能够帮助管理层识别问题、评估风险、发现机会&#xff0c;并据此制定相应的战略和行动计划。 关注【数据化运营圈】共同探讨…...

Spring 中类似 aBbb 单字母单词序列化与反序列问题

文章目录 前言代码准备问题排查lombok自定义生成 get、set 结合源码解析使用 lombok使用 lombok 自定义生成 user 对象 get、set 方法 如何解决使用注解 JsonProperty("aTest")自定义实现符合 Spring 规范的 get set 方法 个人简介 前言 最近在使用 spring boot mvc…...

TiDB 慢查询日志分析

导读 TiDB 中的慢查询日志是一项 关键的性能监控工具&#xff0c;其主要作用在于协助数据库管理员追踪执行时间较长的 SQL 查询语句。 通过记录那些超过设定阈值的查询&#xff0c;慢查询日志为性能优化提供了关键的线索&#xff0c;有助于发现潜在的性能瓶颈&#xff0c;优化…...

网页文件批量下载工具有哪些 网页文件批量下载工具推荐 IDM免费激活 网络下载加速器

把任务丢给软件&#xff0c;把时间还给自己&#xff0c;批量下载功能让下载变得更高效。它可以有效减少重复性操作&#xff0c;只需要一次简单的设置&#xff0c;就能把大量文件下载到电脑。有关网页文件批量下载工具有哪些&#xff0c;网页文件批量下载工具推荐的问题&#xf…...

嵌入式算法开发系列之图像处理算法

嵌入式系统中的图像处理算法及其应用 文章目录 嵌入式系统中的图像处理算法及其应用前言一、图像处理算法的原理二、图像处理算法的应用三、C 语言实现总结 前言 在嵌入式系统中&#xff0c;图像处理算法是一项重要的技术&#xff0c;用于实现各种视觉应用&#xff0c;如机器视…...

HarmonyOS4-ArkUI组件动画

一、ArkUI组件属性动画和显示动画 显示动画&#xff1a; 案例&#xff1a;上下左右箭头控制小鱼的游动 具体代码如下&#xff1a; import router from ohos.routerEntry Component struct AnimationPage {// 小鱼坐标State fishX: number 200State fishY: number 180// 小鱼…...

模块化——如何导入模块?(内置模块与自定义模块)

在Node.js中&#xff0c;要导入另一个模块&#xff0c;我们可以使用require函数。这个函数接受一个文件路径参数&#xff0c;并返回导入的模块。 注意&#xff1a;require导入包场景&#xff1a;内置模块、自定义模块、npm包的导入... 下面介绍内置模块与自定义模块。npm包的…...

element-ui的按需引入报错解决:MoudleBuildFailed,完整引入和按需引入

官网&#xff1a; Element - The worlds most popular Vue UI framework 1.完整引入 &#xff08;1&#xff09;下载&#xff1a; npm i element-ui -S &#xff08;2&#xff09;引入&#xff1a; 在 main.js 中写入以下内容&#xff1a; import Vue from vue; impor…...

面向低碳经济运行目标的多微网能量互联优化调度matlab程序

微❤关注“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 运用平台 matlabgurobi 程序简介 该程序为多微网协同优化调度模型&#xff0c;系统在保障综合效益的基础上&#xff0c;调度时优先协调微网与微网之间的能量流动&#xff0c;将与大电网的互联交互作为备用…...

FORM的引入与使用

FORM的引入与使用 【0】引入 ​ 表单&#xff08;Form&#xff09;是网页中用于收集用户输入数据的一种交互元素。通过表单&#xff0c;用户可以输入文本、选择选项、上传文件等操作。表单通常由一个或多个输入字段&#xff08;Input Field&#xff09;组成&#xff0c;每个字…...

酷开会员丨古偶悬疑剧《花间令》在酷开系统热播中!

酷开系统一直致力于为用户提供卓越的大屏娱乐体验。随着三月新剧《花间令》的上线&#xff0c;酷开系统再次展现了其在内容更新上的迅速响应能力和对高质量视听体验的不懈追求。 《花间令》的故事背景设定在一个充满神秘色彩的古代王朝&#xff0c;鞠婧祎饰演的女主角与刘学义饰…...

html骨架以及常见标签

推荐一个网站mdn。 html语法 双标签&#xff1a;<标签 属性"属性值">内容</标签> 属性&#xff1a;给标签提供附加信息。大多数属性以键值对的形式存在。如果属性名和属性值一样&#xff0c;可以致谢属性值。 单标签&#xff1a;<标签 属性"属…...

Vue3学习01 Vue3核心语法

Vue3学习 1. Vue3新的特性 2. 创建Vue3工程2.1 基于 vue-cli 创建项目文件说明 2.2 基于 vite 创建具体操作项目文件说明 2.3 简单案例(vite) 3. Vue3核心语法3.1 OptionsAPI 与 CompositionAPIOptions API 弊端Composition API 优势 ⭐3.2 setup小案例setup返回值setup 与 Opt…...

Spring Boot实现跨域的5种方式

Spring Boot实现跨域的5种方式 为什么会出现跨域问题什么是跨域非同源限制java后端实现CORS跨域请求的方式返回新的CorsFilter(全局跨域)重写WebMvcConfigurer(全局跨域)使用注解(局部跨域)手动设置响应头(局部跨域)使用自定义filter实现跨域 为什么会出现跨域问题 出于浏览器…...

Elasticsearch:从 ES|QL 到 PHP 对象

作者&#xff1a;来自 Elastic Enrico Zimuel 从 elasticsearch-php v8.13.0 开始&#xff0c;你可以执行 ES|QL 查询并将结果映射到 stdClass 或自定义类的 PHP 对象。 ES|QL ES|QL 是 Elasticsearch 8.11.0 中引入的一种新的 Elasticsearch 查询语言。 目前&#xff0c;它在…...

Stm32 HAL库 访问内部flash空间

Stm32 HAL库 访问内部flash空间 代码的部分串口配置申明文件main函数 在一些时候&#xff0c;需要存储一些数据&#xff0c;但是又不想接外部的flash&#xff0c;那我们可以知道&#xff0c;其实还有内部的flash可以使用&#xff0c; 需要注意的是内部flash&#xff0c;读写次数…...

线程池详解

线程池 什么是线程池&#xff1a;线程池就是管理一系列线程的资源池。 当有任务要处理时&#xff0c;直接从线程池中获取线程来处理&#xff0c;处理完之后线程并不会立即被销毁&#xff0c;而是等待下一个任务。 为什么要用线程池 / 线程池的好处&#xff1a; **降低资源消…...

mybatis(5)参数处理+语句查询

参数处理&#xff0b;语句查询 1、简单单个参数2、Map参数3、实体类参数4、多参数5、Param注解6、语句查询6.1 返回一个实体类对象6.2 返回多个实体类对象 List<>6.3 返回一个Map对象6.4 返回多个Map对象 List<Map>6.5 返回一个大Map6.6 结果映射6.6.1 使用resultM…...

数据应用OneID:ID-Mapping Spark GraphX实现

前言 说明 以用户实体为例&#xff0c;ID 类型包含 user_id 和 device_id。当然还有其他类型id。不同id可以获取到的阶段、生命周期均不相同。 device_id 生命周期通常指的是一个设备从首次被识别到不再活跃的整个时间段。 user_id是用户登录之后系统分配的唯一标识&#xff…...

第6章 6.2.3 : readlines和writelines函数 (MATLAB入门课程)

讲解视频&#xff1a;可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇&#xff08;数学建模清风主讲&#xff0c;适合零基础同学观看&#xff09;_哔哩哔哩_bilibili 在MATLAB的文本数据处理任务中&#xff0c;导入和导出文件是常…...

Matlab应用层生成简述

基础软件层 目前接触到的几款控制器&#xff0c;其厂商并没有提供simulink的基础软件库一般为底层文件被封装为lib&#xff0c;留有供调用API接口虽然能根据API接口开发基础软件库&#xff0c;但耗费时间过长得不偿失 应用层 所以可以将应用层封装为一个子系统&#xff0c;其…...

每日一题(leetcode1702):修改后的最大二进制字符串--思维

找到第一个0之后&#xff0c;对于后面的子串&#xff08;包括那个0&#xff09;&#xff0c;所有的0都能调上来&#xff0c;然后一一转化为10&#xff0c;因此从找到的第一个0的位置开始&#xff0c;接下来是&#xff08;后半部分子串0的个数-1&#xff09;个1&#xff0c;然后…...

PHP自助建站系统,小白也能自己搭建网站

无需懂代码&#xff0c;用 自助建站 做企业官网就像做PPT一样简单&#xff0c;您可以亲自操刀做想要的效果&#xff01; 自助建站是一款简单、快捷、高效的工具&#xff0c;可以帮助您制作响应式网站。我们的自助建站系统&#xff0c;将传统的编码工作转化为直观的拖拽操作和文…...