VirtualBox安装VBoxGuestAdditions增强功能

VirtualBox的增强功能VBoxGuestAdditions太酷啦!VirtualBox没装增强功能的时候实在是弱爆了!只能小窗口访问,并且总是要通过hostkey切换鼠标,非常麻烦。一开始我只是想要扩大虚拟机的分辨率,不想它总是那么小窗口不好用,then发现安装VBoxGuestAdditions可以解决好多问题~~


VirtualBox GuestAddition的功能(功能描述部分摘自互联网): 

1.鼠标集成: 不需要按下VirtualBox的HostKey(默认为右Ctrl)键,就可以从GuestOS中自动释放鼠标,从而无缝的在Host/Guest OS之间移动鼠标。GuestAddition中提供了一个GuestOS的鼠标驱动,可以与HostOS的鼠标驱动进行通讯,从而实现这一点。 

2.共享文件夹:可以在Host/Guest OS之间交换文件。通过在Host OS上设置一个文件夹并指定为VirtualBox的共享文件夹,就可以在GuestOS中以网络共享文件夹的形式访问,即使GuestOS没有网络也可以。 

3.更好的视频支持:VirtualBox的虚拟显卡只提供了最基本的视频特性,而GuestAddition中的显卡驱动提供了超高的分辨率和2D3D 视频加速。你可以任意调节虚拟机窗口的大小且GuestOS也会自动适应,就如同在GuestOS中设置了任意的分辨率的一样。

4.无缝窗口:这个功能很强大。未安装GuestAddition时,虚拟机窗口只能是一个独立的窗口,安装GuestAddition并启用无缝窗口模 式之后,GuestOS可以跳出虚拟机窗口并嵌入Host OS的桌面,就好像是Host OS的普通应用程序一样工作。

支持的GuestOS有:和<运行X Window的Linux、Solaris>。

无缝模式的开关快捷键:HostKey+L

注:VirtualBox默认的HostKey是右ctrl。

5.通用的Host/Guest 通讯通道:这个功能主要跟程序员有关。GuestAddition中的"Guest Properties(客户机属性)"提供了一个通用的基于字符串的机制,使用此机制可以在Host/Guest之间交换数据,从而控制或者监控 GuestOS。比如在Host OS上直接控制GuestOS的程序启动、运行、关闭等。

6.时间同步:因为某些原因,Host OS和Guest OS的系统时间可能不同步,虽然VirtualBox本身提供了同步功能,但GuestAddition的时间同步的效率和方式大大优于VirtualBox自身。 

7.共享剪贴板:也就是可以在Host/Guest OS之间复制粘贴啦。 

8.自动登录:可以使GuestOS自动登录,包括使用证书的情况下。


windows安装办法:

获取VBoxGuestAdditions有两种办法

一是从官网下载

http://download.virtualbox.org/virtualbox    选择版本号,就能找到相应的版本,例如 http://download.virtualbox.org/virtualbox/4.3.30/VBoxGuestAdditions_4.3.30.iso

获取之后在VBox设置里面将VBoxGuestAdditions_4.xxx.iso文件加载到虚拟机里的虚拟光驱(参考系统镜像加载方法),然后进入虚拟系统里,在里面打开虚拟光驱,运行光驱或者打开光驱直接运行文件VBoxLinuxAdditions.exe(可执行文件)进行安装,安装后重启就可以了。


二是直接在VBox里面下载,这种方法更加简单快捷

打开VBox管理器,点击菜单的“设备” => “安装增强功能”

就会自动下载并弹出安装提示

直接安装之后重启即可。


linux安装方法:

1 同样的,在 VirtualBox 中的 CentOS 7 虚拟机中,点击VBox菜单的“设备” => “安装增强功能”


此时,你会发现VBoxGuestAdditions已经下载在桌面了。它包含了安装 VirtualBox 客户端增强功能的组件。


2 安装编译内核的相关组件,在控制终端敲命令:(注意,这步一定要先用root账号登录,否则可能会安装不成功!)

yum install kernel-devel       --外置核心模块

yum install kernel-headers       --安装内核,编译内核,驱动必要的

