【Linux基础】ubuntu虚拟机配置及原理

一、虚拟机

虚拟机(Virtual Machine,VM)是一种软件实现的计算机系统,它在物理计算机上模拟了一个完整的计算机硬件环境,包括处理器、内存、存储设备和网络接口等。通过虚拟机,用户可以在单个物理计算机上同时运行多个独立的操作系统和应用程序,每个虚拟机相当于一个独立的计算机系统。

虚拟机的工作原理是通过虚拟化技术来实现的。虚拟化软件在物理计算机上创建一个或多个虚拟机实例,并将它们隔离开来,使它们能够独立地运行不同的操作系统和应用程序。虚拟机软件会在虚拟机和物理计算机之间进行资源的分配和管理,以确保每个虚拟机都能够获得所需的计算资源。

虚拟机可以用于各种用途,包括软件开发和测试、服务器托管、应用程序部署和运行旧版软件等。它们提供了更高的灵活性、可扩展性和资源利用率,同时也能够实现更好的资源隔离和安全性。常见的虚拟机软件包括 VMware、VirtualBox、Hyper-V 等。

二、ubuntu下载地址

官方网站:https://releases.ubuntu.com
中科大源:http://mirrors.ustc.edu.cn/ubuntu-releases
阿里云开源镜像站:http://mirrors.aliyun.com/ubuntu-releases
兰州大学开源镜像站:http://mirror.lzu.edu.cn/ubuntu-releases
清华大学开源网站镜像站:https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases
推荐用国内镜像站,下载速度更快

三、安装流程

1、选择自定义高级

在这里插入图片描述

2、虚拟机硬件兼容性

在这里插入图片描述

3、选择从镜像站下载的iso

在这里插入图片描述

4、处理器设置

1)通过任务管理器查看CPU数据

以我的电脑为例,可以看到有24个内核,32个逻辑处理器。
在这里插入图片描述

2)配置原则

  1. 处理器数量
    如果打算同时运行多个虚拟机或者需要高性能,你可以考虑将虚拟机的处理器数量设置为主机的逻辑处理器数量(即 32 个),但要确保不要超过主机的物理核心数量(即 24 个),因为这可能会导致过度分配和性能下降。

  2. 每个处理器的内核数量

    • 对于每个处理器的内核数量,一般来说,设置为 1 或者 2 是比较常见的选择。这取决于虚拟机的工作负载和性能需求。
    • 如果你的虚拟机主要用于轻量级任务或者测试目的,设置每个处理器的内核数量为 1 是足够的。
    • 如果你的虚拟机需要处理较重的工作负载或者需要更高的性能,可以考虑将每个处理器的内核数量设置为 2,以提高虚拟机的处理能力。

常见的设置是将虚拟机的处理器数量设置为主机的逻辑处理器数量,并将每个处理器的内核数量设置为 1 或者 2。
最佳的设置取决于你的具体需求和工作负载,你可能需要进行一些实验和性能测试来找到最适合你的配置。

在这里插入图片描述

3)原理

处理器(Processor)通常指的是中央处理器(Central Processing Unit,CPU),它是计算机中负责执行指令和处理数据的主要组件之一。处理器可以包含一个或多个计算核心(Core),每个核心都能够执行独立的指令流,因此也被称为计算单元。内核数量指的是处理器中包含的计算核心的数量。

举例来说,一颗处理器可能包含有多个核心,比如双核处理器、四核处理器、六核处理器等。每个核心都能够独立执行指令,因此多核处理器可以同时处理多个任务,提高计算机的性能和效率。

内核数量的增加通常可以提高处理器的并行处理能力,因此在多线程应用程序和多任务环境下,多核处理器能够更好地发挥其性能优势。
在某种程度上可以这样理解,但这种理解还是有些简化。让我更详细地解释一下。

在计算机系统中,一个进程可以包含多个线程。每个线程都是一个执行单元,负责执行特定的任务。现代操作系统通过时间分片技术使得多个线程能够在单个CPU上交替执行,从而实现并发性。

当一个 CPU 包含多个核心时,每个核心都能够执行独立的指令序列,因此可以理解为每个核心能够处理一个线程。因此,如果一个 CPU 包含多个核心,它就可以同时执行多个线程,从而提高了系统的并发性和性能。

操作系统的线程调度器会根据系统的负载和调度策略来决定哪些线程在哪些核心上执行。

5、内存分配

