嵌入式开发基础环境搭建
采用的Linux是Debian6,虚拟机采用VirtualBox。
用VirtualBox安装Debian的方法,可以参见我的另一篇博客http://www.cnblogs.com/pengdonglin137/p/3343135.html,这里仅补充说明一下。
1、修改VirtualBox的虚拟机存放路径,这样的好处是:因为Debian的虚拟机默认存在C盘下,当重装系统的时候会将虚拟机删掉。所以需要修改,修改后,新建的虚拟硬盘的保存路径也跟着变为相应虚拟机的路径,这样便于管理。修改方法如下:
2、分区方案如下:
建立两块虚拟硬盘,分别存放/home,/。
给/home分50GB,给/分30GB。
3、在安装的时候应该把网线断开
4、当开启虚拟后发现主机的声音好像变小了,解决方法:
5、安装好后,将光盘镜像退出
6、为了提高软件的安装速度,可以将虚拟机的的eth0设置为桥接,并修改interface文件。(也可以用默认的NAT)
将来在设置虚拟网卡时需要注意:最好将设置成NAT的虚拟网卡放在设置成Host-Only网卡的前面,否则如果将来虚拟机要联网的话,需要将Host-Only虚拟网卡先关闭。
由于debian6安装好后,没有sudo命令,修改interface文件需要先切换到root用户。
修改成如下内容(如果选择的是NAT方式,也可以修改成如下内容)
7、更新软件源
手动输入如下内容(将原来的内容删除,或者将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
重新启动网络
更新软件源
8、安装VirtualBox增强工具
执行如下命令(以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、退出光盘镜像
10、设置共享剪贴板和拖放
启动虚拟机,设置共享剪贴板和拖放
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下映射网络驱动器的时候输的名字。
即可。
关闭虚拟机,我们来设置网络:
目前先进行如下设置,(以后可以再根据需要进行设置)
将eth0设置成桥接,将eth1设置成Host-Only连接方式。
在windows下的网络管理中可以看到:
看一下VirtualBox Host-Only Network的参数:
可以看到它的ip是192.168.56.1,我们可以将它设置的更特殊一些,如设置成88.88.88.88,只需要将eth1的网段与他设置在一个网段即可。(建议:最好使用默认值,即192.168.56.1,用88.88.88.88在某些时候会出现问题,而且使用中发现使用默认值,在用SSH连接虚拟机时,速度比较快)
eth0:
eth1:
启动虚拟机,修改interface文件,修改成如下内容(也可以将eth0也设置成静态IP):
建议:使用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下映射一下网络驱动器。
输入地址,其中的share就是上面谈到的home。
注意:如果无法连接,在主机或者虚拟机中ping对方,如果ping失败,就是Win7的防火墙的问题,需要先关闭Win7的防火墙
输入用户名和密码
在windows下可以看到已经映射成功的网络驱动器,双击可以打开。
可以看到其中就是/home/pengdl下的内容。(为什么是/home/pengdl,因为在samba配置文件中path选项就是该值。)
13、下面就可以安装常用的软件包了,可以参见:
http://www.cnblogs.com/pengdonglin137/p/3248204.html
14、使用SecureCRT登陆虚拟机
添加88.88.88.66,即虚拟机的eth1的IP
选择88.88.88.66,然后点击connect,开始连接
连接成功!!
15、当基本的环境配置好之后就可以对虚拟机进行备份了,在备份的时候最好关闭虚拟机。
完!!!
本文来自博客园,作者:摩斯电码,未经同意,禁止转载