Tools - VirtualBox的使用方法和技巧
VirtualBox
VirtualBox 是一款免费开源虚拟机软件。
使用者可以在VirtualBox上安装并且执行Solaris、Windows、DOS、Linux、OS/2 Warp、BSD等系统作为客户端操作系统。
- HomePage: https://www.virtualbox.org/
- Manual:https://www.virtualbox.org/manual/
- Docs:https://www.virtualbox.org/wiki/Documentation
- Download:https://www.virtualbox.org/wiki/Downloads
使用方法和技巧
01 - 为CentOS虚拟机安装VirtualBox增强功能
安装步骤:启动虚拟机,在开机界面中单击设备菜单下的安装增强功能,然后系统会加载增强功能所在的虚拟光盘,进入相应目录点击可执行文件或运行安装脚本,根据提示完成安装,最后重启虚拟机。
示例:
启动CentOS虚拟机,点击“菜单 -> 设备 -> 安装增强功能”。
vboxadd的映像文件将会被挂载到虚拟机,在桌面也可以看到,它包含了安装 VirtualBox 客户端增强功能的组件,目录类似 “/media/VBOXADDITIONS_5.1.4_110228/”。
Root权限进入到对应目录执行sh ./VBoxLinuxAdditions.run命令,然后重启CentOS虚拟机,就可以使用增强功能了。
如果安装出现错误,根据提示查看相关日志。
一般情况下,解决的办法:将内核更新到最新版本,并安装它的头文件和来源,然后重启系统,再次尝试安装vboxadd。
yum update kernel
yum install gcc
yum install kernel-devel
02 - 确认VirtualBox增强功能是否安装成功
- Check the log file `/var/log/VBoxGuestAdditions.log for details.
- 执行
ls -la /opt | grep -i vbox确认是否有对应版本的/VBoxGuestAdditions目录。
03 - 卸载增强工具(VirtualBox Guest Additions)
安装增强工具虽然一定程度上增加了易用性,避免鼠标不便(可以无缝切换)等问题,但在实际使用中往往出现莫名其妙的问题,甚至影响虚拟机性能,如果没有切实的使用需求,不建议安装。
以Linux为例:挂载镜像之后,到对应目录执行sudo ./VBoxLinuxAddtions.run uninstall 即可。
04 - 提升VirtualBox虚拟机性能的几种方法
确认CPU硬件虚拟化功能已开启
在BIOS中将虚拟化技术的选项从disabled改为enabled。
一般来说,英特尔CPU的虚拟化技术选项名称含有“virtualization technology”的字段。
选择虚拟机并点击设置按钮,选择系统选项页面的硬件加速标签,根据实际需求设置。
优化虚拟机设置(内存、显存、存储)
---》点击虚拟机的设置按钮
---》在系统选项页面,根据实际需求设置内存大小
---》在显示选项页面, 根据实际需求设置将显存大小
---》在储存选项页面, 选中左侧存储介质栏中控制器: SATA选项, 然后勾选右侧 使用主机输入输出(I/O)缓存选项
---》如果虚拟机镜像存放在固态硬盘中,可以选中控制器: SATA选项下的子选项, 并勾选右侧的固态驱动器选项
---》保存设置,重新运行虚拟机
05 - VirtualBox的网络模式
未指定 – Not attached
含义:类似虚拟机中有网卡,但是没有插网线;
目的:用于“告诉”虚拟机,网络断开了。
网络地址转换NAT – Network Address Translation (NAT)
虚拟机没有独立IP(不存在与真实的网络中)。
文件共享有限制。
虚拟机可以访主机问和外部网络,但主机和外部网络无法访问到虚拟机。
可用于网页浏览,下载,查看邮件等。
桥接网卡 – Bridged networking
虚拟机有独立的IP(在网络连接方面,就像一个真实的计算机)。
文件共享无限制。
虚拟机可以访主机问和外部网络,但主机和外部网络也可以访问到虚拟机。
内部网络 – Internal networking
虚拟机有独立的IP。
属于同一主机Host中的虚拟机之间可互相访问。
仅主机(Host-Only)适配器 – Host-only networking
虚拟机有独立的IP。
此模式可以在主机物理网卡不存在的情况下,创建一个包换主机和虚拟机的虚拟网络。
主机Host和虚拟机之间可互相访问。不能访问外部网络。
机制:virtualbox内部会创建类似于loopback的虚拟网络接口,从而建立虚拟机和主机之间的通讯连接。
06 - CentOS在Host-Only模式下实现SSH登录
VirtualBox - 全局设定 - 网络 - 仅主机(Host-Only)网络 - 主机虚拟网络界面
IPv4地址:192.168.16.1
IPv4网络掩码:255.255.255.0
其余选项保持默认设置
VirtualBox - 全局设定 - 网络 - 仅主机(Host-Only)网络 - DHCP服务器
不启用服务器
设置虚拟机Host-Only网卡参数
[root@www network-scripts]# pwd
/etc/sysconfig/network-scripts
[root@www network-scripts]# cat ifcfg-eth0
# Advanced Micro Devices, Inc. [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
#BOOTPROTO=dhcp
BOOTPROTO=static
IPADDR=192.168.16.101
NETMASK=255.255.255.0
GATEWAY=192.168.16.1
BROADCAST=192.168.16.255
ONBOOT=yes
HWADDR=08:00:00:00:00:11
[root@www network-scripts]#
[root@www network-scripts]# ping 192.168.16.1
PING 192.168.16.1 (192.168.16.1) 56(84) bytes of data.
64 bytes from 192.168.16.1: icmp_seq=1 ttl=128 time=0.416 ms
--- 192.168.16.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.416/0.416/0.416/0.000 ms
[root@www network-scripts]#
虚拟机的SSH服务配置启动后,就直接SSH登录虚拟机(这里是192.168.16.101)。
07 - CentOS在NAT模式下实现SSH登录
Note:需要同时启用Host-Only模式。
VirtualBox - 全局设定 - 网络 - NAT网络
添加一个新的NAT网络,并设置如下参数:
网络名称:NatNetwork
网络CIDR:10.0.0.2/24
网络选项:支持DHCP
VirtualBox - 全局设定 - 网络 - NAT网络 - 名称(这里是NatNetwork)- 端口转发 - 端口转发规则 - IPv4
名称:Rule1
协议:TCP
主机:192.168.16.1 #--- Host-Only模式下的网关IP地址
主机端口:12345 #--- 自定义的端口
子系统IP:10.0.2.4 #---- 虚拟机NAT网卡的IP地址
子系统端口:22 #--- 虚拟机SSH服务端口
虚拟机的SSH服务配置启动后,直接SSH登录虚拟机(这里是192.168.16.1:12345)。
问题处理
01 - 虚拟机启动时报错“不能为虚拟电脑......打开一个新任务.”
问题现象:

处理方法:
按照如下链接操作后,重启对应的网卡即可。
https://blog.csdn.net/lh11077/article/details/51979663
参考链接
Tools - VirtualBox的使用方法和技巧的更多相关文章
- Tools - VirtualBox
为CentOS虚拟机安装增强功能 启动CentOS虚拟机,点击"菜单 -> 设备 -> 安装增强功能". vboxadd的映像文件将会被挂载到虚拟机,在桌面也可以看到, ...
- Object Pascal 方法与技巧
4 方法与技巧 4.1 设置代码模板 代码模板是Delphi 的代码感知特性的一种,通过它可以快速.高效和正确地输入代码.代码模板将一些常用的语句块保存在模板中,然后程序员只要在代码编辑器中按下“Ct ...
- Vmware Tools 下载及安装方法
Vmware Tools 下载及安装方法 王尚2014.11.20 一.介绍 VMware Tools 是VMware 虚拟机中自带的一种增强工具,相当于 VirtualBox 中的增强功能(Sun ...
- Python - 集成开发环境Pycharm的使用方法和技巧
PyCharm HomePage:PyCharm 我的Pycharm,我做主 Getting Started with PyCharm Pycharm使用技巧 Documentation & ...
- SecureCRT是最常用的终端仿真程序,简单的说就是Windows下登录UNIX或Liunx服务器主机的软件,本文主要介绍SecureCRT的使用方法和技巧
SecureCRT是最常用的终端仿真程序,简单的说就是Windows下登录UNIX或Liunx服务器主机的软件,本文主要介绍SecureCRT的使用方法和技巧 VanDyke CRT 和 VanDyk ...
- 在Swift中使用JavaScript的方法和技巧
本文作者Nate Cook是一位独立的Web及移动应用开发者,是继Mattt大神之后NSHipster的主要维护者,也是非常知名活跃的Swift博主,并且还是支持自动生成Swift在线文档的Swift ...
- Thinkphp常用的方法和技巧(转)
2012年09月26日 Thinkphp 里一些常用方法和技巧的整理,包括常用的快捷键以及在程序开发时用到的一些实用方法,关于快捷键用得不是很熟练,总之,掌握这些方法和技巧,对于我们开发 thinkp ...
- skyline TerraBuilder 制作MPT方法与技巧(2)
制作MPT的方法可以看这里<skyline TerraBuilder 制作MPT方法与技巧(1)>http://www.cnblogs.com/cannel/p/3622447.html ...
- skyline TerraBuilder 制作MPT方法与技巧(1)
MPT是skyline独有的三维地形数据格式,可简单理解为 影像图+高程=三维地形(三维底图),以下介绍用skyline TerraBuilder(以下简称TB)制作MPT的方法与技巧 用TB制作MP ...
随机推荐
- Django 重写用户模型
AUTH_USER_MODEL = 'myapp.MyUser' django——重写用户模型 Django内建的User模型可能不适合某些类型的项目.例如,在某些网站上使用邮件地址而不是用户名作为身 ...
- 十二 logging模块
一 日志级别 CRITICAL = 50 #FATAL = CRITICAL ERROR = 40 WARNING = 30 #WARN = WARNING INFO = 20 DEBUG = 10 ...
- Python: 下载底层由Python2转Python3环境更新手记
谨记录运行环境改变过程中所碰到的坑. 下载底层运行环境由Python2移至Python3所遇到的问题及处理方法: 1.所引的第三方组件,基本都有替代支持:msvcr90.dll不再需要,有则报错2.引 ...
- [leetcode]65. Valid Number 有效数值
Validate if a given string can be interpreted as a decimal number. Some examples:"0" => ...
- [原]Docker部署SuperMap8.1.1
摘要:本文主要实践在Docker上制作SuperMap(超图)V8.1.1镜像,文中将使用 docker commit 方式创新镜像(Dockerfile择机再做).本文中使用的宿主环境及镜像环境都是 ...
- Android开发中同时存在多个ListView的处理
在Android开发过程中,有的时候我们需要在一个页面中通过多个ListView展示不同的数据,让用户直观上感觉是一个ListView在变换着数据. 假设有两个ListView,listView1和L ...
- robotframework手机号随机产生脚本
首先,要导入使用库 random; ${phone} Evaluate random.choice(['139','188','185','136','158','151'])+"" ...
- [uboot] (第二章)uboot流程——uboot-spl编译流程
http://blog.csdn.net/ooonebook/article/details/52949584 以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为 ...
- 充分利用CPU多核的处理能力 innodb_read_io_threads和innodb_write_io_threads
https://book.2cto.com/201402/40300.html 在MySQL5.1.X版本中,innodb_file_io_threads参数默认是4,该参数在Linux系统上是不可更 ...
- MySQL InnoDB配置并发线程( innodb_thread_concurrency)
http://www.ywnds.com/?p=9821 一.thread_concurrency 首先,最重要的一点,这个参数已经在最新版本的MySQL中被移除了,官方最新5.7版本的doc上面对t ...