Dell Unity:租期到期后 NAS 服务器仍持有 NFSv4 锁定超过 5 分钟
摘要: 在 Unity NAS 服务器上,在客户端意外关闭或网络分区后,文件上的 NFSv4 锁定可能会保留超过五分钟。(用户可纠正)
本文适用于
本文不适用于
本文并非针对某种特定的产品。
本文并非包含所有产品版本。
症状
- 客户端非正常关闭后,可能会在 Unity NAS 服务器上观察到受影响文件上的 NFS 锁定长达六分钟。
- 在 Unity 释放锁定之前,其他客户端无法锁定文件。
- 这些锁定使用
svc_lockd命令。
root@none spa:/cores/service/user# date ;svc_lockd NAS_Server list
Mon Oct 27 08:43:36 UTC 2025
NAS_Server : commands processed: 1
command(s) succeeded
output is complete
FileSystem: ufs64 rw /.etc SV20000009=536870921 expfsidstr=67fcca47-e0ae-3301-b819-0e0e84d61219 nooplock triggerlevel=0 nocepp nfsv4locking=ADVISORY renamepolicy=CIFS accesspolicy=NATIVE minactfssize=2816 NumTimesFsckHasModifiedFS=0
inum=9465
fldp=0x0008c74ba8 Deleg=0 Opens=1 RangeLocks: Mandatory=0 Advisory=0
inum=9466
fldp=0x0008c74d00 Deleg=0 Opens=1 RangeLocks: Mandatory=0 Advisory=0
inum=9468
fldp=0x0008c75260 Deleg=0 Opens=1 RangeLocks: Mandatory=0 Advisory=0
FileSystem: ufs64 rw /Ghost_NFS01_Official_FS SV2000000a=536870922 expfsidstr=67fccdbd-4304-dbdd-3b8f-00601696feeb nooplock triggerlevel=512 nocepp nfsv4locking=MANDATORY renamepolicy=CIFS accesspolicy=UNIX minactfssize=2816 thinprovisioning maxsize=204544 hwm=0 NumTimesFsckHasModifiedFS=0
inum=9465
fldp=0x0008c753b8 Deleg=0 Opens=1 RangeLocks: Mandatory=1 Advisory=0 <<<<<<<<<<< Lock placed by client on file inode 9465
Command succeeded
root@none spa:/cores/service/user# date ;svc_lockd NAS_Server info fldp=0x0008c753b8
Mon Oct 27 08:43:46 UTC 2025
NAS_Server : commands processed: 1
command(s) succeeded
output is complete
fldp=0x0008c753b8 inum=9465 ref=1 delegp=0x0000000000 totalLocksCount=2 layoutsCount=0
Global accessMode=[RWd], denyMode=[rwd]
Open access=RD-WR deny=NONE [NFSv4_Linux NFSv4.2 test_client_OPEN_0x0008577fc8]
Lock 0x00064-00064: -SHR-MAND [credp=0x000857dfc8 NFSv4_Linux NFSv4.2 test_client_LOCK_0x000857dfc8] <<<<<<<<<< byte-range shared mandatory lock
原因
NFSv4 协议使用租用期,在此期间,服务器向客户端授予文件锁定。客户端必须定期续订此租约以保持锁定。
- 如果客户端意外关闭,则无法续订租约。
- Unity NAS 服务器等待租约到期,然后再尝试收回锁定。
- 默认情况下,Unity 不会立即释放这些资源。一个隐藏参数,
nfsv4.cleaningInterval,定义一个额外的等待期。 - 默认
nfsv4.cleaningInterval值为 300 秒(5 分钟)。 - 因此,锁定的文件仅在标准租用期加上 5 分钟的清理间隔后才会释放,导致总等待时间约为 5 到 6 分钟。
解决方案
而 nfsv4.cleaningInterval 可以降低值以减少 NAS 服务器持有锁定的时间。
- 确认当前值
nfsv4.cleaningInterval是。
root@none spa:/cores/service/user# svc_nas NAS_Server -param -facility nfsv4 -i cleaningInterval -v
NAS_Server :
param nfsv4.cleaningInterval added into the list of visible params
name = cleaningInterval
facility_name = nfsv4
default_value = 300
current_value = 300
configured_value =
param_type = global
user_action = none
change_effective = immediate
range = (30,3600)
description = Time interval in seconds between two successive clean up of orphan states
detailed_description
This param defines how long the server will keep client resources once the client has expired its lease. It is expressed in a count of seconds.
- 修改
nfsv4.cleaningInterval参数设置为较低的值,例如 30 秒。
root@none spa:/cores/service/user# svc_nas ALL -param -facility nfsv4 -modify cleaningInterval -v 30
SPA : done
SPB : done
- 确认该值设置为 30 秒。
root@none spa:/cores/service/user# svc_nas NAS_Server -param -facility nfsv4 -i cleaningInterval -v
NAS_Server :
param nfsv4.cleaningInterval added into the list of visible params
name = cleaningInterval
facility_name = nfsv4
default_value = 300
current_value = 30
configured_value = 30
param_type = global
user_action = none
change_effective = immediate
range = (30,3600)
description = Time interval in seconds between two successive clean up of orphan states
detailed_description
This param defines how long the server will keep client resources once the client has expired its lease. It is expressed in a count of seconds.
提醒:这是一个全局参数,会影响 Unity 系统上的所有 NAS 服务器。更改会立即生效,不需要重新启动 NAS 服务器或存储处理器 (SP)。
受影响的产品
Dell EMC Unity文章属性
文章编号: 000384735
文章类型: Solution
上次修改时间: 09 1月 2026
版本: 3
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。