在进行嵌入式系统开发的时候,我们一般都是使用虚拟机安装unbutu系统,在上面编程开发,然后将编译好的文件在下载到开发板中实验。
但是编译好的文件如何快速有效的放到开发板中呢?一般方法不外乎以下几种?
使用U盘拷贝;使用ftp,需要在嵌入式系统中开放ftp服务,这个不是本章我们要讲的。使用Xmodem方式,然后使用命令lrz等传输。还可以使用scp,就是ssh模式最后一个就是我们今天要讲的,使用nfs挂载模式,就是将untubu的一个目录挂载到嵌入式系统中,就好像winodws的共享目录似的。
下面我们就一步一步的实现:(先弄一根网线,连接电脑主机和开发板哦)
一、unbutu系统配置,我的是虚拟机
首先先要安装portmap,nfs-kernel-server ,使用ap-get install 安装,安装完成后可以使用下面的命令查看是否安装并激活。
在linux系统中查看配置文件 /etc/exports
/home/forlinx/share *(rw,sync,no_root_squash,no_subtree_check)
最后的配置命令,注意前面的目录一定要存在,否则连service都不能激活。
如果修改这个文件后,一定要使用命令 service portmap restart ;service nfs-kernel-server restart 或者重新启动服务(使用sudo /etc/init.d/nfs-kernel-server restart)。
开发板设定正确的ip,要保证和虚拟机能ping通。(注意由于虚拟机的原因,一定要设定为桥接模式)如下图:这样可能影响外网的连接
例我的虚拟机的ip为下图:
即使修改ip也建议使用sudo /etc/init.d/nfs-kernel-server restart 重新启动服务;
二、嵌入式系统-开发板
修改ip为192.168.109.232 保证ip不能被别人占用;
使用命令
mount -o nfs -o nolock,vers=3 192.168.109.200:/home/forlinx/share home/root/share
将unbutu的目录 home/forlinx/share 目录挂载到开发板的/home/root/share目录中
这个时候我们就可以在unbutu系统中使用cp命令,如cp thisfile /home/forlinx/share,然后返回到开发板中,cd /home/root/share ,查看就会发现thisfile文件就已经存在了。
小技巧:
有的时候,会发现文件不同步,这个时候可以先跳出这个目录,再进入,就正常了。
创作不易,欢迎点赞、关注。
--好记性不如烂笔头。