前言
一直以来,都是在windows系统上使用虚拟机。今天和树添聊天时发现,在linux系统上,没有图形界面,同样可以使用虚拟机,只不过操作方式变成了命令行。
本文,就研究一下在ubuntu16系统下使用virtualbox的方法。主要参考How to Install Oracle VirtualBox 5.2 on Ubuntu 17.10/16.04, Debian 9/8 和 VirtualBox官网下载页面
virtualbox安装
1、添加安装源
1 | sudo add-apt-repository "deb http://download.virtualbox.org/virtualbox/debian `lsb_release -cs` contrib" |
2、安装包签名密钥
1 | wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add - |
3、执行安装
1 | sudo apt-get update |
报错:
1 | virtualbox-5.2 is already the newest version (5.2.12-122591~Ubuntu~xenial). |
执行sudo apt-get -f install
,修复包依赖问题。
virtualbox使用
常用命令
vboxmanage -v
,查看版本。vboxmanage showvminfo "Windows XP"
,查看某一虚拟机的信息。vboxmanage startvm "Windows XP"
,开启虚拟机(指定name)。vboxmanage startvm 670e746d-abea-4ba6-ad02-2a3b043810a5
,开启虚拟机(指定UUID)。vboxmanage startvm ubuntu gui
,图形化界面启动(这是默认值)。vboxmanage startvm ubuntu headless
,命令行界面启动。vboxmanage list vms
,列出所有的虚拟机。vboxmanage list runningvms
,列出现在正在运行的虚拟机。vboxmanage list hostinfo
,列出宿主机的详细信息(CPU 内存 操作系统版本等)。vboxmanage list hostonlyifs
,列出系统的hostonly网络的信息。vboxmanage list dhcpservers
,DBCP服务器的信息。
创建虚拟机
很麻烦,就不实践了。具体用法参考VirtualBox命令行VBoxManage创建与管理虚拟机教程。
图形界面
我们发现,使用命令行操作virtualbox有很多不方便的地方,比如创建虚拟机就很麻烦。能不能在远程linux使用VirtualBox的时候,通过图形界面使用呢?答案是可以。
要远程使用桌面,首先需要安装vncserver,参考Ubuntu如何安装vncserver。
1、切换到rootsudo -i
2、安装xfce4apt-get install xfce4
xfce4不会安装太多软件,最终看到的界面只有一个灰色背景加上一个shell窗口。
3、安装xrdpapt-get -y install xrdp
4、安装vnc4serverapt-get -y install vnc4server
5、配置默认使用xface作为登录界面
1 | echo "xfce4-session" >~/.xsession |
5、启动vncservervncserver
,根据提示设置远程密码,默认放在/root/.vnc/passwd中,同时生成/root/.vnc/xstartup。
6、xstartup内容为:
1 |
|
7、启动vncservervncserver
8、本地打开vncviewer client,输入ip:5901
进行连接。连接成功后发现,桌面是灰色背景,桌面上只有一个shell。这就是传说中的twm界面。
9、启动virtualbox
在shell中,输入virtualbox
至此,就能愉快地使用virtualbox图形界面了。
10、关闭vncserver
1 | vncserver --list |
图形界面2
以上twm桌面,可以满足我们使用virtualbox的需求,在切换窗口时可以使用Alt+Tab快捷键。但是,这款桌面实在是简单的令人发指。右键鼠标啥也没有,快捷键只能切换窗口,哪怕有个可以打开terminal的快捷键,我也就接受了,然而并没有。所以,还得折腾下,搞个更好用的桌面,参考Ubuntu如何安装vncserver。
1、备份xstartupcp /root/.vnc/xstartup{,.bak}
2、vim /root/.vnc/xstartup
,修改如下:
1 |
|
3、安装gnomeapt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal
4、启动vncservervncserver
5、连接vncserver
这个桌面,已经比刚才好了很多,但是,看起来还是比较low。
6、安装ubuntu-desktop
1 | vncserver -kill :1 |
再次连接后,看到的就是正常的桌面了,nice。
7、修改窗口大小
vncserver默认的窗口大小为1024x768,使用时如果感觉窗口比较小,可以进行修改。vim /usr/bin/vncserver
,如下修改:
1 |
|
然后kill掉已经启动的vncserver,启动新的即可。
错误解决
在某次远程桌面连接时,提示too many security failures,解决办法参考vncserver too many security failures。
1、重置黑名单vncconfig -display :1 -set BlacklistTimeout=0 -set BlacklistThreshold=1000000
2、连接成功后还原黑名单vncconfig -display :1 -set BlacklistTimeout=600000000000 -set BlacklistThreshold=10
书签
Manage Virtualbox virtual machines under command line
How to run VirtualBox virtual machines from the command line