嵌入式系统移植【2】——交叉开发环境的搭建

【实验一】ubuntu 网络环境配置

【实验目的】
掌握ubuntu 下网络配置的基本方法,能够通过有线网络连通ubuntu 和开发板
【实验环境】
1、ubuntu 14.04 发行版
2、FS4412 实验平台
【注意事项】
1、实验步骤中以“$”开头的命令表示在ubuntu 环境下执行,以“#”开头的命令表
示在开发板下执行
【实验步骤】

一、网络连接模式设置


1、如图所示,单击“编辑”然后选择“虚拟网络编辑器(N)...”设置虚拟机网络


2、如图所示,在弹出的对话框中选择使用“桥接模式”,然后单击“确定”


注:若无法选择“桥接模式”,则先将ubuntu 关机,然后关闭VMware,然后再以管理员
身份运行VMware,然后再打开上述界面,单击左下角的“还原默认设置(R)”,等待完成
还原后即可选择“桥接模式”,然后再打开ubuntu 即可

 3、如图所示,单击“虚拟机”,然后选择“设置(S)...”

4、如图所示,在弹出的对话框中单击“硬件”然后单击“网络适配器”,然后参照下图将
网络连接设置为“桥接模式”,然后单击确定即可

二、Ubuntu 网络配置


Ubuntu 下网络配置方法灵活多样,我们既可以使用图形化界面配置,也可以使用命令
行进行配置,可以使用动态配置,也可以使用静态配置,这里我们演示使用图形化界面
进行静态配置作为参考
1、因为我们使用图形化界面配置,所以这里先将配置文件中的配置信息删除(或注释)

$ sudo vi /etc/network/interfaces

配置文件中只保留如下信息即可,修改完成后保存退出

2、如图所示,单击桌面右上角的网络设置图标(若没有该图标是因为上一步的配置还未生
效,重启一下ubuntu 即可
),然后选择“Edit Connections...”

3、在弹出的对话框中单击“Add”添加一个新的连接

4、这里使用默认的“Ethernet”,然后单击“Create...”

5、如图所示,在弹出的对话框中先为新建的连接填写名字(随意),然后单击“IPv4 settings”
设置IP 信息,将“Method”栏选为“Manual”,然后单击“Add”填写IP 信息

因为我们使用的是桥接模式,所以IP 信息需要参考windows 下的设置,当前窗口先不
要关闭,切换到windows 下查看IP 信息


6、在windows 下打开一个命令行终端,然后输入“ipconfig”查看windows 下使用的网络
及IP 信息(根据个人电脑情况,找到windows 正在使用的网络连接的信息)

7、回到ubuntu 下,如下图所示,根据windows 下的IP 信息填写ubuntu 的IP 信息

Address 设置成与windows 下的“IPV4 地址”在同一个网段下的不同地址
比如windows 下的IP 为“192.168.1.102”
则将ubuntu 下的IP 设为“192.168.1.100”
Netmask 设置成与windows 下的“子网掩码”一致
Gateway 设置成与windows 下的“默认网关”一致
DNS servers 设置成与windows 下的“默认网关”一致

设置完成后单击“Save”保存,关闭对话框即可


8、刚刚添加的网络连接可能还没有生效,这里先断开原有连接

然后再选择刚刚建立的新的连接即可

三、网卡选择


在以上步骤中我们已将虚拟机的网络连接模式设置成了桥接模式,也设置了ubuntu 中
IP 相关的信息,但在实际使用的时候,有时我们的电脑是通过无线的方式上网,有时
是通过有线的方式,有时需要通过有线的方式连接开发板,这时就需要我们去切换虚
拟机所使用的网卡。


1、如图所示,单击“编辑”然后选择“虚拟网络编辑器(N)...”

2、如图所示,在“桥接到”一栏选择桥接的网卡,设置完成后单击“确定”即可
一般电脑都有有线网卡和无线网卡,不同电脑网卡名不一样,一般有线网卡的名字中带
有“PCIe”,无线网卡的名字中带有“Wireless”,根据自己电脑的实际情况进行区分
这里选择网卡的原则是,如果想让ubuntu 上外网,那么windows 下使用哪个网卡就桥
接到哪个网卡;如果想让ubuntu 与开发板连接,直接桥接到有线网卡

四、连接开发板


1、在终端输入如下命令,查看ubuntu 主机的IP 地址
 

$ ifconfig


显示如下信息


2、如图所示,在uboot 交互模式下,设置uboot 中IP 相关的环境变量

serverip 即服务器IP,设置成与ubuntu 主机一样的IP
ipaddr 即自身IP,设置成与ubuntu 主机在同一个网段下的不同地址
比如ubuntu 主机的IP 为“192.168.1.100”
则将ipaddr 设置为“192.168.1.200”


