玩转Virtual Box虚拟机

玩转Virtual Box虚拟机

虚拟化技术和虚拟机简介

什么是虚拟化技术?

虚拟化技术是将计算机的各种硬件资源予以抽象、转换、分割、组合的一种计算机技术。虚拟化技术打破了实体结构间不可切割的障碍,从而使用户可以按照需求重新组合硬件资源,使硬件资源得到更充分的利用。

假如你现在有一台电脑,它有一个四核CPU、16GB内存和2TB硬盘。我们可以对CPU、内存和硬盘进行抽象、转换,再进行分割、组合。最终得到两台拥有双核CPU、8GB内存和1TB硬盘的虚拟机。

常见的虚拟化技术

  • 虚拟内存,将硬盘虚拟成内存来使用
  • 游戏模拟器
  • 虚拟专用网:OpenVPN
  • 跨平台软件:Wine
  • 跨平台编程语言:Oracle Java,Microsoft .NET
  • 操作系统虚拟机:VirtualBox,WMware,KVM,Hyper-V
  • 容器虚拟化:Docker

虚拟机的与实体机的关系

电脑(实体机器)
{操作系统(Windows,Linux,Mac OS){虚拟机软件(VirtualBox,VMware){虚拟机#1{Windows}虚拟机#2{Ubuntu}虚拟机#3{Android}}}
}

为什么选择VirtualBox?

软件只是工具,不是目的。以下是各操作系统虚拟机的特点:

  • KVM:只能在Linux系统上使用。
  • Hyper-V:只能在部分版本的Windows系统上使用。
  • WMware Workstation Player:免费,无快照、克隆功能。
  • WMware Workstation Pro:收费,功能极其强大,配置复杂。
  • VirtualBox:开源免费,功能适中,中文界面,跨平台。

KVM和Hyper-V因为只能在特定系统下运行,局限性太大,而不优先学习。而WMware Workstation Player功能不全,且WMware Workstation Pro收费太高而不适合初学者。最终选定学习VirtualBox。

VirtualBox的安装和全局设定

VirtualBox的发展史

  • 2007.01 Innotek公司发布自由软件VirtualBox。
  • 2008.02 Innotek公司被Sun公司收购,VirtualBox更名为Sun VirtualBox。
  • 2010.01 Oracle完成对Sun公司收购,VirtualBox又被更名为Oracle VM VirtualBox。

虽然几经更迭,但时至今日(2024.04.21)VirtualBox仍然是自由软件。

VirtualBox的下载安装

进入VirtualBox官网的下载界面,www.virtualbox.org。选择对应平台下载安装包。
下载好安装包后,双击即可开始安装。在这里插入图片描述

点击下一步。
在这里插入图片描述

安装目录可自行选择,我会将其安装到默认路径C:\Program Files\Oracle\VirtualBox\处。点击下一步。
在这里插入图片描述

点击“是”。因为VirtualBox在安装时会安装一个网卡驱动,在网卡驱动安装时,实体机器会断一下网,所以有这个警告。在这里插入图片描述

点击“安装”。
在这里插入图片描述

等待安装。
在这里插入图片描述

点击完成,运行VirtualBox。
在这里插入图片描述

软件打开后就是这个样子。

调整全局设定

安装好VirtualBox后先不要急着安装虚拟机,我们先把全局设定调好。

在这里插入图片描述

点击全局设定。

在这里插入图片描述

修改常规中的默认虚拟电脑位置。我将路径改为D:\VirtualBox VMs。

在这里插入图片描述

修改“更新”中的设置,取消检查更新。频繁地更新会导致系统不稳定。

其他的选项保持默认即可。

新建Windows 10虚拟机

术语

  • Host:主机(物理机器)
  • Guest:虚拟机
  • Host OS:主机的操作系统
  • Guest OS:虚拟机的操作系统

新建虚拟机

在这里插入图片描述

点击“新建”。

在这里插入图片描述

填入名称,并选择下载好的虚拟光盘。再点击下一步。

在这里插入图片描述

勾选“增强功能”。填写自己的用户名和密码。点击下一步。

在这里插入图片描述

给虚拟机分配内存和CPU,注意不要超出绿色区域,否则主机运行所需的内存和CPU就不够了。点击下一步。

在这里插入图片描述

给虚拟机分配硬盘,这里选择默认的50GB。点击下一步。

在这里插入图片描述

点击“完成”即可。至此,Windows 10虚拟机创建完成。

虚拟机在宿主机中如何保存

打开前面全局设定中的默认虚拟电脑位置,我的是D:\VirtualBox VMs。看到里面有一个名为Windows 10的文件夹。点进去看看,主要的文件有三个,分别是.vdi文件、.vbox文件和.vbox-prev文件。.vbox文件是虚拟机文件,.vbox-prev文件是虚拟机文件的备份。,vdi是虚拟硬盘文件。

启动虚拟机

在这里插入图片描述

运行虚拟机时可能出现"Windows无法从无人参与应答文件读取<ProductKey>设置。"的报错。这时应该删除掉软驱。先强制退出当前虚拟机。

在这里插入图片描述

点击“移除虚拟盘”。

在这里插入图片描述

光驱1先移除,再点击“选择或创建一个虚拟光盘文件”,重新选择.iso文件。

在这里插入图片描述

“系统”中的“启动顺序”中,去勾选“软驱”并将光驱排到顺序的最前面。重新启动虚拟机即可。Windows 10的安装过程就不在这里赘述了,跟主机安装Windows10一样的。

虚拟机增强功能安装

在虚拟机中,打开资源管理器,我们看到C盘的旁边有一个CD驱动器。

在这里插入图片描述

点击“设备”中的“安装增强功能”。等待安装完成,之后双击CD驱动器(VirtualBox Guest Additions)。一路next,直到安装完成。最后选择重启,点击Finash。

增强包Guest Additions解锁的四大功能

增强包中包含了很多驱动程序和应用程序。下面介绍增强包解锁的四大功能。

功能一,无缝窗口、全屏与自动缩放

在这里插入图片描述

这里有一个无缝模式,它的快捷键是Host+L。那么Host键是什么呢?我们点击“管理”,再点击“全局设定”,选择“热键”再选择“虚拟电脑”。这样我们就看到了名称为“主机组合键”的热键,他就是Host,它的按键是“Right Ctrl”,也就是右边的ctrl键。

在这里插入图片描述

顾名思义,无缝模式会将最上面和最下面的两栏隐藏掉。而全屏模式会将主机的任务栏也给隐藏掉,使虚拟机的桌面完全铺满屏幕。自动缩放允许用户随意地更改虚拟机窗口的大小。

功能二,共享粘贴板

点击“设备”,选择“共享粘贴板”,再选择“双向”即可开启共享粘贴板。

这个功能的重要程度不言自明。共享粘贴板的内容只能是文本。

功能三,拖放

点击“设备”,选择“拖放”,再选择“双向”即可开启共享粘贴板。在这之后需要重启虚拟机,不然虚拟机可能出现BUG。

拖放可以将主机和虚拟机中的文件互相拖放。你最好拥有两块显示屏,将主机与虚拟机的桌面分别放在两块显示屏上,这样互相拖放文件将会非常方便。

功能四,共享文件夹

点击“设备”,选择“共享文件夹”,再点击“共享文件夹”。

在这里插入图片描述

点击“添加共享文件夹”,填上必要的信息。这里我的共享文件夹路径为D:\VirtualBox VMs\share,共享文件夹名称为share,勾选自动挂载和固定分配。点击确定即可。

导入和导出虚拟机

在这里插入图片描述

点击“工具”,可以看到有“导入”和“导出”功能。

导出

点击“导出”。

在这里插入图片描述

选择你要导出的虚拟机。点击下一步。

在这里插入图片描述

先讲一下导出格式。

ovf格式全称为Open Virtualization Format,是一种工业级的虚拟化格式。它包含了几个独立的文件。

ova格式全程为Open Virtualization Format Archive,是将ovf中的几个文件打包成一个.tar压缩包。

选择好保存ova文件的地址,格式选择“开放式虚拟化格式1.0”,点击下一步即可。导出的时间很长,需要耐心等待。

应用场景

将带有应用程序的OS打包成软件包,进行软件分发或软件部署。一般是服务器操作系统。

导入

点击“导入”。选择需要导入的文件。点击“下一步”。调整一下参数,点击“完成”即可。

注册和删除虚拟机

删除虚拟机

在这里插入图片描述

右键想要删除的虚拟机,点击“删除”即可。选择“删除所有文件”,VirtualBox就会删除虚拟机的所有文件。选择“只是移除”,则虚拟机只是不再显示在VirtualBox中,而虚拟机的文件都不会丢失。

注册虚拟机

在这里插入图片描述

点击“工具”,可以看到有“注册”功能。点击“注册”,找到之前被删除(只是移除)的虚拟机的.vbox文件并选择。可以看到虚拟机又出现在VirtualBox的虚拟机列表中了。

克隆和批量管理虚拟机

克隆的作用:获得虚拟机的备份。可以快速部署多台服务器。

克隆

在这里插入图片描述

选择需要克隆的虚拟机,右键选择“复制”。

在这里插入图片描述

MAC地址设定选择“为所有网卡重新生成MAC地址”,这样防止MAC地址冲突。点击“下一步”。

在这里插入图片描述

选择“完全复制”或“链接复制”。

批量管理

分组

新建分组:可以把一台虚拟机拖动到另一台虚拟机上,这样这两台虚拟机就成为了一个分组。

将虚拟机加入某个分组:把一台虚拟机拖动到分组名称上。

管理

在这里插入图片描述

点击“编组”,就可以批量启动或停止虚拟机了。

备份功能

将系统的当前状态记录下来,后续的任何时候都可以恢复到该状态。

在这里插入图片描述

先点击这里,选择“备份[系统快照]”。点击“生成”,可以获得一个备份。我们可以启动这个备份。我们进入这个虚拟机的文件夹中,可以看到里面多出了一个名为Snapshots的文件夹,里面会为每一个虚拟硬盘都生成一个文件,而且采用增量备份的形式。

增量备份会形成一棵树形结构,某些备份是基于另一些备份生成的。点击恢复备份就能回到某些备份时的状态。不要在文件夹内直接删除某个备份,这样很可能会破坏树的结构,而应该在VirtualBox界面中进行删除操作。

添加硬盘

添加虚拟硬盘

硬盘不支持热插拔,所以要先关闭虚拟机。

在这里插入图片描述

点击“设置”。

在这里插入图片描述

选择“存储”,再选择“控制器:SATA”,点击“添加虚拟硬盘”。

在这里插入图片描述

点击“创建”。一步步完成向导即可。一般选择VDI,预先分配全部空间。

虚拟介质管理

在这里插入图片描述

如图所示,虚拟介质管理在管理-工具目录下。在这里可以管理所有虚拟介质。目前(2024.04.21),虚拟介质的大小只能调大,不能调小。

删除虚拟介质时,需要先将虚拟介质释放。

安装扩展包Extension Pack

扩展包与增强包

增强包:Guest Additions。以镜像文件的形式包含在VirtualBox安装包中。文件名为VBoxGuestAdditions.iso

扩展包:Extension Pack。是一个需要单独下载的文件。文件名为Oracle_VM_VirtualBox_Extension_Pack-x.x.x.vbox-extpack

下载并安装拓展包

扩展包的版本号必须与VirtualBox的版本一致。拓展包的下载地址与VirtualBox的安装包下载地址一致,都是www.virtualbox.org。在下面找到Extension Pack并下载。

在这里插入图片描述

点击“工具”右边的三个点。再点击“安装”,选中刚才下好的扩展包,点击“安装”即可。

解决VirtualBox更新

去官网下载最新的VirtualBox版本并安装,安装过程与初次安装一样。之后安装扩展包的步骤也与前文一样。最后升级增强包。

新建Ubuntu虚拟机

点击新建虚拟机。

使用时可能出现显示不全的问题。按alt+F7键之后移动鼠标即可。

安装增强包

sudo apt install build-essential dkms linux-headers-$(uname -r) -y

使用apt安装好这三个包后,去设备菜单中点击安装增强包,再输入以下指令。

sudo ./media/user/VBox_GAs_7.0.12/VBoxLinuxAdditions.run

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

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

相关文章

NX二次开发UF_MTX(矩阵运算)常用函数

目录 一、概述 二、函数的介绍 2.1 UF_MTX3_copy&#xff08;复制原来矩阵&#xff09; 2.2 UF_MTX3_determinant&#xff08;计算矩阵的行列式&#xff09; 2.3 UF_MTX3_identity&#xff08;单位矩阵&#xff09; 2.4 UF_MTX3_initialize&#xff08;可以根据X、Y方向向…

R: 阿尔法α多样性计算和箱图制作,以及差异分析

# install.packages("vegan") library(vegan) library(ggplot2) library(ggpubr)setwd("xxx") # 使用read.table()函数读取数据 df <- read.table("xxx", header TRUE, row.names 1)# 转置数据框 df <- t(df)# 计算每个样品的香农多样性…

【Linux】虚拟机与Xshell及VS Code的连接

一、基础环境 虚拟机&#xff1a;VMware Workstation Pro 虚拟机镜像&#xff1a;ubuntu-18.04.5-desktop-amd64.iso 其他&#xff1a;Xshell 6、Xftp 6、Visual Studio Code 上述软件的安装操作不再赘述&#xff0c;CSDN上有大量的优秀博文&#xff0c;可参考&#xff1a;详细…

SpringBoot---------Lombook

Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具&#xff0c;通过使用对应的注解&#xff0c;可以在编译源码的时候生成对应的方法&#xff0c;也就是简化咱们之前pojo&#xff0c;实体类里面臃肿的get/set有参无参。 首先查看一…

学习51单片机 C语言知识

一、数据类型 C 语言包含的数据类型如下图所示 C51 的数据类型分为基本数据类型和组合数据类型&#xff0c;情况与标准 C 中的数据类型基本相同&#xff0c;但其中 char 型与 short 型相同&#xff0c;float 型与 double 型相同&#xff0c;另外&#xff0c;C51 中还有专门针…

免费一年期ssl证书怎么申请?看这里!(教育版、政务版)

自从去年年底开始&#xff0c;各大公有云陆续下架一年期的免费ssl证书&#xff0c;且申请数量都做了限制调整&#xff0c;那么现在去哪里申请免费一年期的ssl证书呢&#xff1f; 一、短期ssl证书 首先了解一下短期免费证书的平台&#xff0c;一般免费证书都为90天有效期&…

创新案例|Amazon.com 2023 年营销策略:电子商务零售巨头商业案例研究

2022 年最后一个季度&#xff0c;亚马逊报告净销售额超过 1,492 亿美元。这种季节性峰值是亚马逊季度报告的典型特征&#xff0c;但增长是不可否认的&#xff0c;因为这是该公司有史以来最高的季度。毫无疑问&#xff0c;这家电商零售巨头继续引领电商增长。本文将介绍我们今天…

木马——文件上传

目录 1、WebShell 2.一句话木马 靶场训练 3.蚁剑 虚拟终端 文件管理 ​编辑 数据操作 4.404.php 5.文件上传漏洞 客户端JS检测 右键查看元素&#xff0c;删除检测代码 BP拦截JPG修改为php 服务端检测 1.MIME类型检测 2.文件幻数检测 3.后缀名检测 1、WebShell W…

充气膜体育馆:为学校带来的健康运动环境

充气膜体育馆作为一种先进的建筑结构&#xff0c;配备先进的空气净化系统&#xff0c;为学校带来了重要的意义和价值。 充气膜体育馆不仅提供了室内运动场地&#xff0c;还通过先进的空气净化系统保障了学生在任何天气条件下都能进行健康的体育活动。尤其是在雾霾天气频繁的地区…

使用docker打包当前服务器的neo4j环境

Docker 是一个开源的应用容器引擎,它允许开发者将应用程序及其依赖打包到一个可移植的容器中,这样应用程序就可以在任何支持Docker的平台上运行,而无需担心环境差异。 当运行一个Docker容器时,它会加载一个镜像并运行它。Docker在容器内部创建一个隔离的环境,这个环境被称…

使用spring boot集成shardingsphere分库分表简易测试

根据如下pom整上一个spring-boot项目&#xff0c;spring-boot版本用2.3.5&#xff0c;shardingsphere用5.1.1。 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://ww…

7-25 念数字

题目链接&#xff1a;7-25 念数字 一. 题目 1. 题目 2. 输入输出格式 3. 输入输出样例 4. 限制 二、代码 1. 代码实现 #include <iostream> #include <string> using namespace std;const string pinyin[] { // 每个数字对应的拼音"ling","yi&…

【Hadoop】- YARN架构[7]

前言 Yarn架构是一个用于管理和调度Hadoop集群资源的系统。它是Hadoop生态系统的一部分&#xff0c;主要用于解决Hadoop中的资源管理问题。 通过使用Yarn架构&#xff0c;Hadoop集群中的不同应用程序可以共享集群资源&#xff0c;并根据需要动态分配和回收资源。这种灵活的资…

验证线缆(汽车线束、网线、多芯线)破损或断开与正常线缆的区别在哪里?依AEM CV-100 k50测试仪

工厂产线生产的线缆&#xff08;汽车线束、网线、多芯线&#xff09;做成成品&#xff0c;即2端都安装好了模块。在这种情况下如何快速的判定此条线缆是合格的呢&#xff0c;此处的合格为物理层面上的合格&#xff08;不会出现开路、短路&#xff09;&#xff0c;也就是最基本保…

client-go源码结构及客户端对象

一、基础知识介绍 1、GVR 和 GVK G Goup资源组&#xff0c;包含一组资源操作的集合VVersion资源版本&#xff0c;用于区分不同API的稳定程度及兼容性RResource资源信息&#xff0c;用于区分不同的资源APIKKind资源对象类型&#xff0c;每个资源对象都需要Kind来区分它自身代表…

冒泡排序c++

题目描述 编程输入n(1≤n≤20)个小于1000非负整数&#xff0c;然后自动按从大到小的顺序输出。&#xff08;冒泡排序&#xff09; 输入 第一行&#xff0c;数的个数n; 第二行&#xff0c;n个非负整数。 输出 由大到小的n个非负整数&#xff0c;每个数占一行。 样例输入 …

restful请求风格的增删改查-----修改and删除

一、修改&#xff08;和添加类似&#xff09; 前端&#xff1a; <script type"text/javascript">function update(){//创建user对象var user {id:$("#id").val(),username:$("#username").val(),password:$("#password").val…

探索VR数字展厅,对企业未来展示新模式

在数字化浪潮的推动下&#xff0c;企业展示也在经历着一场革命&#xff0c;VR数字展厅正在以一种全新的方式重塑我们的生活和工作空间&#xff0c;不仅重塑了客户的观展体验&#xff0c;也为企业营销打开了新的渠道。 VR数字展厅作为实体展厅的数字化延伸&#xff0c;正以其沉浸…

【论文笔记】基于预训练模型的持续学习(Continual Learning)(增量学习,Incremental Learning)

论文链接&#xff1a;Continual Learning with Pre-Trained Models: A Survey 代码链接&#xff1a;Github: LAMDA-PILOT 持续学习&#xff08;Continual Learning, CL&#xff09;旨在使模型在学习新知识的同时能够保留原来的知识信息了&#xff0c;然而现实任务中&#xff…

数据结构––kmp算法(串)

kmp算法作为串的一个重要内容&#xff0c;必然有一定的难度&#xff0c;而在看到各类教辅书里的概念与解释后&#xff0c;其晦涩难懂的内容直接劝退一部分人&#xff0c;现在&#xff0c;让我们来看看吧 KMP解决的问题类型 KMP算法的作用就是在一个已知的字符串中查找子串的位…