yum install gcc       --编译器

yum install gcc-c++

yum install make    --自动编译源码的工具,写好makefile就可以方便编译


3 在安装完成后,做一个连接

ln -s /usr/src/kernels/2.6.18- 164.15.1.el5-i686 /usr/src/linux 

其中,加粗部分是内核版本,可通过 uname -a 命令查看

注意:一定要进行这此项操作,否则 VirtualBox 客户端增强功能在安装的过程中同样会报错。


4 安装 VirtualBox 客户端增强功能工具

右键查看桌面VBOXADDITIONS_4.xxx_59338 的属性,看其存放路径

然后进入该存放路径进行安装,例如:

cd /run/media/root/VBOXADDITIONS_4.xxx_59338 

sh ./VBoxLinuxAdditions.run 


!!!此时安装会报错,查了好久才查到原来是少了一个环境变量。。。

需先设置KERN_DIR环境变量以及更新系统所有软件 

yum update

Linux的环境变量存放在/etc/profile文件里面,在文件的最后面添加所需要的环境变量即可,如下:

#vim /etc/profile


KERN_DIR=/usr/src/kernels/2.6.32-431.20.5.el6.i686

export KERN_DIR


同样的,加粗部分是内核版本号,要根据自身系统版本修改。将这2行添加好以后,使用 :x 保存并退出

使用source命令来使变量立即生效,若不使用,必须重启之后环境变量才会生效

#source /etc/profile

执行该命令之后,环境变量立刻生效,可以使用命令 #echo $KERN_DIR 来查看刚刚设置的环境变量


THEN,就可以执行第4步,安装成功啦!!最后重启~~~


PS:设置主机和虚拟机可以双向复制文字,在虚拟机设置->常规->高级->共享粘贴板,选择”双向“


5. 设置共享文件夹  

重启完成在VirtualBox的菜单点击"设备" -> “共享文件夹”菜单

 


添加一个共享文件夹,最好使用英文名称,选择固定文件夹


6 挂载共享文件夹 

重新进入虚拟CentOs7,在命令行终端下输入: 

#mkdir /mnt/share         --设置新文件夹

#mount -t vboxsf vboxshare /mnt/share        --挂载文件夹,加粗部分是你前面添加的文件夹的名称,即将Windows下的vboxshare文件夹挂载到linux的/mnt/share文件夹,这样在linux中访问/mnt/share就能相当于访问vboxshare文件夹,实现了主机和虚拟机之间的文件共享

#cd /mnt/share  --进入文件夹

#ls -al      --查看是否挂载成功,若成功,可以看到vboxshare文件夹里的东西

 

如果挂载有报错 /sbin/mount.vboxsf: mounting failed with the error: No such device 

可能是没有载入内核模块 vboxsf ,先查看下: 

#lsmod | grep vboxsf 

如果没有结果返回,说明 vboxsf没有载入,执行 

#modprobe vboxsf 

  

设置开机自动挂载,网上的说法都是可以在/etc/fstab中添加一行

share /mnt/share vboxsf rw,gid=100,uid=1000,auto 0 0 

但是本人实践每次启动都挂接不上,重启还会进入到命令行界面,无法进入图形界面,后来发现提示是share:command not found 命令不支持,百度说要开启什么功能才能支持share命令,没细研究。


so,采用另一种方法,在系统启动时执行挂接脚本,在启动脚本文件中加入上面手动挂接的命令

#vim /etc/rc.d/rc.local 

mount -t vboxsf vboxshare /mnt/share

可以用source /etc/rc.d/rc.local 命令来看是否会报错

本人实践时一直挂载不成功,后来vim /etc/rc.d/rc.local 的时候发现有提示说要 chmod +x /etc/rc.d/rc.local ,即要为/etc/rc.d/rc.local 文件加上可执行权限,这样做之后就 source /etc/rc.d/rc.local 就没有报错了,重启也挂载成功了~~

 

7. 取消挂载

#umount -f /mnt/share


你可能感兴趣的:(virtualbox,linux,windows,centos,虚拟机,Linux,VirtualBox,CentOS)