搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
很楠不爱3
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
2024 Mathorcup高校数学建模挑战赛(B题)| 甲骨文识别 | 建模秘籍&文章代码思路大全_如何实现干扰元素和文字区域分类
2
Linux安全防火墙(iptables)配置策略_iptables防火墙配置
3
git下载和安装详细
4
使用Innosetup对软件进行打包_inno setup function
5
iOS Technology Overview_add the appropriate keys to your info.plist,
6
【Git】Git图形化工具&SSH协议&IDEA集成Git的使用讲解_idea git ssh
7
Prompt Engineering 高级提示工程技巧
8
通信原理_Q&A_2023_wifi调制方式
9
Python3 基础语法_-*- coding: cp-1252 -*
10
斯坦福NLP名课带学详解 | CS224n 第16讲 - 指代消解问题与神经网络方法(NLP通关指南·完结)_nlp nps
当前位置:
article
> 正文
嵌入式Linux开发——解决uboot无法使用nfs服务从ubuntu中下载文件(TTT、cannot mount等错误)
作者:很楠不爱3 | 2024-04-19 00:43:15
赞
踩
cannot mount
前言:
最近在学习正点原子嵌入式Linux开发板uboot的移植实验,移植完之后想测试网络部分的驱动能否工作正常。最后经过测试发现tftp可以正常下载,nfs却一直报错无法下载文件,最后也是折磨了两天才解决了问题,特写下此博客进行记录、总结。
项目场景:
我的轻薄本没有网口,事先买了一个刷过固件可以连校园网的路由器。准备好路由器之后,校园网通过一根网线接路由器的wan口,剩余两个lan口,一个接到正点原子alpha开发板的ENET2、笔记本电脑连路由器的WiFi、ubuntu改为桥接静态ip,使得三者在同一网段内(windows、ubuntu、uboot(不是linux内核))
ubuntu
192.168.10.218
uboot
192.168.10.220
windows
192.168.10.46
具体实物图:
然后测试了一下测试三者是否能互相ping通(只有windows和ubuntu无法ping通uboot,其余四种情况都可以正常ping通),ubuntu和windows无法ping通uboot好像是uboot没有解析ping命令,但是这个不影响后面的实验。下面是三者互相ping的截图
uboot ping ubuntu和windows
ubuntu ping windows
windows ping ubuntu
根据教程,一开始想使用nfs服务但行不通,但使用tftp服务可以正常下载、nfs没调通这个问题就没有过多理会。直到学习根文件系统测试时,根文件系统都是通过nfs进行挂载,我一开始还是想取巧避开nfs用tftp进行挂载,但是我看了看linux内核文件好像只支持nfs、没有看到tftp的字眼,而且后面的教程都是用nfs,所以就躲不掉了,只能先调通nfs才能继续往下走。
nfs服务下载失败
nfs cannot mount错误
tftp服务可以正常下载
解决方案:
因为我能通过tftp服务进行下载,说明我的网络拓扑应该是没有什么问题的,问题应该就在nfs服务这部分。这期间我看了正点原子常见错误的总结、还有一些大佬们的博客、咨询某宝技术客服最后才得以解决,大家可以按顺序针对下面的情况进行设置和排查。
1、关闭杀毒软件(火绒等)、关闭windows的防火墙、ubuntu的也关闭。(嫌麻烦ubuntu的我就直接卸载了)
2、uboot使用的nfs版本是version2,而ubuntu16以上默认是version3或者version4,通过
sudo cat /proc/fs/nfsd/versions
可以查看当前ubuntu支持的nfs版本。我用的ubuntu版本是20.04,为了兼容要修改 /etc/default/nfs-kernel-server配置文件,通过
sudo vim /etc/default/nfs-kernel-server
进入文件进行修改。
nfs 不支持version2
修改之后重启nfs服务(
sudo service nfs-kernel-server restart
)看是否能成功下载,如果还是不行继续往下看。
3、出现cannot mount或者编译一段时间后出现TTT错误,可以查看一下/etc/hosts、/etc/exports这两个配置文件
sudo vim /etc/exports
sudo vim /etc/hosts
/etc/hosts 要添加的内容
/etc/exports添加的内容分为三部分
1:nfs服务共享目录绝对路径
2:*代表所有的ip都可访问
如果只限定一个ip只需将*改为192.168.10.220(要和ubuntu在同一网段)
如果要使用同一网段只需将*改为192.168.10.*
3:(rw,sync,no_root_squash)为nfs服务的一些命令参数
修改完exports后记得重新声明一下 sudo exportfs -ar、重启一下nfs服务。
我看完很多人的博客到这步基本上都弄好了,nfs可以成功下载文件了,但是我的还是不行。
4:设置完上述内容后打印nfs的version还是出现-2,我
用netstat看一下nfs对应端口,发现没有udp只有tcp
netstat -a | grep "nfs"
设置一下这个文件/etc/nfs.conf
sudo vim /etc/nfs.conf
注意重新启动nfs服务
sudo service nfs-kernel-server restart
重新执行netstat,出现了udp
用
sudo cat /proc/fs/nfsd/versions
可以发现出现了+2,即支持nfs服务的version2,接下来要做的就是验证一下
在uboot中执行命令
nfs 80800000 192.168.10.218:/home/lpme/linux/nfs/zImage
发现可以成功下载
其中一些T可能是网络问题,我们看一下dram里面的内容和zImage(用winhex打开)里的内容是否相同
md.b 80800000 2000
进行比较两者是相同的,即nfs服务可以正常使用了。
总结:
非常感谢你能看到这里,希望这篇文章能帮你解决问题。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/很楠不爱3/article/detail/449114
推荐阅读
article
武装
服务器
(一):云
服务器
配置aliyundriver-
webdav
以及使用
Aria2
和
Rclone
...
Linux/云
服务器
配置
Rclone
挂载阿里云网盘以及使用
Aria2
实现离线下载。_
fatal
error
:
faile...
赞
踩
article
Docker
之数据卷与
Docker
file_
dockerfile
mount
...
一、docker基本运行将容器后台运行并进入容器:docker run -itd -name 名字 centos强制删除...
赞
踩
article
Linux
Docker
安装
Docker
-
Compose
安装
Docker
安装
Mysql8
Nac...
Docker
安装
Docker
Compose
安装
Docker
安装 Mysql Nacos OpenResty Redi...
赞
踩
article
linux
数据
链路层
socket
编程 广播...
在Linux系统中,要进行数据
链路层
的
socket
编程,并发送广播包,你可以使用原始套接字(raw
socket
),并将...
赞
踩
article
Ubuntu
配置
共享
文件夹
_
ubuntu
共享
文件夹
设置...
安装虚拟机经常会遇到已经
共享
了
文件夹
,但是就是找不到目录文件,搜集网上资料,汇总一下指令,留作以后备用吧:vmware-...
赞
踩
article
C++
Qt实现
拦截
自身
键盘
事件
_
qt
linux
霸屏屏蔽
键盘
...
【代码】
C++
Qt实现
拦截
自身
键盘
事件
。_
qt
linux
霸屏屏蔽
键盘
qt
linux
霸屏屏蔽
键盘
...
赞
踩
article
解决方案
:2024年
Pytorch
(
GPU
版本)+
torchvision
手动
安装
教程[万能
安装
方法...
对于深度学习新手和入门不久
的
同学来说,在
安装
PyTorch和
torchvision
时经常会遇到各种各样
的
问题。本文介绍...
赞
踩
article
【
Linux
C | 多
线程
编程】
线程
的
创建
、
线程
ID
、
线程
属性
...
本文介绍了
线程
创建
相关的内容,包括pthread_create函数的详细介绍和使用例子,然后依次介绍该函数第一个参数相关...
赞
踩
article
Qt教程3-Ubuntu(
x86
_64)上配置
arm
64
(
aarch64
)
交叉
编译
环境及QT
编译
ar...
Qt项目需要做国产系统适配,软件需要适配不同
架构
CPU!
x86
_64系统下开发ARM
aarch64
架构
软件。基于此构建...
赞
踩
article
Linux
GPIO
模块-
RK3588
GPIO
驱动分析_
rk3588
lp4x
evb
...
Linux
GPIO
驱动_
rk3588
lp4x
evb
rk3588
lp4x
evb
...
赞
踩
article
Java
必备技能之环境搭建篇 (
linux
ab
压力
测试
),35岁
程序员
...
-e filename Output CSV file with percentages served-r Do...
赞
踩
article
Linux
操作系统下
Docker
和
Docker
Compose
的
安装
教程(包含
x86
和
arm64
平台...
本文章将详细介绍
Linux
下
Docker
和
Docker
Compose
的
安装
教程。目录3为
x86
和
arm64
平台Dock...
赞
踩
article
Linux
ARM架构 银河麒麟V10
docker
+
mongodb
+
docker
-
compose
离...
由于本次
安装
的国产服务器没有网络,所以我们先找一台有网络的
docker
服务器找到对应的镜像下载下来,如果若是需要
安装
的服...
赞
踩
article
Linux
-
Zabbix
监控
-
安装
与配置...
Linux
CentOS 7 搭建
Zabbix
详细部署流程_zabbixzabbix 一、zab...
赞
踩
article
Ubuntu
16.04
64位
安装
modelsim
_
ubuntu
16.04
lts
安装
mod...
一、准备下载
modelsim
10.2
安装
文件及pojie文件
Ubuntu
上没有健全的Java环境,先
安装
jre、jdk...
赞
踩
article
一种快速
移植
OpenHarmony
Linux
内核
的方法...
本文面向希望将
OpenHarmony
移植
到三方芯片平台硬件的开发者,介绍一种借助三方芯片平台自带
Linux
内核
的...
赞
踩
article
centos
是
什么
linux
操作系统
,
Linux
操作系统
之
CentOS
的介绍...
原标题:
Linux
操作系统
之
CentOS
的介绍
CentOS
是
一个基于Red Hat
Linux
提供的可自由使用源...
赞
踩
article
linux
mips
汇编
指令
集,
MIPS
汇编与
指令
...
一、
MIPS
寄存器
MIPS
的系统结构及设计理念比较先进,其
指令
系统经过通用处理器
指令
体系
MIPS
I、
MIPS
II、M...
赞
踩
article
云
计算
课程第四次实验-
搭建
DevOps
流水线
_
devops
搭建
ubuntu
...
搭建
DevOps
流水线
环境。安装并
搭建
gitlab服务安装并
搭建
harbor服务安装并
搭建
jenkins服务配置dock...
赞
踩
article
【
Linux
】
网络
基础常识{
OSI
七层
模型/
TCP
/IP /
端口号
/各种协议}...
网络
编程前导知识。【
Linux
】
网络
基础常识{
OSI
七层
模型/
TCP
/IP /
端口号
/各种协议} ...
赞
踩
相关标签
linux
运维
服务器
docker
centos
容器
elasticsearch
网络
ubuntu
c++
qt
计算机外设
pytorch
macos
torchvision
深度学习
c语言
pthread_create
多线程
线程创建
架构
编辑器
arm开发
kylin