我删除了之前的nfs集群,重新创建之后,同样的名字报错: # ceph nfs export create cephfs nfs-cephfs /ceph myFs --path=/ Error EPERM: Failed to update caps for nfs.nfs-cephfs.2: updated caps for client.nfs.nfs-cephfs.2 我该怎么解决?
这个错误是 Ceph NFS 的经典“权限覆盖”问题,核心意思是:
现在用
nfs-cephfs这个名字重新创建 NFS 集群时,系统发现旧的 client(nfs.nfs-cephfs.2)的 caps 还在,但因为旧集群已经被彻底删掉,mgr 想重新给它写 caps,结果发现这个 client 的 key 或者 caps 已经被锁死/残留,导致Failed to update caps。一句话:旧的 nfs.nfs-cephfs.* 这个 client 身份还活着,挡住了你用同一个名字重建。
一键彻底解决(3 条命令,30 秒搞定)
# 1. 把残留的 client 身份彻底干掉(重点!) ceph auth del client.nfs.nfs-cephfs.2 # 2. 如果还有其他残留的 nfs-cephfs.* client,也一起删(一般就这一个) ceph auth list | grep -A 5 nfs.nfs-cephfs | grep entity | awk '{print $2}' | xargs -I {} ceph auth del {} # 3. 现在再创建,就绝对成功了 ceph nfs export create cephfs nfs-cephfs /ceph myFs --path=/你的答案