虚拟化 - VirtualBox
安装
- win10上如果要使用VirtualBox安装64位系统(如Ubuntu),那么就要:
- CPU、主板支持虚拟化技术
- 打开主板BIOS上的虚拟化开关(前提是前面说的CPU、主板支持虚拟化技术)
- 不同主板上的BIOS中的开关位置略有不同,有的在Advanced下面,有的在Security下面,一般叫做VT-x或者AMD-V什么的,或者CPU Virtualization什么的。
- 可以在任务管理器->Performance->CPU中通过查看Virtualization是否为Enabled来查看是否成功打开了。
- 注意打开开关之后,
- (否则会蓝屏?也可能是打开开关之前的虚拟机不能再用了,懒得试了。)
- 在控制面板的"程序和功能"的"打开/关闭Windows功能"中,关闭win10的Hyper-V功能。
- 可能是win10的Hyper-V功能和VirtualBox、VMware的虚拟化功能冲突,但Docker又不一样了,Docker必须打开Hyper-V开关,可能Docker的机制是会使用操作系统的虚拟化功能。
- 重启一下
- 关闭Windows Defender Device Guard和Windows Defender Credential Guard功能
- 微软文档
- 最好重启一下
- 可以通过界面修改
- 在主机操作系统上,右键单击“开始” > “运行”,键入gpedit.msc,然后单击“ 确定”。本地组策略编辑器打开
- 转至本地计算机策略 > 计算机配置 > 管理模板>系统 >Device Guard(或者是: 设备防护) > 启用基于虚拟化的安全性。
- 选择已禁用。
- 也可以通过注册表修改
- HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\LSA\LsaCfgFlags
- HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\DeviceGuard\EnableVirtualizationBasedSecurity
- HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\DeviceGuard\RequirePlatformSecurityFeatures
- 在控制面板的"程序和功能"的"打开/关闭Windows功能"中,关闭win10的Hyper-V功能。
- 先创建虚拟机,然后在设置->存储->Controller:IDE->Empty->IDE Secondary Master->点击后面的按钮选择iso系统镜像,然后启动虚拟机开始安装。
网络设置
- 使用NAT Network共享宿主机网络(NAT不是这样的)
- 安装完VirtualBox后,宿主机会多一个VirtualBox的网卡
- Tools->Preferences->Network下新建一个Nat Network,比如名称为NatNetwork,双击打开Details,查看NatNetwork的子网网段供后面步骤使用,比如是10.0.2.0/24。
- 虚拟机的Settings->Network->Adapter 1配置成Attached to NAT Network,使用的NAT Network的Name是前面新建的Nat Network的名称,如NatNetwork。
- 宿主机上(控制面板->Network and Internet->Network Connections下可以查看所有网卡),修改VirtualBox虚拟网卡的ip(与NatNetwork同子网)、子网掩码(通常是255.255.255.0)、网关(通常是NatNetwork的.1地址,如10.0.2.1)。
- 虚拟机中,修改ip(与NatNetwork同子网)、子网掩码(通常是255.255.255.0)、网关(通常是NatNetwork的.1地址,如10.0.2.1)、DNS服务(可以在宿主机上ipconfig/all查看主网卡用的DNS服务器地址),然后要重启网络才生效。
- 虚拟机创建的Ubuntu可能是无线网络,需要在外面增加一个有线网卡。
- 修改了虚拟机的网络配置不用重启,实时生效
共享剪切板/支持拖拽文件
- 一般只需要选中虚拟机,然后设置剪贴板和拖拽为双向就ok了(General->Advanced下面)。
- 但是有时候需要VirtualBox和虚拟机都安装组件。需要去虚拟机工具栏->Devices->Insert Guest Additions CD images...,然后虚拟机系统中如Linux会弹出Terminal让你输入密码然后开始从安装镜像中安装插件,完成后可能要重启虚拟机。中文界面可能是在虚拟机的左上方,有一些工具,选中"设置",然后点击下拉框里面的“安装增强功能”。
备份
- 原始文件夹
- Log文件夹
- Snapshots文件夹
- xxx.vdi虚拟机文件
- xxx.vbox文件
- xxx.vbox-prev文件
- 直接拷贝文件夹
- 快照
- 在上一次的快照基础上做差异化快照,相当于checkpoint检查点,可以restore到每一个snapshot
- 会在Snapshots文件夹下面生成快照文件:xxx.vdi
- 对某一个虚拟机的快照操作可以进行多次,每次都是在之前快照的基础上,相当于是差异化的,这个在界面上可以看出来是树状的,可以回退到每个快照。
- 可以不关机
- 备份(Appliance)
- 真正意义上的备份,导出一个单独的合并的文件,用于以后再导入
- 也就是导入、导出Appliance
- 会生成一个xxx.ova文件(只有这一个文件),下次使用需要导入
- 可以不关机
- 可以选择是否包含ISO镜像文件
- 可以选择包含哪些网卡的物理地址
- 克隆(Clone)
- 克隆完成后,VirtualBox的机器列表中也会显示出来这个克隆出来的虚拟机,直接就可以使用。
- 会生成一个单独的克隆目录,包含xxx.vbox和xxx.vdi文件
- 必须先关机
- 可以选择包含哪些网卡的物理地址
- 可以选择是否保留硬盘名称
- 可以选择是否保留硬件UUIDs
- 可以选择Full clone还是Linked clone
虚拟化 - VirtualBox的更多相关文章
- Libvirt 虚拟化库剖析
讲到向外扩展计算(比如云计算),libvirt 可能是您从未听说过的最重要的库之一.libvirt 提供一种虚拟机监控程序不可知的 API 来安全管理运行于主机上的来宾操作系统.libvirt 本身不 ...
- VirtualBox的源码学习
VMM重要的组件 TRPM (Trap Manager) PGM (Page Manager) REM (Recompiled Execution Manager) EM (Execution Man ...
- libvirt虚拟库
转载自:https://www.ibm.com/developerworks/cn/linux/l-libvirt/index.html Libvirt 虚拟化库剖析 讲到向外扩展计算(比如云计算 ...
- KVM,QEMU,libvirt入门学习笔记【转】
转自:http://blog.csdn.net/julykobe/article/details/27571387 注:本文内容均来自网络,我只是在此做了一些摘抄和整理的工作,来源均有注明. 0.虚拟 ...
- [openStack]使用Fuel安装OpenStack juno的fuel_master
安装OpenStack是一件很复杂的事情,特别是在想目中,如果一个组件一个组件,一台一台的coding部署,估计太消耗时间,而且出错的概率很高,所以使用工具推送部署的效率就很高了,而且必须得可靠.mi ...
- 在 CentOS 7上Virtualbox+phpVirtualBox完整虚拟化环境部署
一.phpVirtualBox简介 VirtualBox是一套为不同操作系统而设的 x86 虚拟化产品.它是一个机器/硬件的虚拟化产品,功能上与 VMware Server.Parallel ...
- VirtualBox虚拟机--导入导出系统&主机启用硬件虚拟化
问题概述:在往新电脑中导入其他电脑中导出的虚拟机后,启动该虚拟机系统时报错说主机不支持硬件虚拟化. 将电脑1中VirtualBox的一个虚拟机系统win7导出成.ova格式的文件, 在电脑2中安装Vi ...
- Ubuntu18.04 下 VirtualBox or VMWare 虚拟化问题
This host supports Intel VT-x, but Intel VT-x is disabled.Intel VT-x might be disabled if it has bee ...
- 从vboot来看:virtualbox 和 vmware 虚拟化软件环境的兼容性(支持能力)的差距真是挺大的!
仅仅就支持vboot启动来说:vwmare 完胜!! 熬了一周,(当前最新版本)用virtualbox 5.22 和 6.0 总是无法完成vboot的正常启动功能:不是蓝屏.就是死慢.要不就直接han ...
随机推荐
- js 的eval()方法 计算某个字符串,并执行其中的的 JavaScript 代码;
定义和用法 eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码. 语法 eval(string) 参数 描述 string 必需.要计算的字符串,其中含有要计算的 Java ...
- linux运维笔记——curl
** 1.获取网站返回码 ** [root@Cacti ~]# curl -I www.qq.com HTTP/1.1 200 OK Server: squid/3.4.1 Date: Wed, 08 ...
- 40行代码爬取猫眼电影TOP100榜所有信息
主要内容: 一.基础爬虫框架的三大模块 二.完整代码解析及效果展示 1️⃣ 基础爬虫框架的三大模块 1.HTML下载器:利用requests模块下载HTML网页. 2.HTML解析器:利用re正则表 ...
- SmartGit过期后破解方法
根据自己的操作系统,进入相应的文件夹 ,可能还有一个版本号的文件夹,再进入 Windows: %APPDATA%\syntevo\SmartGit\OS X: ~/Library/Preference ...
- hdu1710-Binary Tree Traversals (由二叉树的先序序列和中序序列求后序序列)
http://acm.hdu.edu.cn/showproblem.php?pid=1710 Binary Tree Traversals Time Limit: 1000/1000 MS (Java ...
- Gym101128G:Game of Cards
题意: 有P摞纸牌和一个数字k,每次可以从一摞中拿0-k张牌,拿完再剩下的牌中的第一张数字是几,就必须再拿几张,谁不能拿谁输. emmm感觉好像就是裸的SG游戏啊,数据不大,递推出每一摞牌的SG值,然 ...
- Nginx源码完全注释(2)ngx_array.h / ngx_array.c
数组头文件 ngx_array.h #include <ngx_config.h> #include <ngx_core.h> struct ngx_array_s { voi ...
- Python操作SQLServer示例
本文主要是Python操作SQLServer示例,包括执行查询及更新操作(写入中文). 需要注意的是:读取数据的时候需要decode('utf-8'),写数据的时候需要encode('utf-8'), ...
- 在tomcat中的conf文件夹下找server.conf 配置如下代码,可省略项目名路径访问 如 localhost:8080 即可访问到项目
<Context path="" docBase="C:\Workspaces\Projects\SLSaleSystem_dw\WebRoot" rel ...
- spring4-3-AOP-AspectJ注解-01-简单使用
1.引入类库 <dependency> <groupId>org.springframework</groupId> <artifactId>sprin ...