You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ubuntu 20.04/Armbian 21.08上启用NFS v4服务端协议

问题1确认

对,你当前NFS服务端无法使用v4版本的直接原因就是CONFIG_NFSD_V4 is not set。
这个内核编译选项专门控制NFS内核服务端(NFSD)的v4协议支持,你当前的Armbian内核在编译时直接关闭了该特性,因此无论用户层的nfs-kernel-server包怎么配置,都无法启用服务端的NFSv4功能。
注意你内核里CONFIG_NFS_V4=m是开启了NFS客户端的v4支持,所以你用这台设备作为客户端挂载其他设备的NFSv4共享是正常的,仅服务端功能受限。

启用NFS服务端v4的操作步骤

分两种场景操作:

方案1:更换已开启NFSD_V4支持的官方内核(优先推荐)

Armbian官方的current、edge分支内核大部分已经默认开启了NFSD_V4选项,优先尝试该方案无需自行编译:

  • 执行命令更新软件源和现有包:
    apt update && apt upgrade -y
  • 搜索对应单板适配的官方内核包:
    apt search linux-image | grep -E "(current|edge)"
  • 安装对应内核后重启系统,重启后执行zcat /proc/config.gz | grep NFSD_V4验证,输出为CONFIG_NFSD_V4=y或者CONFIG_NFSD_V4=m即为内核支持生效。

方案2:自行编译内核开启NFSD_V4选项

如果官方提供的内核都没有开启该选项,再手动编译内核:

  • 先安装内核编译依赖:
    apt install git build-essential libncurses-dev bison flex libssl-dev libelf-dev
  • 下载你当前使用版本对应的Armbian内核源码
  • 进入源码目录后执行make menuconfig,依次进入File systems -> Network File Systems菜单,勾选NFS server support for NFS version 4选项,保存配置退出
  • 编译内核并打包为deb安装包,安装新内核后重启系统即可。

后续NFS服务配置

内核支持NFSv4后,还需要修改服务配置启用该协议:

  • 编辑/etc/default/nfs-kernel-server文件,修改RPCNFSDOPTS参数为:
    RPCNFSDOPTS="--nfs-version 4 --no-nfs-version 2 --no-nfs-version 3"
    (可根据需求保留v3支持,去掉对应--no-nfs-version 3参数即可)
  • 重启NFS服务生效:
    systemctl restart nfs-kernel-server
  • 验证执行cat /proc/fs/nfsd/versions,输出中存在+4即为配置成功。

内容的提问来源于stack exchange,提问作者McK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 00:27:02