3、使用网线连接开发板与电脑,然后在uboot 交互模式下使用ping 命令连接ubuntu,若
显示“host xxx.xxx.xxx.xxx is alive”则表示网络已连通


4、若经过上述步骤后开发板与ubuntu 还未连通,可尝试关闭windows 下的防火墙


若还未连通,请检查以上所有步骤的正确性

 【实验二】tftp 服务器环境搭建


【实验目的】
掌握tftp 环境搭建的基本方法,能够在uboot 中使用tftp 下载文件


【实验环境】
1、ubuntu 14.04 发行版
2、FS4412 实验平台


【注意事项】
1、实验步骤中以“$”开头的命令表示在ubuntu 环境下执行,以“#”开头的命令表
示在开发板下执行

【实验步骤】
一、tftp 服务器环境搭建

1、打开一个命令行终端,执行如下命令查看是否已安装tftp 服务器

$ dpkg -s tftpd-hpa

若显示如下信息表示未安装

2、若未安装,执行如下命令安装(确保ubuntu 能上网),若已安装直接执行步骤3

$ sudo apt-get install tftpd-hpa tftp-hpa

3、修改tftp 服务器的配置文件

$ sudo vi /etc/default/tftpd-hpa

修改为如下内容,

然后保存退出注:TFTP_DIRECTORY 是tftp 服务器的工作目录,即客户端要下载的文件需要放到该目录下。

4、创建服务器工作目录并设置为最高的权限

$ sudo mkdir /tftpboot
$ sudo chmod 777 /tftpboot

5、重启tftp 服务,使配置生效

$ sudo service tftpd-hpa restart

显示如下信息表示重启成功


 

注:以后每次重新打开ubuntu 若要使用tftp 都需要重启

6、本地测试是否安装成功

进入到服务器工作目录
$ cd /tftpboot/
创建一个文件
$ sudo touch test.txt
回到家目录
$ cd
使用tftp 命令登录本机
$ tftp localhost
获取文件
$ get test.txt
退出
$ q

执行如下命令查看是否获取到
$ ls
当前目录下获取到了test.txt 文件表示安装成功

 【实验三】nfs 服务器环境搭建


【实验目的】
掌握nfs 环境搭建的基本方法,能够在开发板上使用nfs 挂载根文件系统


【实验环境】
1、ubuntu 14.04 发行版
2、FS4412 实验平台


【注意事项】
1、实验步骤中以“$”开头的命令表示在ubuntu 环境下执行,以“#”开头的命令表
示在开发板下执行


【实验步骤】
一、nfs 服务器环境搭建
1、打开一个命令行终端,执行如下命令查看是已否安装nfs 服务器

$ dpkg -s nfs-kernel-server

若显示如下信息表示未安装
2、若未安装,执行如下命令安装(确保ubuntu 能上网),若已安装直接执行步骤3

$ sudo apt-get install nfs-kernel-server

3、修改nfs 服务器的配置文件

$ sudo vi /etc/exports

在文件末尾添加如下配置,然后保存退出

注:/opt/4412/rootfs 是nfs 服务器的工作目录,即客户端要访问的文件需要放到该目录下


4、创建服务器工作目录并设置为最高的权限

$ sudo mkdir -p /opt/4412/rootfs
$ sudo chmod -R 777 /opt

5、重启nfs 服务,使配置生效

$ sudo service nfs-kernel-server restart

显示如下信息表示重启成功
注:以后每次重新打开ubuntu 若要使用nfs 都需要重启


6、本地测试是否安装成功
进入到服务器工作目录

$ cd /opt/4412/rootfs/

创建一个文件

$ sudo touch test.txt

回到家目录

$ cd

使用nfs 挂载工作目录到/mnt

$ sudo mount -t nfs localhost:/opt/4412/rootfs /mnt

查看是否挂载成功

$ ls /mnt/

若目录下有了test.txt 文件表示安装成功
取消挂载

$ sudo umount /mnt

注:ubuntu 17.10 之后的版本nfs 默认只支持协议3 和4,但后续我们使用的uboot 默认
使用协议2,所以需要在/etc/default/nfs-kernel-server 文件末尾加一句如下内容:
RPCNFSDOPTS="--nfs-version 2,3,4 --debug --syslog"
然后重启nfs 服务即可。

TFTP、NFS的区别

“nfs是网络文件系统,不是用来传东西的,是把嵌入式的根文件系统通过nfs放在网络上的某个介质中,nfs是通过以太网中的udp传送命令的。tftp是通过TCP/IP协议用来在客户机与服务器之间进行简单文件传输的协议。”

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值