板子要开始调试了,第一个头大的问题就是调试过程中更新的文件怎么更新到板子上,以前用sd卡拷贝来来回回太浪费时间了,adb也需要接线各种连接操作。

现在板子有wifi可用,是时候把nfs共享搭起来了。

公司的编译服务器已经配好了一个nfs的共享目录/home/pub,地址是192.168.11.111

现在需要把板子连接到同一个网络内,把这个网络上的目录挂载到板子上的某个目录就好了

第一步查看板子是否支持nfs文件系统用 cat /proc/filesystem

如果有nodev nfs说明支持nfs文件系统

root@TinaLinux:/# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev ramfs
nodev bdev
nodev proc
nodev cpuset
nodev cgroup
nodev cgroup2
nodev tmpfs
nodev devtmpfs
nodev configfs
nodev debugfs
nodev sockfs
nodev pipefs
nodev rpc_pipefs
nodev devpts
ext3
ext2
ext4
vfat

很遗憾我这个板子没有nfs文件系统的支持,应该是在内核编译的时候没有打开nfs配置,

于是先把内核配置好nfs再编译烧录

make menuconfig arch=arm

找到并进入File systems选项

往下翻到NetWork File Systems 并进入

然后把NFS client support的都选上,因为我们的板子是要作为客户端连接到nfs服务器的。

Save保存退出重新编译打包烧录。

再去板子上看下这次已经有nfs了

root@TinaLinux:/# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev ramfs
nodev bdev
nodev proc
nodev cpuset
nodev cgroup
nodev cgroup2
nodev tmpfs
nodev devtmpfs
nodev configfs
nodev debugfs
nodev sockfs
nodev pipefs
nodev rpc_pipefs
nodev devpts
ext3
ext2
ext4
vfat
nodev nfs
nodev nfs4

现在要把板子连接到公司的网络上,让板子和服务器在同一个局域网内

root@TinaLinux:/# wifi_connect_ap_test  AirFly airflymaster
==================================
[ 29.767497] [STA] !!!xradio_vif_setup: id=0, type=2, p2p=0
[ 29.969455] random: wpa_supplicant: uninitialized urandom read (4096 bytes read, 101 bits of entropy available)
[ 29.982768] random: wpa_supplicant: uninitialized urandom read (4096 bytes read, 101 bits of entropy available)
[ 29.996495] random: wpa_supplicant: uninitialized urandom read (4096 bytes read, 101 bits of entropy available)
Connecting to the network......
[ 31.700627] wlan0: authenticate with 28:6c:07:41:ec:31 (try 1)
[ 31.789632] wlan0: authenticated
[ 31.793629] wlan0: associate with 28:6c:07:41:ec:31 (try 1)
[ 31.832925] wlan0: RX AssocResp from 28:6c:07:41:ec:31 (capab=0xc11 status=0 aid=7)
[ 31.841446] wlan0: associated
[ 31.847854] [AP_WRN] [STA] ASSOC HTCAP 11N 58
[ 31.918279] [TXRX_WRN] [RX] IF=0, No key found.
[ 32.017679] [TXRX_WRN] [RX] IF=0, No key found.
[ 32.172652] random: wpa_supplicant: uninitialized urandom read (4096 bytes read, 114 bits of entropy available)
[ 32.186420] [TXRX_WRN] drop=1440, fctl=0x00d0.
Connected to the AP
Getting ip address......
Wifi connect ap : Success!
==================================

接下来就是把网络上的文件夹挂载到板子上,

第一次尝试直接用 mount -t nfs 192.168.11.111:/home/pub /root/pub 命令失败了

一直阻塞最后失败。

网上搜索了一下

https://www.cnblogs.com/chenchenluo/p/3573911.html这里面说要带参数

-o nolock,rsize=1024,wsize=1024

加上之后果然挂载上了,再用mount命令看下挂载结果

mount -t nfs -o nolock,rsize=1024,wsize=1024 192.168.11.111:/home/pub /root/pub
root@TinaLinux:/# mount
/dev/root on / type ext4 (rw,relatime,data=ordered)
devtmpfs on /dev type devtmpfs (rw,relatime,size=309460k,nr_inodes=54378,mode=755)
/proc on /proc type proc (rw,relatime)
tmpfs on /tmp type tmpfs (rw,relatime)
sys on /sys type sysfs (rw,relatime)
/dev/by-name/rootfs_data on /etc type ext4 (rw,relatime,block_validity,delalloc,barrier,user_xattr)
devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620)
/dev/mmcblk0p1 on /mnt/UDISK type ext4 (rw,relatime,data=ordered)
/dev/mmcblk0p1 on /mnt/SDCARD type ext4 (rw,relatime,data=ordered)
192.168.11.111:/home/pub on /root/pub type nfs (rw,relatime,vers=3,rsize=1024,wsize=1024,namlen=255,hard,nolock,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.11.111,mountvers=3,mountproto=tcp,local_lock=all,addr=192.168.11.111)

现在就可以往服务器上的/home/pub里面放东西,然后通过串口或者adb在板子上的/root/pub目录就能获取到更新的东西了。

2019-04-27

15:45:21

