一、如何配置VirtualBox中的虚拟机的串口
方法/步骤
1
右击XP系统点击设置出现设置界面
步骤阅读
2
首先我们先了解串口配置的方式
可以通过VirtualBox的图形界面或者命令行工具VBoxManage去配置对应的串口。
图形界面:就是上述截图中的虚拟机配置->串口->端口1,直接去设置即可;
步骤阅读
3
串口数目的限制
每个虚拟机,最多可以支持2个串口,即上述截图中的,端口1,和端口2.
由于多数人都用不到串口,所以默认情况下,两个端口都是没有开启的。
4
配置串口的步骤
即,用哪个COM。
默认情况下,有4种,分别是:
COM1: I/O base 0x3F8, IRQ 4
COM2: I/O base 0x2F8, IRQ 3
COM3: I/O base 0x3E8, IRQ 4
COM4: I/O base 0x2E8, IRQ 3
对应着,图形界面中的,端口编号:
如下图所示
步骤阅读
5
设置端口的类型(模式)
目前支持4种模式:
步骤阅读
6
如果我们设置成未连接,那么虚拟机内看到就是,有串口,但是物理上没有连接。
步骤阅读
7
下拉选项找到主机管道
把串口设置成主机上的一个管道pipe(pipe是个软件上的概念)
Windows系统中:名字必须为\\.\pipe\<name>(name表示一个名字可以随便)
Mac/Linux/Soloris:本地域内的一个socket(local domain socket)。同时,需要保证虚拟机有对应的访问权限。其中比较常用的是/tmp,然后再用对应的工具,比如socat去管理和操作
步骤阅读
8
向下拉找到主机设备
主机设备说白了就是,和你主机,对应着真实的电脑中的串口。
比如你电脑中有一个COM1,那么此处就是设置为对应的主机设备,并且对应的端口写成
步骤阅读
9
继续下拉找到裸文件
裸文件将串口输出,放到一个文件里面去。
具体设置,就很简单了,比如我在对应的虚拟机磁盘.vdi路径下,随便创建一个文件:
D:\tmp\tmp_dev_root\virutalbox\xp\deepin_xp_com1.txt
然后再去设置为裸文件
二、virtualbox 如何导出
Virtual Box上虚拟机的导入和导出
Virtualbox提供了导出和导入虚拟机的功能。由于近期我发现Virtualbox虚拟机所在的分区空间紧张,所以打算把虚拟机转移到另外一个有空间的分区。体验了一下Virtualbox导出和导入功能,在此和大家分享一下经验。
首先,介绍一下在什么情况下需要导出和导入虚拟机。
1、有时候你需要和别人共享你的Virutalbox虚拟机,这样可以省去别人安装虚拟机和配置虚拟机的过程,节省大量时间。比如在项目组搭建开发环境的时候。
2、当你发现你虚拟机所在的分区没有足够的空间了,你需要把虚拟机转移到另外一个分区上面。
那么怎么样导出虚拟机呢?这个操作比较简单,选择Virtualbox菜单栏上面的“控制”菜单项-“导出虚拟电脑…”,然后根据选项,保存导出的数据就好了。根据文档描述,导出的数据是标准的格式,理论上可以和其他的虚拟机(比如VMWare等)共享。另外需要注意,导出的数据比较大,请确保你有足够的空间存放导出数据。
导入数据同样是在菜单栏下面选“导入虚拟电脑…”。但是在我的Windows平台上面出现了问题,我的Vbox版本是3.2.8。当根据提示选择了需要导入的虚拟机数据之后,出现如下对话框:
根据这个对话框的提示和文档中的描述,双击对应的项目就可以修改导入虚拟机的设置。我现在需要修改的是虚拟硬盘的位置,然后点击完成。最后发现导入虚拟机的虚拟硬盘还是位于默认目录下面,我的Virtualbox默认路径是C:\Users\Simon\.VirtualBox\HardDisks\。我觉得这应该是Virtualbox的一个问题。
为了解决这个问题,我只好修改Virtualbox的虚拟硬盘默认路径,选择Virtualbox菜单栏“控制”-“全局设定…”。全局设定对话框中选择“常规”页。界面如下:
修改“默认虚拟硬盘位置”项目为你导入虚拟机的目标位置。
再次根据上述描述导入虚拟机,将会发现顺利完成,并且引导起来和原来的系统一模一样。如果这步你出现问题,请你根据提示检查Virtualbox数据目录下的VirtualBox.xml(我的系统中这个文件位于:C:\Users\Simon\.VirtualBox\)。这个XML文件还是比较容易理解的,稍微修改一下,然后重启Vbox即可修复。
三、怎么在virtualbox上安装ubuntu
VirtualBox中安装Ubuntu12.04/Ubuntu14.04虚拟机
NOTE:一开始安装的Ubuntu12.04,后来又重新安装了14.04。截图基本使用了安装12.04时的截图,后来安装14.04时又补充了几张。该安装过程对Ubuntu12.04和14.04都是适用的。
1.选择版本
1.1 Ubuntu桌面版与服务器版的区别
桌面版与服务器版,只要发布版本号一致,这两者从核心来说也就是相同的,唯一的差别在于它们的预期用途。桌面版面向个人电脑使用者,可以进行文字处理、网页浏览、多媒体播放和玩游戏。本质上说,这是一个为普通用户所定制的多用途操作系统。另一方面,服务器版旨在充当web服务器,可用来托管文件、网页及相似内容。【1】
个人电脑上必备的组成部分是GUI(图形用户界面)。Ubuntu的桌面版默认带有Gnome GUI,不过,如果你有需要,也可转换为KDE或X。而服务器版是不安装GUI的。除了日常维护,服务器不打算用于本地交互,因而GUI不仅没有存在的必要,而且还会消耗服务器多余的资源。对于其他软件,如办公软件、媒体播放软件、浏览器等等,道理也是一样。在服务器版上这些统统找不到。
由于是面向服务器的,服务器版Ubuntu包含了所有你需要启动托管站点的软件。LAMP(Linux、Apache、MySQL和PHP),列出了与web服务器相关的软件。除非你自行安装,否则这些在桌面版上是找不到的。
以上区别并非一成不变,通过安装和卸载软件包,你也可以将桌面版定制为服务器版,反之亦然。多数想装服务器的人仍然需要GUI的便利,那么可以从任何一个版本起步,然后只需安装GUI或LAMP即可。
总结:
1.桌面版为个人电脑所配置,而服务器版适用于web服务器。
2.桌面版预装了GUI,而服务器版没有。
3.桌面版已经安装了许多服务器版没有的软件。
4.桌面版缺少Apache、MySQL和PHP,而这些在服务器版中是标准配置。
所以,我们还是选择桌面版吧。
1.2 i386 vs amd64
在Ubuntu官网,你如果下载32位的,那么ISO文件是以i386.iso结尾。如果是下载64位的,那么ISO文件是以amd64.iso结尾。
i386是x86系列的32位处理器。
amd64是64位处理器。intel有自家的64位的,但不向下兼容,64位以amd64最先推出,习惯称为amd64。
2安装过程
1.点击new,弹出一个创建新虚拟机的窗口。
2.给虚拟机分配内存大小。
分配给VM的内存只有在加电启动VM的时候才会被分分配,不启动的时候是不会被分配的。
3.创建一个虚拟硬盘文件。
4.选择VDI格式,这是VirtualBox自己的格式。
5.虚拟硬盘文件的类型:选择动态分配。
6.选择磁盘文件存放的位置,和磁盘的最大容量。
默认存放在“C:\Users\xxx\VirtualBox VMs\ubuntu_14_04”下,为不占用C盘空间,可以将其移到盘新建的文件夹下。
(NOTE:关于磁盘的最大容量,后来安装Ubuntu14.04的时候分配了32G,但由于没有重新截图,因此截图显示的仍然是20G。)
7.虚拟磁盘的Summary信息
8.整个创建过程的Summary信息。
9.点击Create后,会回到VirtualBox的主窗口。
10.修改启动顺序:去掉软驱,硬盘放在光驱前面
11.插入光盘映像到虚拟电脑
12.点击OK后,回到主窗口
13.点击Start,开始安装
(1)选择语言:English
(2)点击 Install Ubuntu。
14. Prepare to install Ubuntu
保持默认选项,Continue。
15. Install Type
选择“其它选项(Something else)”,自定义手动分区。
16.下面就是最重要的分区了。
(1)点击“New Partition Table...”,此时会弹出一个对话框,询问你是否将一整个磁盘创建为一个空分区,选Continue。
(2)这时,一个20G的free space就会被创建出来了。
17.点“Add”,添加磁盘。
将鼠标点到“free space”上,然后再点击“Add”。
参考鸟哥的Linux私房菜的做法【2】,做如下的分区:
(这里按照32G的硬盘空间大小来分配的。)
这里有2点需要注意:
a.如果将/boot单独分区,务必让该分割槽在整颗硬盘的最前面部分。因此,我们针对/boot就选择“Primary”,使其为主分区。,而"/"分区不必是主分区。
b.分区时不能参照【2】中给出的分区顺序:
"/"分区(逻辑)->"/boot"分区(主分区)->"swap"分区(逻辑)->"/home"分区(逻辑)
因为Ubuntu中不会主动调整主分区的位置到最前面。这样划分分区后,最后剩下的 free space硬盘空间会显示为不可用,没法再继续分区了。
Ubuntu中应该按照先创建“主分区”,再创建“逻辑分区”的步骤,而且一般将swap分区放于最后,因此,分区的顺序应当为:
"/boot"分区(主分区)->"/"分区(逻辑)->"/home"分区(逻辑)->"swap"分区(逻辑)
(1)/boot分割槽
分配102M空间。(填入100M或101M的话,最终分配99M,所以这里填入102M,系统最终会给根目录分配100M)
(2)根目录(/)的分割槽
根目录分配10001M的大小
(3)/home目录的分割槽
分配10001M空间
(4)内存置换空间(swap)
分配2002M空间(一般为分配内存大小的1.5-2倍)
因为swap是内存置换空间,因此不需要有挂载点。所以,请如同下图所示,在『档案系统类型』处挑选为『swap』吧!
(5)最终的分配结果如图所示。
最后还剩余12253M留作以后作练习磁盘操作的命令使用。
分区完成后,点击Install Now,开始安装系统。
可以看到,按照"/boot"分区(主分区)->"/"分区(逻辑)->"/home"分区(逻辑)->"swap"分区(逻辑)的顺序创建分区后,sda的命名顺序是:sda1-> sda5-> sda6-> sda7。
如果按照"/"分区(逻辑)->"/boot"分区(主分区)->"swap"分区(逻辑)->"/home"分区(逻辑)的顺序创建分区,sda的命名顺序会是:sda5-> sda2-> sda3-> sda4。最后剩下的 free space硬盘空间会显示为不可用,没法再继续分区了。
18.开始安装后,地点选择“Shanghai”
19.键盘布局选择“中文”。
20.然后输入计算机名,并创建一个用户名。
21.此时开始安装系统了。
22.安装完成后,需要重启系统。注意需要点击一下回车键,才能完成重启。
23.激活root帐户
(1)Ubuntu 12.04安装完成后,系统默认的Root账号是关闭的。
这主要是为了保护系统的安全性,但有些时候为了安装软件或进行其它操作时需要获得Root权限,就得使用Root账号。
首先需要打开超级终端:Ctrl+ Alt+ T快捷键打开超级终端
然后输入sudo passwd root
系统会提示你首先输入当前用户的密码,然后提示你为root账户输入新密码,并再输入一次确认。
(2)root用户和普通用户之间的切换
普通用户切换到root用户:执行sudo root即可,它会提示你输入root的密码。
Root用户切换回普通用户,有3种方法: su XXX(XXX是你自己安装时候的用户名),或是直接输入exit,也可Ctrl+D组合键退出。
24.如何以root用户登录?
环境安装好后,你重启系统时只有2个用户可供选择:安装系统时设置的用户,和一个Guest用户,没法使用root用户登录。然而只有root用户才有权限设置、安装增强功能。所以我们需要把root用户调出来。
(1)一开始参照的是【4】中的方法:
由于 ubuntu 12.04的登录器改为 lightdm,已经把 root用户给屏蔽了,需要将登录器换成 gdm,才可以使用 other选项。
安装 gdm: sudo apt-get install gdm
执行完后,最终会弹出如下对话框,选择gdm。(如果没有自动弹出如下对话框,执行 sudo dpkg-reconfigure gdm,这时将会弹出如下对话框,将登录管理器修改为 gdm,)
(2)但上面【4】的方案问题很大,最后改用【5】中的方案。
但【5】中步骤中 vi/etc/lightdm/lightdm.conf使用的vi编辑器。但vi编辑器的上下左右键不起作用(按向上键会打出字母D),经查资料【6】,只有在Ubuntu下才会出现这种状况,需要安装vim。
(3)安装vim:
sudo apt-get install vim
确保虚拟机能上网。因为apt-get需要root权限,所以加上sudo,然后提示输入当前用户的密码。当然先切换到root用户,然后直接执行 apt-get install vim也可以。
(4)安装完成后,按照【5】的方案设置:
a.切换到root登陆,
su root
b.输入vim/etc/lightdm/lightdm.conf
Ubuntu14.04中的位置换为【7】:/usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
c.编辑文件。
首先,使用向下按键将光标移动到最后一行。
然后,键入命令"o":在当前行之下新开一行。
然后,增加如下2行:
# manually input user when login, so root can be input
greeter-show-manual-login=true
# disable guest user
allow-guest=false
然后,编辑完后按ESC键,按:w是保存不退出,按:wq是保存退出,按:q是没有对文件进行编辑的情况下退出,按:q!是对已编辑过的文件不保存退出。这里,按:wq保存退出。修改后的文件为:
[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
# manually input user when login, so root can be input
greeter-show-manual-login=true
# disable guest user
allow-guest=false
d.重启登陆即可。
shutdown-h now现在立即关机
shutdown-r now现在立即重启
shutdown-r+3三分钟后重启
e.重启之后,点击Login,输入用户名:root。回车后,再输入密码。即可登录进系统。
Ctrl+ Alt+ T快捷键打开超级终端。此时可以看到界面提示符显示为root用户。
25.安装增强功能
25.1桌面版安装增强功能
Devices->Install Guest Additions安装增强功能。但总提示安装增强功能失败,总提示强制释放。这是因为虚拟光驱里面已经有光盘(iso),而且正在使用中无法umount,导致addition.iso无法挂载,关闭虚拟机,在虚拟机管理界面释放虚拟光盘,。
然后启动虚拟机进入Ubuntu,重启之后,点击Login,输入用户名:root。回车后,再输入密码。即可登录进系统。再选择安装增强功能。
但安装的过程中出错,错误信息为:
Verifying archive integrity... All good.
Uncompressing VirtualBox 3.2.6 Guest Additions for Linux........
VirtualBox Guest Additions installer
Removing installed version 3.2.6 of VirtualBox Guest Additions...
Building the VirtualBox Guest Additions kernel modules
Building the main Guest Additions module...fail.
Installing the Window System drivers
Warning: unknown version of the X Window System installed. Not installing
X Window System drivers.
这是由于VirtualBox的版本太老导致的【8】。我的VirtualBox版本为:4.1.18。
需要下载最新的4.3.2版本的VirutalBox和VirtualBox Extension Pack。覆盖安装。
25.2 Server版安装增强功能
参考:Virtualbox Ubuntu Server 14.04安装guest additions()
25.3 Update:安装增强功能。
20160303:后来经验证发现,没有必要进行“24.如何以root用户登录?”这一步骤操作。因为可以先将命令行切换到root用户,然后在命令行下执行增强功能的安装。参考:virtual box安装增强功能(Ubuntu10.04)()
(1)首先命令行切换到root用户(su root),
(2)点击Devices->Install Guest Additions,
(3)然后执行`mount`命令,看增强功能包挂载到了哪个目录下(比如在/media/VBOXADDITIONS_4.0.4_69518/目录下),
(4)然后切换到该目录下(`cd/media/VBOXADDITIONS_4.0.4_69518/`);
(5)在该目录下找到VBoxLinuxAdditions.run文件,执行该文件(./VBoxLinuxAdditions.run)。
(6)执行完后,重启系统。
26.升级VirtualBox版本
升级VirtualBox版本很简单,一路Next即可完成安装。此时你如果“Start”虚拟机的话,它会提示你如下信息:
"Implementation of the USB 2.0 controller not found!
The device will be disabled. You can ignore this warning but there will be no USB 2.0 support in your VM. To fix this issue, either install the'Oracle VM VirtualBox Extension Pack' or disable USB 2.0 support in the VM settings"
这是由于没安装对应版本的VirtualBox Extension Pack造成的【9】。安装4.3.2版对应版本的VirtualBox Extension Pack即可。
打开VirtualBox程序,File->Preferences->选择Extensions选项。
点击“Remove Package”将以前的4.1.18版的VirtualBox Extension Pack删掉,然后点击“Add Package”,选择刚下载的4.3.2版的VirtualBox Extension Pack。按确定后它会自动安装。安装完毕就可以了。
27.继续安装增强功能。
此时,启动Ubuntu虚拟机。注意:在启动虚拟机之前,先打开Ubuntu虚拟机的Settings,选择“Storage”,将之前加载的虚拟镜像移除。然后再启动Ubuntu虚拟机。
启动虚拟机后,选择“Devices”菜单->选择“Insert Guest Additions CD Images”选项,它会提示你是否安装增强功能。点击“Run”,会自动安装。安装成功后,会显示如下的信息:
28.设定与Host OS共享目录
选择“Devices”->“Share Folder Settings”->点击最右面的“+”按钮,添加一个共享
29.重启Ubuntu,完成安装和设定
设定完成后,重启Ubuntu,这次你可以发现,启动后的Ubuntu的屏幕大小和分辨率变大了,和Host OS一样。表明增强功能安装成功。
另外,/media目录可以访问Host OS的D盘了,表明设定共享成功。
29.1设置共享 Updated:
后来发现使用普通用户登录Ubuntu后,所设置的共享目录无法访问,提示权限不够。下面是另外一种设置办法。
a.把要共享的文件夹挂载到虚拟机某一个文件上【10】
(1)首先需要保证VirtualBox增强功能已安装完成,因为后面的 vboxsf是增强功能中提供的。
(2)首先在mnt下创建一个文件夹,作为挂载的目标文件夹,然后执行 sudo mount-t vboxsf共享文件夹的名字虚拟机的挂载点
sudo mkdir/mnt/shared
sudo mount-t vboxsf F_DRIVE/mnt/shared/
之后进入/mnt/shared,可以发现共享文件夹下的文件可以复制了。
注意:共享文件夹的名字不要与挂载点的名字相同,比如上面,F_DRIVE与mnt下的shared文件夹不能相同。否则会出现如下错误:
/sbin/mount.vboxsf: mounting failed with the error: Protocol error
(3)卸载命令
sudo umount-f/mnt/shared
(4)之后每次要用的时候,都需要手动挂载,sudo mount-t vboxsf F_DRIVE/mnt/shared/
这样太麻烦了,有没有自动挂载的方法?有的。在/etc/fstab的最后添加一项【11】:
F_DRIVE/mnt/shared vboxsf rw,gid=1001000,uid=1000,auto 0 0
然后重启系统。
UPDATED:
(1)上面的groupid=100是错的,应该为1000.修改为1000后,重启并验证,发现不起作用。
(2)修改/etc/fstab的方法没起作用的可能原因以及解决方法:The solution I found was to force the vboxsf module to be loaded early, before the mounting of file systems. Just add vboxsf on a line of its own in/etc/modules.【13】
修改后的/etc/modules文件为:
#/etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with"#" are ignored.
lp
rtc
vboxsf
修改后重启系统,仍然不能正常工作。
(3)继续查资料,有说可能跟当前用户没有添加到vboxsf用户组中有关【14】。
首先查看用户组,发现当前用户确实没在vboxsf中。
cat/etc/group
->result:
vboxsf:x:1001:
然后将当前用户添加到用户组中:
sudo usermod-a-G vboxsf leige
再次检查,发现已将当前用户添加到用户组中了。