嵌入式开发基础环境搭建

采用的Linux是Debian6,虚拟机采用VirtualBox。

用VirtualBox安装Debian的方法,可以参见我的另一篇博客http://www.cnblogs.com/pengdonglin137/p/3343135.html,这里仅补充说明一下。

1、修改VirtualBox的虚拟机存放路径,这样的好处是:因为Debian的虚拟机默认存在C盘下,当重装系统的时候会将虚拟机删掉。所以需要修改,修改后,新建的虚拟硬盘的保存路径也跟着变为相应虚拟机的路径,这样便于管理。修改方法如下:

image

 

 

image

 

image

2、分区方案如下:

建立两块虚拟硬盘,分别存放/home,/。

给/home分50GB,给/分30GB。

3、在安装的时候应该把网线断开

image

 

image

 

 

 

image

 

4、当开启虚拟后发现主机的声音好像变小了,解决方法:

image

image

 

image

5、安装好后,将光盘镜像退出

image

 

6、为了提高软件的安装速度,可以将虚拟机的的eth0设置为桥接,并修改interface文件。(也可以用默认的NAT)

将来在设置虚拟网卡时需要注意:最好将设置成NAT的虚拟网卡放在设置成Host-Only网卡的前面,否则如果将来虚拟机要联网的话,需要将Host-Only虚拟网卡先关闭。

一般我是:利用桥接的虚拟网卡实现与开发板通信,利用NAT的虚拟网卡实现虚拟机的上网功能,利用Host-Only实现虚拟机和主机的双向通信(将来要使用samba实现双向通信,不管是Windows装Linux的虚拟机,还是Linux装windows的虚拟机,都可以在Linux上安装samba服务实现双向通信)。

image

由于debian6安装好后,没有sudo命令,修改interface文件需要先切换到root用户。

image

修改成如下内容(如果选择的是NAT方式,也可以修改成如下内容)

image

7、更新软件源

image

 

手动输入如下内容(将原来的内容删除,或者将sources.list备份一下):

deb http://mirrors.163.com/debian squeeze main non-free contrib 
deb http://mirrors.163.com/debian squeeze-proposed-updates main contrib non-free 
deb http://mirrors.163.com/debian-security squeeze/updates main contrib non-free 
deb-src http://mirrors.163.com/debian squeeze main non-free contrib 
deb-src http://mirrors.163.com/debian squeeze-proposed-updates main contrib non-free 
deb-src http://mirrors.163.com/debian-security squeeze/updates main contrib non-free

 

重新启动网络

image

image

 

更新软件源

image

 

8、安装VirtualBox增强工

image

执行如下命令(以root身份):

  apt-get install build-essential

  apt-get install dkms

  apt-get install virtualbox-guest-dkms

  apt-get install linux-headers-`uname -r`

  mount  /dev/cdrom  /mnt

  cd /mnt

  ./VBoxLinuxAdditions.run

然后关闭虚拟机:shutdown –h now

 

9、退出光盘镜像

image

 

10、设置共享剪贴板和拖放

启动虚拟机,设置共享剪贴板和拖放

image

image

 

11、添加sudo

apt-get install sudo
chmod u+w /etc/sudoers //给此文件增加写入权限
vi /etc/sudoers找到root ALL=(ALL) ALL一行,在下一行添加
pengdl ALL=(ALL) ALL 将pengdl换成你的用户名
然后更改文件权限,
chmod 0440 /etc/sudoers不做这一步你的普通用户就无法使用sudo命令.
这样你再以普通用户身份使用sudo命令 时候就可以了.

12、这里我们不设置共享文件夹了,而是采用samba服务器实现虚拟机与主机之间的通信。

 

        安装samba:apt-get install samba

 

 

在实际开发中,我的做法是:采用samba实现虚拟机和主机的通信,这样需要给虚拟机添加两块虚拟网卡,一块设置成桥接,目的是为了跟开发板通信;另一块设置成Host-Only,目的是为了实现在windows下利用SecureCRT或者Putty登陆虚拟机,这样的效率高一些。关于虚拟机的网络连接方式可以参见:

  http://www.cnblogs.com/pengdonglin137/p/3323663.html   

  http://www.cnblogs.com/pengdonglin137/p/3343077.html

   http://www.cnblogs.com/pengdonglin137/p/3343034.html

 

sudo vi /etc/samba/smb.conf

在最后添加如下代码:

[home]
        path=/home/pengdl
        browseable=yes
        writeable=yes
        valid user=pengdl

注: 上面的[]中的内容“home”就是将来在windows下映射网络驱动器的时候输的名字。

然后执行如下命令
image

即可。

关闭虚拟机,我们来设置网络:

目前先进行如下设置,(以后可以再根据需要进行设置)

将eth0设置成桥接,将eth1设置成Host-Only连接方式。

在windows下的网络管理中可以看到:

image

看一下VirtualBox Host-Only Network的参数:

image

 

可以看到它的ip是192.168.56.1,我们可以将它设置的更特殊一些,如设置成88.88.88.88,只需要将eth1的网段与他设置在一个网段即可。(建议:最好使用默认值,即192.168.56.1,用88.88.88.88在某些时候会出现问题,而且使用中发现使用默认值,在用SSH连接虚拟机时,速度比较快)

image

eth0:

image

 

eth1:

image

 

启动虚拟机,修改interface文件,修改成如下内容(也可以将eth0也设置成静态IP):

image

 

 

建议:使用Host-Only连接方式的eth1,最好使用默认的网段,在本例中是56网段,同时建议eth1的网关地址不填写,但是子网掩码是必须填写的。

 

重启网络:sudo /etc/init.d/networking restart

root@debian:/home/pengdl# ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:f8:fe:e2 
          inet addr:192.168.1.23  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fef8:fee2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:15400 errors:0 dropped:0 overruns:0 frame:0
          TX packets:298 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1200470 (1.1 MiB)  TX bytes:27880 (27.2 KiB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:20:09:cc 
          inet addr:88.88.88.66  Bcast:88.88.88.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe20:9cc/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:59 errors:0 dropped:0 overruns:0 frame:0
          TX packets:27 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:8104 (7.9 KiB)  TX bytes:2924 (2.8 KiB)

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:560 (560.0 B)  TX bytes:560 (560.0 B)

 

接下来,我们在windows下映射一下网络驱动器。

image

 

输入地址,其中的share就是上面谈到的home。

image

 注意:如果无法连接,在主机或者虚拟机中ping对方,如果ping失败,就是Win7的防火墙的问题,需要先关闭Win7的防火墙

输入用户名和密码

image

 

在windows下可以看到已经映射成功的网络驱动器,双击可以打开。

image

可以看到其中就是/home/pengdl下的内容。(为什么是/home/pengdl,因为在samba配置文件中path选项就是该值。)

image

 

13、下面就可以安装常用的软件包了,可以参见:

http://www.cnblogs.com/pengdonglin137/p/3248204.html

https://files.cnblogs.com/pengdonglin137/ubuntu-12.04%E5%B5%8C%E5%85%A5%E5%BC%8F%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA.pdf

 

14、使用SecureCRT登陆虚拟机

添加88.88.88.66,即虚拟机的eth1的IP

image

选择88.88.88.66,然后点击connect,开始连接

image

连接成功!!

image

 

15、当基本的环境配置好之后就可以对虚拟机进行备份了,在备份的时候最好关闭虚拟机。

image

image

image

 

完!!!

 

 


 

 

 

 

 

 

 

 

posted @ 2013-10-13 16:29  摩斯电码  阅读(2179)  评论(0编辑  收藏  举报