ECS:NFS 装载失败,没有此类文件或目录或ERROR_OBJECT_NOT_FOUND

摘要: 网络文件系统 (NFS) 装载失败,并显示“no such file or directory”(无此类文件或目录)或“ERROR_OBJECT_NOT_FOUND”。

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

将 NFS 导出项装载到客户端时,文件路径显示为未找到。

在 NFS 客户端中,尝试装载导出时:
命令:
# sudo mount -t nfs -o vers=3,sec=sys,proto=tcp <ECS IP>:<Remote Export Path> <Local Mount Point>
示例:
admin@client~>$ sudo mount -t nfs -o vers=3,sec=sys,proto=tcp x.x.x.x:/NS1/NFS_Bucket/Bos1 /ecs_share
mount.nfs: mounting x.x.x.x:/NS1/NFS_Bucket/Bos1 failed, reason given by server: No such file or directory
从 ECS 日志中确认的问题:
命令:
# egrep 'ERROR_OBJECT_NOT_FOUND|nfsProcessOperation' /opt/emc/caspian/fabric/agent/services/object/main/log/dataheadsvc.log
示例:
admin@node1~> egrep 'ERROR_OBJECT_NOT_FOUND|nfsProcessOperation' /opt/emc/caspian/fabric/agent/services/object/main/log/dataheadsvc.log
2016-09-20 18:47:23,666 [RpcDispatcherMD-568497] ERROR RpcProgramMountd.java (line 152) Can't get handle for export: /NS1/NFS_Bucket/Bos1/, error ERROR_OBJECT_NOT_FOUND
2016-09-20 18:47:24,292 [RpcDispatcherMD-568507] WARN FileSystemAccessHelper.java (line 1548) nfsProcessOperation : Object path : Bos1 was not found by method nfsGetOidAndOwnerZone
2016-09-20 18:47:24,293 [RpcDispatcherMD-568507] ERROR RpcProgramMountd.java (line 152) Can't get handle for export: /NS1/NFS_Bucket/Bos1/, error ERROR_OBJECT_NOT_FOUND
2016-09-20 18:47:24,837 [RpcDispatcherMD-568511] WARN FileSystemAccessHelper.java (line 1548) nfsProcessOperation : Object path : Bos1 was not found by method nfsGetOidAndOwnerZone

原因

这是设计的本意。ECS 管理员指南概述:

对目录和文件的 S3 NFS 多协议访问

ECS supports writing objects using the S3 protocol and accessing them as files using NFS and, conversely, writing files using 
NFS and accessing the files as objects using the S3 protocol. You must understand how directories are managed when you use 
multi-protocol access.

The S3 protocol does not make provision for the creation of folders or directories.

To enable multi-protocol operation, ECS support for the S3 protocol formalizes the use of / and creates directory objects for all 
intermediate paths in an object name. An object named /a/b/c.txt results in the creation of a file object named c.txt and 
directory objects for a and b. The directory objects are not exposed to users through the S3 protocol, and are maintained only 
to provide multi-protocol access and compatibility with file system-based APIs. 

这意味着, /NS1/NFS_Bucket/Bos1 就 NFS 而言,不是一个目录。 

/NS1/NFS_Bucket/Bos1 当以下项下有对象或文件时,被视为目录 /Bos1/

解决方案

创建:

  • 命名空间 = NS1
  • 存储区 = NFS_Bucket
  • 目录 = Bos1 
  • 在尝试装载之前,在 Bos1 下写入/上传对象(任何对象) /NS1/NFS_Bucket/Bos1

这会将 Bos1 视为一个目录,并且 /NS1/NFS_Bucket/Bos1 可以安装。

其他信息

受影响的产品

ECS Appliance

产品

ECS Appliance, ECS Appliance Hardware Gen1 U-Series, ECS Appliance Software with Encryption, ECS Appliance Software without Encryption
文章属性
文章编号: 000052932
文章类型: Solution
上次修改时间: 14 8月 2025
版本:  6
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。