用virtualBox搭建linux开发环境
0、修订记录
【2016-08-20】第一版
1、软件版本
windows: win7/win10
VirtualBox: VirtualBox-5.0.24-108355-Win
Ubuntu: ubuntu-16.04-desktop-amd64
2、开始安装ubuntu
Step1:
安装之前,需要在bios开启Virtualization Technology (VTx) 选项, 其目的是:可以安装64位linux操作系统,并且可以开启虚拟机多CPU配置。
机器不同,BIOS配置不同,有些机器默认是打开VTx选项的,无需此步。如果没有打开VTx,在BIOS打开即可。【譬如:Hp ProDesk 开机摁 F10 security ---> system security ---> virtualization technology】
Step2:
VirtualBox 点击新建,创建Ubuntu操作系统,如图1所示:
图1
创建虚拟硬盘时,建议选择VHD,如图2
图2
Step3:
点击启动,选择Ubuntu:ubuntu-16.04-desktop-amd64光盘文件开始安装。
3、网路配置
3.1 代理设置
一般来讲,如果是个人电脑,此时应该是可以上外网的,不用做任何代理设置。
如果是公司电脑,为了安全,很多公司用了代理,此时需要ubuntu配置代理才可以上外网,可以先用内网做测试(可以选择相应公司的主页)。
如果使用了代理,在Network设置中设置相应的代理即可:
图3
3.2 软件更新
在终端(CTRL+ALt+T)中输入apt-get update, 会发现软件更新很慢,这是用了ubuntu国外源的情况,我们可以改为国内的源,速度会快很多,以下方法任选一种。
Method1:
修改:/etc/apt/sources.list
图 4
【http://mirrors.163.com/.help/ubuntu.html】
Method2:
可以在软件更新中心选择国内的源,譬如aliyun
图 5
4、windows SSH登录虚拟机
4.1 安装SSH服务
通过Xshell, putty等工具在windows通过ssh登录ubuntu, 可以有2种方法,4.2与4.3分别介绍,建议采用4.2的方式。
不管通过哪种方法,都需要在ubuntu安装ssh服务。安装openssh即可。
安装openssh程序:
Step1 先检查是否安装了ssh
dpkg --list|grep ssh
发现其实Ubuntu 已经默认安装了客户端,如果没安装,用这个命令:
#sudo apt-get install openssh-client
Step2 安装服务端server程序
#sudo apt-get install openssh-server
Step3 重启SSH服务
#sudo /etc/init.d/ssh restart
【
启动ssh服务:
#sudo /etc/init.d/ssh start
停止ssh服务:
#sudo /etc/init.d/ssh stop
重启ssh服务:
#sudo /etc/init.d/ssh restart
】
4.2 ssh登录虚拟机方法1
此种方法通过虚拟机配置2个虚拟网卡的方式登录,此种方法的好处是,虚拟机可以通过samba共享目录给windows[参看5.2].
4.2.1 网卡配置
Step1: 为了可以使ubuntu上外网,同时windows通过ssh登录ubuntu, 需要配置2个虚拟网卡:
virtualBox ---> 管理 ---> 全局设定: 新增一块虚拟网卡。
图 6
在virtualBox的ubuntu设定页,选择网络,网卡1配置为NAT, 网卡2配置为 Host-Only (图 7 - 9) 【此时配置网卡时,关闭ubuntu】
图 7
图 8
图 9
Step 2: 重启ubuntu, 在ubuntu中配置网卡2 (Host-Only网卡)
Windows侧的host-only网卡默认设置(虚拟机创建时自动设置,无需手动设置)
图 10
Ubuntu需要手动设置,因为windows侧的网卡地址是 : 192.168.56.1
所以,需要将ubuntu的网卡2的地址设置到同一网段,譬如:192.168.56.116
图 11
【注意】有时候,发现这样配置后,网卡1(NAT)无法上网,这时需要把host-only网卡的gateway去掉。
图 12
4.2.2 登录方法
安装xshell等ssh登录工具,登录ubuntu虚拟机。
登陆时,采用地址 : 192.168.56.116 (SSH默认端口是22)
4.3 ssh登录虚拟机方法2
这种方法无需2个虚拟网卡,只需要1个虚拟网卡即可。这种方法ubuntu无法通过samba与windows共享文件夹,只可以通过mount的方式共享文件夹。
4.3.1 网卡设置
设置网卡1(NAT网卡)的端口转发:
图 13
4.3.2 登录方法
登录采用 127.0.0.1 2222 登录虚拟机
5、与windows共享文件夹
有2种共享方法,mount是把windows目录共享给ubuntu, samba是把ubuntu目录共享给windows. 有些代码的编译安装只有在ubuntu目录下才可以成功,创建命名管道(mkfifo)也只能在ubuntu目录下,因此,samba方式的共享目录是有必要的。一般情况下,建议采用mount方式,少许情况下,采用Samba方式。
5.1 mount方式共享
Step1: 安装virtualBox增强功能
图 14
Step2:设置共享文件夹
图 15
Step3:在ubuntu创建目录,mount共享文件夹到创建的目录。
譬如: 在 /mnt/ 目录创建 10_testSeq 文件夹,执行mount命令
mount -t vboxsf 10_testSeq /mnt/10_testSeq/
即可在ubuntu中看到windows共享的文件夹 F:\10_testSeq
5.2 samba方式共享
Step1:安装samba服务
$ sudo apt-get install samba
Step2: 在/etc/samba/smb.conf增加配置
[share]
comment = ubuntu share
browseable = no
path = /home/YOUR_USER_NAME
writeable = yes
guest ok = no
public = yes
writable = yes
create mask = 0644
Step3 : 重启samba服务
/etc/init.d/samba restart
【
启动Samba服务器只需执行如下命令:
#sudo /etc/init.d/samba start
关闭Samba服务器:
#sudo /etc/init.d/samba stop
重新启动Samba服务器:
#sudo /etc/init.d/samba restart
】
Step4: ubuntu开启共享目录权限:
chmod 777 /home/YOUR_USER_NAME
备注:其中YOUR_USER_NAME可以是任意创建的目录,只需与Step2中对应即可。
Step5: 在windows中访问共享文件夹
\\192.168.56.116\share
备注:经常访问此目录的话,可以设置快捷方式或者添加网络位置。
6、软件安装
6.1 vim安装
ubuntu自带的vim会出现上下左右键混乱,需要重新安装vim
apt-get remove vim-common
apt-get install vim
6.2 python pip
使用python开发小工具的话,需要借助很多python库,python有专门的软件管理工具pip, 安装pip如下:
apt-get install python-pip
pip install --upgrade pip