在这里插入图片描述
分配给虚拟机的内存大小取决于在虚拟机中运行的操作系统、应用程序以及预期的工作负载。

  1. 基本用途的虚拟机:如果只是在虚拟机中运行一些基本的操作系统和应用程序,比如一些轻量级的 Linux 发行版或者 Windows 虚拟机,可以考虑分配 2GB 到 4GB 的内存给每个虚拟机。

  2. 多任务虚拟机:如果打算在虚拟机中运行多个虚拟机实例,或者在单个虚拟机中运行多个应用程序或者进行多任务操作,可能需要分配更多的内存。在这种情况下,你可以考虑分配 4GB 到 8GB 的内存给每个虚拟机。

  3. 资源密集型应用程序:如果打算在虚拟机中运行一些资源密集型的应用程序,比如数据库服务器、开发环境等,需要分配更多的内存。在这种情况下,可以考虑分配 8GB 到 12GB 甚至更多的内存给每个虚拟机。

  4. 留出主机内存:需要留出至少 4GB 的内存给物理主机,以便确保主机的稳定性和响应速度。

6、网络类型

在这里插入图片描述
虚拟机可以使用不同的网络模式来连接到主机或外部网络。

有桥接网络、网络地址转换 (NAT) 和主机模式三种网络模式。

  1. 桥接网络(Bridge Network)

    • 桥接网络模式将虚拟机连接到物理网络中,并且虚拟机会像物理机一样被路由器分配一个独立的IP地址。
    • 这使得虚拟机可以直接与物理网络中的其他设备通信,就像它们是通过网络交换机连接的一样。
    • 桥接网络模式使得虚拟机可以在网络上表现得像是独立的物理设备。
  2. 网络地址转换 (NAT)

    • 在NAT模式下,虚拟机与物理网络相连,但是虚拟机的IP地址是由虚拟机软件(如VMware或VirtualBox)的网络服务管理的。
    • 外部网络上的数据包会通过主机的IP地址和端口号被转换成虚拟机内部的IP地址和端口号。
    • 这样,虚拟机可以访问外部网络,但外部网络无法直接访问虚拟机,除非进行端口转发或配置特定的规则。
  3. 主机模式网络(Host-Only Network)

    • 在主机模式网络中,虚拟机与主机机器之间形成一个独立的网络,而不连接到外部网络。
    • 虚拟机可以与主机进行通信,但无法与外部网络直接通信。
    • 这种模式通常用于搭建测试环境或者创建局域网内部的虚拟机互联。

桥接网络模式使虚拟机与外部网络连接并可直接通信,NAT模式允许虚拟机通过主机与外部网络通信,而主机模式网络则是虚拟机与主机形成一个独立的网络。

7、选择I/O控制器类型

在这里插入图片描述

1)SCSI控制器

SCSI(Small Computer System Interface)是一种用于连接计算机系统与外部设备(如硬盘驱动器、光驱、磁带驱动器等)的标准接口。SCSI 接口通常用于连接高性能存储设备,提供了较高的数据传输速率和更多的可扩展性,适用于需要高性能存储和大容量存储的场景。

SCSI 控制器是计算机系统中负责管理和控制 SCSI 设备的硬件组件。它位于计算机系统的主板上,负责与 SCSI 设备进行通信,并控制数据传输和设备操作。

在虚拟化环境中,虚拟机通常需要连接到虚拟化软件模拟的 SCSI 控制器以访问虚拟化环境中的存储设备。这样可以提供较高的存储性能和更多的存储选项,以满足虚拟机和应用程序的需求。

2)可选类型
  1. BusLogic:BusLogic 是一种传统的虚拟机 SCSI 控制器,用于连接虚拟机中的 SCSI 设备(如硬盘驱动器、光驱等)。它提供了可靠的性能和广泛的兼容性,适用于许多虚拟化环境。

  2. LSI Logic:LSI Logic 是一种高性能的虚拟机 SCSI 控制器,通常用于连接虚拟机中的 SCSI 设备。它提供了更高的性能和更广泛的兼容性,适用于需要较高性能存储的虚拟机和应用程序。

  3. LSI Logic SAS(S):LSI Logic SAS(Serial Attached SCSI)是一种串行连接的 SCSI 控制器,提供了更高的性能和更高的数据传输速率。它通常用于连接高性能存储设备,适用于需要高性能存储的虚拟机和工作负载。

  4. SCSI(P):SCSI(Parallel)是一种传统的并行 SCSI 控制器,通常用于连接低性能和低成本的 SCSI 设备。由于并行 SCSI 性能较低且逐渐被淘汰,所以现在很少使用。

