NFS客户端为内核的一部分,由于部分内核存在一些缺陷,会影响NFS的正常使用。为了获得更好的NFS稳定性体验,请使用阿里云推荐的内核版本。

推荐Linux系统版本

推荐使用阿里云官方内核镜像,选择经过阿里云严格测试的内核版本,确保稳定性,详情请参见推荐内核镜像

内核网络栈缺陷导致文件系统无响应(优先级:高)

当系统的内核版本为2.6.32-696~2.6.32-696.10.1(包括2.6.32-696,但不包括2.6.32-696.10.1)时,NFS服务端繁忙,内核请求重传,有概率触发内核网络栈缺陷,造成操作无响应。

当操作无响应时,请重启ECS实例,详情请参见RHEL6.9:NFSv4 TCP transport stuck in FIN_WAIT_2 forever

内核缺陷导致文件系统无响应(优先级:高)

  • 当系统的内核版本为以下几个版本时,NFS服务端故障转移,可能造成NFS客户端的打开、读、写操作出现死锁情况,从而导致文件系统持续无响应。
    • Redhat 6、CentOS 6 2.6.32-696.3.1.el6。
    • Redhat 7、CentOS 7 3.10.0-229.11.1.el7之前的所有内核版本。
    • Ubuntu 15.10 Linux 4.2.0-18-generic。

    当操作无响应时,请重启ECS实例,详情请参见RHEL7:NFSv4 client loops with WRITE/NFS4ERR_STALE_STATEID - if NFS server restarts multiple times within the grace period

  • 当系统的内核版本为以下几个版本时,网络发生分区或抖动,造成连接重连,NFS客户端可能由于没有正确处理错误码而持续无响应。现象是文件系统无响应且系统message中反复打印bad sequence-id error。
    • Redhat 6、CentOS 6 2.6.32-696.16.1.el6之前的所有内核版本。
    • Redhat 7、CentOS 7 3.10.0-693.el7之前的所有内核版本。

    当操作无响应时,请重启ECS实例,详情请参见RHEL6/RHEL7:NFS4 client receiving NFS4ERR_BAD_SEQID drops nfs4 stateowner resulting in infinite loop of READ/WRITE+NFS4ERR_BAD_STATEID

  • 当操作系统内核版本为CentOS和RedHat 5.11.x所有内核时,执行ls命令、包含通配符*?的命令以及其他需要对目录进行遍历的操作,均会由于内核缺陷导致卡顿或无响应。

    请您升级内核版本,避免此问题。

不支持chown命令和系统调用(优先级:低)

系统的内核版本为2.6.32时,不支持NFS客户端执行chown命令和系统调用。

ls操作无法终止(优先级:低)

当系统的内核版本为2.6.32-696.1.1.el6及之前版本时,在系统中执行ls操作的同时还在进行添加、删除文件、子目录操作,将导致ls操作永远无法终止。

请升级内核版本,避免此问题。