【技术贴】我和虚拟机不得不说的事儿

来源:互联网 发布:mac disk0s1 编辑:程序博客网 时间:2024/06/05 21:18

         对于涉及 LINUX 平台开的人而言,不接触一下虚拟机是很不靠谱的一件事情。以前因为用cygwin开发,所以还会少接触一些,现在也是由于工作需要,不用也是不行的啦。
         目前,对于嵌入式linux开发的环境,基本上是在Windows的环境中写代码,之后放到linux服务器上用交叉编译器编译,之后再把编译生成的bin文件再烧写到要开发的设备上去。其中,linux服务器有可以是一台专用的PC,但是,如果能用虚拟机的话,只要用一台电脑就可以在在一台电脑上完成代码的编写、编译了。

         经过几次的努力,今天终于搭建好了基本的开发环境。

        1 安装虚拟机;

        2 安装linux系统到虚拟机;

        3 linux访问windows文件;

        4 Windows访问linux文件。

 

        1 安装虚拟机

         虚拟机采用 VirtualBox  v4.2.4  ,可能有人更喜欢用VMware Workstation吧。但是,别忘了,那是收费软件。我不想用盗版,能不用就尽量不用吧,何况VirtualBox也不错。

         安装完VirtualBox之后,再安装一下VirtualBox 4.2.4 Oracle VM VirtualBox Extension Pack。这个后面都是要用的。(网址:https://www.virtualbox.org/wiki/Downloads)

        2 安装linux系统到虚拟机;

        linux的版本选用 ubuntu 12.10,这个没有限制了,各有所好。我是因为ubuntu下载下来比较小,只要700MB左右,相对于动不动就几G的系统来说,起码在大小上显得利索一些。

        3 linux访问windows文件;

             这个一般是用virtualBox的“共享文件夹”来实现的吧。好像是要先安装一个东东才能用以前用过,现在忘了,不过,我们还有BAIDU。

 

环境:主机操作系统是Windows XP,虚拟机是Ubuntu 8.10,虚拟机是VirtualBox 2.1.0。

1. 安装增强功能包(Guest Additions)

安装好Ubuntu 8.10后,运行Ubuntu并登录。然后在VirtualBox的菜单里选择"设备(Devices)" -> "安装增强功能包(Install Guest Additions)"。

你会发现在Ubuntu桌面上多出一个光盘图标,这张光盘默认被自动加载到了文件夹/media/cdom0。进入命令行终端,输入:

cd /media/cdom0

sudo ./VboxLinuxAdditions.run

开始安装工具包。安装完毕后会提示要重启Ubuntu。

2. 设置共享文件夹

重启完成后点击"设备(Devices)" -> 共享文件夹(Shared Folders)菜单,添加一个共享文件夹,选项固定和临时是指该文件夹是否是持久的。共享名可以任取一个自己喜欢的,比如"gongxiang",尽量使用英文名称。

3. 挂载共享文件夹

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

sudo mkdir /mnt/shared

sudo mount -t vboxsf gongxiang /mnt/shared

其中"gongxiang"是之前创建的共享文件夹的名字。OK,现在Ubuntu和主机可以互传文件了。

假如您不想每一次都手动挂载,可以在/etc/fstab中添加一项

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

这样就能够自动挂载了。

4. 卸载的话使用下面的命令:

sudo umount -f /mnt/shared

注意:

共享文件夹的名称千万不要和挂载点的名称相同。比如,上面的挂载点是/mnt/shared,如果共享文件夹的名字也是shared的话,在挂载的时候就会出现如下的错误信息(看http://www.virtualbox.org/ticket/2265):

/sbin/mount.vboxsf: mounting failed with the error: Protocol error

原因分析可以看Tips on running Sun Virtualbox的Shared Folder on a Linux Guest节。

本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2009-01/18147.htm

 

        4 Windows访问linux文件。

        用samba服务器。

        (1)在linux虚拟机上先安装一下samba软件;

           这个很多网站上都有写了,我就COPY一份来吧。

一. Ubuntu samba配置的安装:

sudo apt-get install samba smbfs smbclient                 // 在安装smbfs时会出错,我这里就安装了出错后推荐的那个就好了。

二. 创建共享目录:

mkdir /home/komy/share
sodu chmod 777 /home/komy/share

三. 创建Ubuntu Samba配置文件:

1. 保存现有的配置文件
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
2. 修改现配置文件
sudo gedit /etc/samba/smb.conf
在smb.conf最后添加
[share]
path = /home/komy/share
available = yes
browsealbe = yes
public = yes
writable = yes

其实,更为简单的是在ubuntu下右击文件夹属性,在共享里设置共享,但实质上系统更改了smb.conf文件.

四. 创建Ubuntu samba帐户

sudo touch /etc/samba/smbpasswd                      // 我觉得可先用 useradd 加一个用户吧,然后再用smbpasswd 设置一下samba的密码
sudo smbpasswd -a komy              #komy必须为系统中存在的账户

然后会要求你输入samba帐户的密码

如果没有第四步,当你登录时会提示 session setup failed: NT_STATUS_LOGON_FAILURE]

五. 重启Ubuntu samba服务器

sudo /etc/init.d/samba restart

(来源于:http://www.cnblogs.com/php5/archive/2010/10/30/1865191.html)

        (2)网络设备成桥接模式。并修改一下linux虚拟机的IP与Windows IP 位于同一网段;

          这是我搞了很久都知道的东东。默认虚拟机是用NAT的模式设置linux的网络的。

        (3)先ping一下,如能双方都能ping通的话,那么恭喜你,快成功了。在Windows上“映射网络驱动器”,写上虚拟机的IP地址和共享文件夹名。开始访问咯。

         

               写了一些,希望对大家有帮助,同时也记录一下自己。