Ubuntu 环境搭建系列--ubuntu20.04 NFS服务搭建

准备环境

  1. ubuntu20.04 桌面版 (可联网)
  2. study210开发板 (可正常启动并且内核镜像配置了nfs文件)

开始搭建NFS

安装NFS

sudo apt-get install nfs-kernel-server
sudo apt-get install nfs-common

配置etc/exports 文件

sudo vi /etc/exports

在文件末尾加上你的NFS服务路径

/xx/xx  *(rw,sync,no_root_squash,no_subtree_check)

/home/zcc/x210/porting_x210/rootfs/rootfs *(rw,sync,no_root_squash,no_subtree_check)

修改权限

在终端执行 chmod 777 -R /home/zcc/x210/porting_x210/rootfs/rootfs

测试

sudo showmount -e

更新

sudo exportfs -r 
sudo showmount localhost -e

会显示你NFS l路径

重启nfs服务

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

本地挂载测试

mount -t nfs -o nolock localhost:/home/zcc/x210/porting_x210/rootfs/rootfs /mnt

查看 /mnt目录下内容,发现与nfs目录下的一致,说明挂载成功

解绑

umount   /mnt

开发板挂载测试

在uboot 控制台 设置bootargs

setenv bootargs root=/dev/nfs nfsroot=192.168.1.141:/home/zcc/x210/porting_x210/rootfs/rootfs ip=192.168.1.10:192.168.1.141:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC2,115200 

下面是我的 ubuntu14.04的配置

setenv bootargs root=/dev/nfs nfsroot=192.168.1.141:/root/porting_x210/rootfs/rootfs ip=192.168.1.10:192.168.1.141:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC2,115200

设置好后save保存环境变量,然后 reset 重启开发板。

发现系统启动时挂载不了NFS
在这里插入图片描述
经过一番折腾后,发现是nfs协议的问题,之前一直用的是ubuntu14.04,挂载也是正常的。
但是,从Ubuntu17.04开始,nfs默认只支持协议3和协议4,而kernel中默认支持协议2。

故需要修改配置:

1、修改NFS的配置文件

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

在文件末尾加入:

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

在这里插入图片描述
2、重启NFS服务:

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

3、重新启动开发板,系统启动,挂载成功

注:如果kernel版本较高支持nfs协议3的话,可以在Uboot传到Kernel的bootargs参数中加入’nfsvers=3’,使kernel使用nfs协议3

参考:https://blog.csdn.net/p1279030826/article/details/112179714

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值