8、磁盘类型选择

在这里插入图片描述

2)可选类型
  1. IDE (I):IDE(Integrated Drive Electronics)是一种传统的硬盘控制器,用于连接虚拟机中的硬盘设备。IDE 控制器通常用于连接较旧的硬盘设备,提供了基本的硬盘控制功能。

  2. SCSI (S):SCSI(Small Computer System Interface)是一种高性能的硬盘控制器,通常用于连接虚拟机中的存储设备(如硬盘、光驱等)。SCSI 控制器提供了更高的性能和更多的功能选项,适用于需要高性能存储的虚拟机和工作负载。

  3. SATA (A):SATA(Serial Advanced Technology Attachment)是一种串行连接的硬盘控制器,用于连接虚拟机中的硬盘设备。SATA 控制器提供了较高的性能和较低的成本,适用于大多数虚拟机和应用程序。

  4. NVMe (V):NVMe(Non-Volatile Memory Express)是一种用于连接固态硬盘(SSD)的高性能硬盘控制器。NVMe 控制器提供了低延迟和高吞吐量的存储性能,适用于需要极高性能存储的虚拟机和工作负载。

9、选择磁盘

在这里插入图片描述

在这里插入图片描述

后面就一直下一步

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

扭矩衰减的影响因素及改善措施——SunTorque智能扭矩系统

智能扭矩系统-智能拧紧系统-扭矩自动控制系统-SunTorque 扭矩衰减是许多机械系统中常见的问题,特别是在长期运行或高负荷工作环境下。扭矩衰减不仅影响设备的性能,还可能引发安全隐患。因此,了解扭矩衰减的影响因素及采取相应的改善措施至关…

Python Flask框架 -- ORM模型的CRUD操作(增删改查)

CRUD操作 使用ORM进行CRUD(Create、Read、Update、Delete)操作,需要先把操作添加到会话中,通过db.session可以获取到会话对象。会话对象只是在内存中,如果想要把会话中的操作提交到数据库中,需要调用db.session.commit()操作&…

Navicat Premium 16中文---数据库管理与开发的强大引擎

Navicat Premium 16是一款功能强大的数据库管理工具,旨在为用户提供高效、便捷的数据库连接、管理和保护体验。该软件支持多种数据库系统,如MySQL、Oracle、SQL Server等,满足用户多样化的需求。通过直观的图形界面,用户可以轻松进…

电脑中msvcp140_codecvt_ids.dll丢失的解决方法,实测有效的方法

在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是缺少某个DLL文件。而msvcp140CODECVTIDS.dll就是其中之一。那么,msvcp140CODECVTIDS.dll是什么?msvcp140CODECVTIDS.dll文件属性又是什么呢?msvcp140C…

探索LLaMA模型:架构创新与Transformer模型的进化之路

引言 在人工智能和自然语言处理领域,预训练语言模型的发展一直在引领着前沿科技的进步。Meta AI(前身为Facebook)在2023年2月推出的LLaMA(Large Language Model Meta AI)模型引起了广泛关注。LLaMA模型以其独特的架构…

C语言例4-3:复合语句,输出a,b的值

代码如下&#xff1a; //复合语句&#xff0c;输出a,b的值 #include<stdio.h> int main(void) {int a 10;printf("a %d\n",a);{int b20; //复合语句printf("b %d\n",b); //复合语句中的数据定义语句放在其他语句的前面}return …

【每日力扣】332. 重新安排行程与51. N 皇后

&#x1f525; 个人主页: 黑洞晓威 &#x1f600;你不必等到非常厉害&#xff0c;才敢开始&#xff0c;你需要开始&#xff0c;才会变的非常厉害。 332. 重新安排行程 给你一份航线列表 tickets &#xff0c;其中 tickets[i] [fromi, toi] 表示飞机出发和降落的机场地点。请你…

急速解决代码扫描Mybatis的SQL注入问题

1.sql注入是什么 sql注入见名知意&#xff0c;是指一些非法用户通过将一些特殊字符或者sql语句插入到要提交的表单之中&#xff0c;从而让服务器在不知情的情况下执行恶意的sql命令&#xff0c;从而引发一系列的安全隐患。 讲的通俗一点就是说&#xff0c;用户利用sql语法将一…

java数据结构与算法刷题-----LeetCode75. 颜色分类

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 1. 双指针两次遍历2. 三指针 1. 双指针两次遍历 解题思路&#…

