【正点原子嵌入式Linux开发踩坑】解决Uboot不能使用nfs从Ubuntu下载系统镜像(会出现TTTTTT) Ubuntu22.04LTS版本

        如果按照正点原子I.MX6ULL-MINI提供的教程进行学习,在正点原子提供的Uboot当中使用nfs从Ubuntu下载系统镜像时可能会遇到迟迟下载不下来(即出现TTTTTTTT,而不是#########)的情况。

        这个情况有两种可能,一种是Ubuntu的nfs不兼容正点原子官方uboot中nfs的版本,正点原子官方uboot中nfs的版本仅支持到nfs2,而如果你使用较新版本的Ubuntu,则你的默认内核将不支持nfs2。二是Ubuntu的默认内核支持nfs2但是没有开启。

1.确认当前系统内核支持的nfs版本

sudo cat /proc/fs/nfsd/versions

1.出现+2则说明支持nfs2,如果你依然遇到无法下载的问题则我也不知道为什么。

2.出现-2则说明支持nfs2但是没有开启,这种情况不需要修改内核版本,跳转到 3.修改nfs配置文件 即可。

3.如果既没有出现+2也没有出现-2则说明该内核版本根本不支持nfs2,需要修改内核版本。

2.切换内核版本

uname -r

如果版本高于6.2则需要降低内核版本。

sudo apt-get install linux-image-5.19.0-50-generic 
sudo apt-get install linux-headers-5.19.0-50-generic 
sudo apt-get install linux-modules-5.19.0-50-generic 
sudo apt-get install linux-modules-extra-5.19.0-50-generic 

安装成功之后修改启动配置

sudo vim /etc/default/grub

找到下面三个然后修改

GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu,with Linux 5.19.0-50-generic"

GRUB_TIMEOUT=20

GRUB_CMDLINE_LINUX_DEFAULT="text"

更新grub

sudo update-grub

然后重启电脑,在启动过程中不断按ESC键,就会进入GUN GRUB的命令行窗口,然后输入normal指令,再按一下ESC即可进入下面的界面。

选择Advanced options for Ubuntu,按回车选中。

选择刚下载的内核进行启动。

可以再次使用

uname -r

进行检验,看看内核版本是否已经变化。

3.修改nfs配置文件

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

修改如下4处

RPCNFSDCOUNT="-V 2 8"

RPCNFSDOPTS="--vers 2,3,4 --udp"

RPCMOUNTDOPTS="-V 2 --manage-gids"

RPCSVCGSSDOPTS="--nfs-version 2,3,4 --debug --syslog"

然后

sudo vim /etc/nfs.conf

将其中的udp=n改为udp=y(记得将前面的#去掉)

将其中的vers2=n改为vers2=y(记得将前面的#去掉)

然后执行重启服务。

sudo service nfs-kernel-server restart

至此大概率问题得到解决。

注意:如果不卸载之前的内核可能每次开机都需要进入GNU GRUB选择低版本内核来启动,否则可能会默认进入高版本内核。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值