ARM9基础—基于TQ2440的NFS配置汇总
上一篇博文介绍了TQ2440开发板启动的基本信息,本篇介绍NFS服务的一些相关配置。
<1> TQ2440编译环境,参考博文《ARM嵌入式—(1) Ubuntu下搭建arm-linux开发环境》
<2> Linux下NFS服务配置,参考博文《ARM嵌入式—(2)Ubuntu12.04下nfs服务配置》
<3> 虚拟机下开发,参考博文《ARM嵌入式—(3)虚拟机中挂载TQ2440开发板(NFS)》
<4> 独立主机开发,参考博文《ARM嵌入式—(4)Ubuntu下挂载TQ2440开发板(NFS)》
注:
本例程使用虚拟机中ubuntu16.04作为开发环境,由于虚拟机中同样支持usb转串口设备,因此可在ubuntu中通过串口终端直接操作开发板,摒弃win7下的串口终端,效率会高不少。
为操作方便,本例程将开发板网络端口与路由器端口直接相连,由于开发板默认支持DHCP服务,因此,路由器会分配对应IP地址;同时,确保ubuntu系统也已连接到路由器。
1. 连接开发板
查看开发板被分配的IP地址,如下:
2. 查看系统IP
查看ubuntu系统被分配的IP地址,如下:
3. 挂载NFS目录
确保开发板IP地址与Ubuntu系统IP地址处于同一网段。通过指令将ubuntu系统根目录下nfsboot文件夹挂载到开发板中的/mnt目录,如下:
mount 192.168.1.104:/nfsboot /mnt/ -o nolock
卸载所挂载文件,指令如下:
umount -v /mnt
注:一定要退出当下目录才可执行,否则会提示busy。
4. 源码编译
挂载成功后,可通过在ubuntu系统下编写嵌入式arm源码,并通过交叉链进行编译,然后切换到开发板主目录下的mnt文件夹中,直接运行验证,非常方便。
hello-c.c
#include <stdio.h> int main(void) { printf("\n########################\n"); printf("\n Hello, EmbedSky!\n"); printf(" C program Test!\n"); printf("\n########################\n\n"); }
Makefile
CROSS=arm-linux- all: hello-c hello-c:hello-c.c $(CROSS)gcc -o hello-c hello-c.c $(CROSS)strip hello-c clean: @rm -vf hello *.o *~
5. 运行结果