数字化转型能给企业创造哪些价值?

企业数字化转型能创造哪些价值&#xff1f; 深耕TOB行业 9 年&#xff0c;下面来分享下自己的一些经验和看法。 &#xff08;看完要是觉得有用&#xff0c;记得点个赞哈~&#xff09; 1、从宏观上理解&#xff0c;我们可以分成4个大的方面&#xff1a; &#xff08;1&#x…

Linux操作系统及进程(三)进程优先级及特性

目录 一、优先级概念 二、查看系统进程 三、进程切换 一、优先级概念 1.cpu资源分配的先后顺序&#xff0c;就是指进程的优先权&#xff08;priority&#xff09;。 2.优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用&#xff0c;可以改善系统性能。…

不敢想象吧!Anzo Capital发现不仅经济事件影响汇率天气也是

在投资交易中弄懂汇率的走势方向&#xff0c;对各位投资者的交易盈利那还不是小菜一碟&#xff0c;但各位投资者你们想象不到吧&#xff01;Anzo Capital发现不仅经济事件能影响汇率&#xff0c;就连天气也能轻易影响汇率。 就用2015年1月15日的经济事件来说&#xff0c;当瑞…

【windows】安装 Tomcat 及配置环境变量

&#x1f468;‍&#x1f393;博主简介 &#x1f3c5;云计算领域优质创作者   &#x1f3c5;华为云开发者社区专家博主   &#x1f3c5;阿里云开发者社区专家博主 &#x1f48a;交流社区&#xff1a;运维交流社区 欢迎大家的加入&#xff01; &#x1f40b; 希望大家多多支…

「MySQL」数据库约束

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;数据库 &#x1f387;欢迎点赞收藏加关注哦&#xff01; 数据库约束 &#x1f349;约束类型&#x1f34c;NOT NULL&#x1f34c;UNIQUE&#x1f34c;DEFAULT&#x1f34c;主键&#x1f34c;外键…

python类属性和global变量区别

数据成员是指在类中定义的变量&#xff0c;即属性&#xff0c;根据定义位置&#xff0c;又可以分为类属性和实例属性。 类属性定义在方法前面。 定义类属性&#xff0c;非全局变量 class MyClass:#global cc 10 ## 类属性def my_function(self):global qwqw 9print(this …

【已解决】vue3+ts使用Element-Plus icon图标不显示|element plus 使用 icon 图标教程

文章目录 使用Element-Plus icon图标不显示的解决方案确保已正确安装和引入Element-Plus及其图标库&#xff1a;检查是否有命名冲突&#xff1a; element plus 使用 icon 图标教程1. 安装 Element Plus2. 引入 Element Plus 和图标全局引入按需引入 3. 在组件中使用图标4. 自定…

【包远程运行安装】SpringBoot+Mysql实现的在线音乐播放系统源码+运行教程+开发文档(参考论文)

今天发布的是由【猿来入此】的优秀学员独立做的一个基于springboot脚手架的千千在线音乐播放系统&#xff0c;主要实现了在线音乐的播放和下载&#xff08;支持付费和开通VIP功能&#xff09; 除脚手架功能以外下面是系统的功能&#xff1a; 前台普通用户&#xff1a;注册、登录…

【@changesets/cli】变更集实战教程

一、背景概述 前端目前基于Monorepo架构的npm包开发很普遍&#xff0c;在开发完毕后&#xff0c;我们需要对包进行版本号升级&#xff0c;并且部署&#xff0c;这些操作如果是手动来操作的话&#xff0c;很麻烦&#xff0c;而且容易出错。 例如有这样的场景&#xff1a; -ap…

postgresql多选功能实现

一、背景介绍 在一所乡村小学&#xff0c;教师资源紧张&#xff0c;所以会出现一个教师身兼多职的情况&#xff0c;既是语文老师又是数学老师甚至还是体育老师&#xff0c;这个系统就是为各个班级分配老师&#xff0c;这样一个场景实现 二、代码实现及效果 美术语文英语数学…

qemu+kvm的基本用法

qemukvm的基本用法 1. KVM和QEMU的关系2 QEMU的安装3 使用QEMU3.1 创建虚拟镜像文件3.2 创建虚拟机3.3 使用虚拟机 4 关于kvm用户权限问题 1. KVM和QEMU的关系 首先KVM&#xff08;Kernel Virtual Machine&#xff09;是Linux的一个内核驱动模块&#xff0c;它能够让Linux主机…
最新文章