玩转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