Linux驱动学习:从Linux主机nfs共享文件到uboot

第一步:在Linux主机上开启NFS服务,使用如下命令安装NFS服务:

sudo apt-get install nfs-kernel-server rpcbind

第二步:创建一个文件夹用于共享,直接以nfs命名就行:

第三步:打开nfs服务配置文件/etc/exports,并加入如下图所示内容,注意替换为自己的共享文件夹的绝对路径

        打开配置文件:

sudo vi /etc/exports

        添加配置内容:

共享文件夹的绝对路径 *(rw,sync,no_root_squash)

第三步:重启nfs服务:

sudo /etc/init.d/nfs-kernel-server restart

        在这里有个点需要注意以下,Linux主机的网络配置需要改成桥接模式,NAT模式下使用uboot来ping主机死活也ping不同,不知道啥原因,有知道的大佬可以私信俺。开发板和主机通信需要处于同一网段下,接下来手动配置一下主机的ip地址,使其永久保持:

第五步:打开Ubuntu的网络配置选新建:

第六步:选ipv4并且手动配置,注意uboot和主机要在同一个网段内:

主机配置完成接下来配置开发板的uboot:

第七步:设置uboot的网络和环境变量:

setenv ipaddr 192.168.106.50
setenv ethaddr b8:ae:1d:01:00:00
setenv gatewayip 192.168.106.1
setenv netmask 255.255.255.0
setenv serverip 192.168.106.137
saveenv

        其中ipaddr为开发板的IP地址,一定要和主机保持一致,serverip为主机IP,设置完成之后,使用开发板ping主机可以看到下图结果就是成功:

第八步:使用nfs命令从主机共享文件夹读取文件:

nfs [loadAddress] [[hostIPaddr:]bootfilename]loadAddress    从主机读取的文件存放在开发板的地址
hostIPaddr     主机IP地址
bootfilename   文件在主机的绝对路径,确保谣读取的文件在共享文件夹里

        出现下图所示即为读取成功:

        最后分享一下自己踩的一个坑,我看着网上的教程高高兴兴的配置完了主机和开发板,激动的开始玩耍nfs命令,结果nfs一直报下面的错误,人都给搞懵了,在这里说一下解决的方法,说不定能帮到兄弟:

        最后在网上查了资料发现这个错误是因为主机的nfs和开发板的nfs的版本不一致,解决方法就是修改主机的/etc/default/nfs-kernel-server文件:

sudo vim /etc/default/nfs-kernel-server

修改完成之后重启nfs服务即可完美解决此问题,让兄弟们少走点弯路。

sudo service nfs-kernel-server restart

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/589616.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

arm裸机(1)、点灯|按键

芯片是S3C2440 首先看原理图&#xff0c;led_1234分别对应引脚GPB 5678 设置引脚为输出 向寄存器相应位写入 #define GPBCON (*(volatile unsigned long *)0x56000010) //p5 6 7 8 void led_init(void) {GPBCON & ~(0x3 << 10);GPBCON | (0x1 <<…

LeetCode-19. 删除链表的倒数第 N 个结点【链表 双指针】

LeetCode-19. 删除链表的倒数第 N 个结点【链表 双指针】 题目描述&#xff1a;解题思路一&#xff1a;双指针解题思路二&#xff1a;优化解题思路三&#xff1a;0 题目描述&#xff1a; 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。…

MTU/TCPMSS/VLAN/ACCESS/TRUNK/HYBRID

MTU RFC标准定义以太网的默认MTU值为1500 最小64字节是为了保证最极端的冲突能被检测到&#xff0c;64字节是能被检测到的最小值&#xff1b;最大不超过1518字节是为了防止过长的帧传输时间过长而占用共享链路太长时间导致其他业务阻塞。所以规定以太网帧大小为64~1518字节&am…

构建第一个JS应用(FA模型)

创建JS工程 若首次打开DevEco Studio&#xff0c;请点击Create Project创建工程。如果已经打开了一个工程&#xff0c;请在菜单栏选择File > New > Create Project来创建一个新工程。选择Application应用开发&#xff08;本文以应用开发为例&#xff0c;Atomic Service对…

Sy6 编辑器vi的应用(+shell脚本3例子)

实验环境&#xff1a; 宿主机为win11&#xff0c;网络&#xff1a;10.255.50.5 6389 WSL2 ubuntu 目标机的OS&#xff1a;Ubuntu 内核、版本如下&#xff1a; linuxpeggy0223:/$ uname -r 5.15.146.1-microsoft-standard-WSL2 linuxpeggy0223:/$ cat /proc/version Linux vers…

基于SSM的网络视频播放器

目录 背景 技术简介 系统简介 界面预览 背景 互联网的迅猛发展彻底转变了全球各类组织的管理策略。自20世纪90年代起&#xff0c;中国政府和企业便开始探索利用网络系统进行信息管理。然而&#xff0c;早期的网络覆盖不广泛、用户接受度不高、相关法律法规不完善以及技术开…

交流电压的峰峰值,有效值,均方根值,平均值,最大值,最小值和幅值

小鱼电路设计基础课程请点击--从零开始硬件电路设计元器件篇https://edu.csdn.net/course/detail/39260 常见的交流电压参数包括峰峰值&#xff0c;有效值&#xff0c;均方根值&#xff0c;平均值&#xff0c;最大值&#xff0c;最小值和幅值 今天以正负对称的正弦波电压和方…

C语言杂谈

努力扩大自己&#xff0c;以靠近&#xff0c;以触及自身以外的世界 文章目录 什么是定义&#xff1f;什么是声明&#xff1f;什么是赋值&#xff1f;什么是初始化&#xff1f;什么是生命周期&#xff1f;什么是作用域&#xff1f;全局变量&#xff1f;局部变量&#xff1f;size…

【C++进阶】AVL树(来自二叉搜索树的复仇)

&#x1fa90;&#x1fa90;&#x1fa90;欢迎来到程序员餐厅&#x1f4ab;&#x1f4ab;&#x1f4ab; 主厨&#xff1a;邪王真眼 主厨的主页&#xff1a;Chef‘s blog 所属专栏&#xff1a;c大冒险 总有光环在陨落&#xff0c;总有新星在闪烁 引言&#xff1a; 之前我们学…

从0配置React

在本地安装和配置React项目&#xff0c;您可以使用create-react-app这个官方推荐的脚手架工具。以下是安装React的步骤&#xff0c;包括安装Node.js、使用create-react-app创建React应用&#xff0c;以及启动开发服务器。 下载安装node.js运行以下命令&#xff0c;验证Node.js…

字符分类函数

字符分类函数 C语言中有⼀系列的函数是专门做字符分类的&#xff0c;也就是⼀个字符是属于什么类型的字符的。这些函数的使用都需要包含⼀个头文件是 ctype.h 这些函数的使用方法非常类似&#xff0c;我们就讲解⼀个函数的事情&#xff0c;其他的非常类似&#xff1a; int i…

用Vue仿了一个类似抖音的App

大家好&#xff0c;我是 Java陈序员。 今天&#xff0c;给大家介绍一个基于 Vue3 实现的高仿抖音开源项目。 关注微信公众号&#xff1a;【Java陈序员】&#xff0c;获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。 项目介绍 douyin —— 一个基于 Vue、Vite 实…