嵌入式开发板nfs挂载的更多相关文章

  1. TQ210开发板NFS挂载android4.0.4的rootfs的方法

    首先声明的是,我使用的u-boot是自己移植的u-boot2013.01.01而非天嵌官方的那个,至于使用官方的u-boot如何去实现nfs挂载rootfs我没怎么研究过,不过原理方法都是一致的. 主 ...

  2. 嵌入式开发板使用网口和nfs进行文件共享

    如果你的开发板有网口,类似于这玩意. 那么,你可以去买根网线,类似于这玩意. 然后你就可以将你的电脑和开发板用网线连起来,通过nfs(网络文件系统)来进行文件夹共享,文件夹共享就相当于挂载,nfs是利 ...

  3. ARM嵌入式开发板

    iTOP-4412 ARM嵌入式开发板----主要特点 iTOP-4412开发平台是北京迅为电子研发设计的嵌入式开发板平台,核心板配备64位双通道2GB DDR3,16GBEMMC存储,三星原厂S5M ...

  4. 嵌入式开发板iTOP4412学习开发板

    网站:http://www.topeetboard.com 淘宝:https://item.taobao.com/item.htm?_u=okcahs0f42a&id=38712193806 ...

  5. 学习嵌入式开发板的Android平台体系结构和源码结构

    本文转自迅为论坛资料:http://www.topeetboard.com 推荐学习嵌入式开发板平台:iTOP-4412开发板 下面这张图出自Google官方,展示了Android系统的主要组成部分. ...

  6. IMX6Q开发板Linux-QT挂载U盘及TF卡

    本文基于:迅为-iMX6开发板Linux-QT挂载U盘及TF卡 如下图所示,qt 启动之后,在超级终端中使用命令“mknod /dev/sda1 b 8 1”创建 U盘的设备节点,如下图所示. 插入 ...

  7. CLion远程调试嵌入式开发板程序

    CLion远程调试嵌入式开发板程序 目录 CLion远程调试嵌入式开发板程序 1. 目的 2. 前提条件 3. CLion设置 3.1 设置一个Deployment 3.2 上传需要的目录到目标板子 ...

  8. [学习嵌入式开发板]iTOP-4412实现NFS网络文件系统

    本文转自迅为:http://www.topeetboard.com 学习平台:iTOP-4412开发板 本文讲解如何在 iTOP-4412 开发板上实现 NFS 网络文件系统. 我们使用的软硬件环境是 ...

  9. [分享] IMX6嵌入式开发板linux QT挂载U盘及TF卡

    本文转自迅为开发板:http://www.topeetboard.com 开发平台:iMX6开发板 linux QT 系统下挂载 u 盘如下图所示,qt 启动之后,在超级终端中使用命令“mknod / ...

随机推荐

  1. .Net core 的热插拔机制的深入探索,以及卸载问题求救指南.

    .Net core 的热插拔机制的深入探索,以及卸载问题求救指南. 一.依赖文件*.deps.json的读取. 依赖文件内容如下.一般位于编译生成目录中 { "runtimeTarget&q ...

  2. 在Jupyter Notebook添加代码自动补全功能

    在使用Jupyter notebook时发现没有代码补全功能,于是在网上查找了一些资料,最后总结了以下内容. 1 安装显示目录功能: pip install jupyter_contrib_nbext ...

  3. Jwt的新手入门教程

    Jwt的新手入门教程 1.Jwt究竟是什么东东? ​ 先贴官网地址:JSON Web Tokens - jwt.io ​ ​ 再贴官方的定义: What is JSON Web Token? JSON ...

  4. IDEA 集成 Docker 插件实现一键远程部署 SpringBoot 应用,无需三方依赖,开源微服务全栈项目有来商城云环境的部署方式

    一. 前言 最近有些童鞋对开源微服务商城项目 youlai-mall 如何部署到线上环境以及项目中 的Dockerfile 文件有疑问,所以写了这篇文章做个答疑以及演示完整的微服务项目发布到线上的流程 ...

  5. 【PHP数据结构】二叉树的遍历及逻辑操作

    上篇文章我们讲了许多理论方面的知识,虽说很枯燥,但那些都是我们今天学习的前提,一会看代码的时候你就会发现这些理论知识是多么地重要了.首先,我们还是要说明一下,我们学习的主要内容是二叉树,因为二叉树是最 ...

  6. Python turtle.right与turtle.setheading的区别

    一.概念 turtle.right与turtle.left用法一致,我们以turtle.right为例进行讲述. turtle.right(angle)向右旋转angle角度. turtle.seth ...

  7. 鸿蒙内核源码分析(任务调度篇) | 任务是内核调度的单元 | 百篇博客分析OpenHarmony源码 | v4.05

    百篇博客系列篇.本篇为: v04.xx 鸿蒙内核源码分析(任务调度篇) | 任务是内核调度的单元 | 51.c.h .o 任务管理相关篇为: v03.xx 鸿蒙内核源码分析(时钟任务篇) | 触发调度 ...

  8. == 和 equals区别

    == equals是两种字符串的方式 区别 == 是比较两个对象的引用地址值 equals是比较两个对象的具体内容 示例 package com.oop.demo06; public class De ...

  9. 分布式锁Redission

    Redisson 作为分布式锁 官方文档:https://github.com/redisson/redisson/wiki 引入依赖 <dependency> <groupId&g ...

  10. Java数据类型详解!Java秘诀,Java入门基础

    Java的基本数据类型算是Java学习的基础之一,经常会听到大家提起.那么你到底有没有真正理解和掌握数据类型呢? Java 语言支持的数据类型分为两种:基本数据类型和引用数据类型!本文主要针对这两大数 ...