跳转到主内容

网络文件系统( NFS )和 SMB/CIFS 的文件命名约定以及文件名的最大长度是什么?

Views:
563
Visibility:
Public
Votes:
0
Category:
ontap-9
Specialty:
core
Last Updated:

可不使用  

适用场景

  • ONTAP 9
  • CIFS \NFS
  • 文件路径\名称的最大长度

问题解答

  • 文件名将被截断
  • 错误消息: File not found
  • 无法打开文件名较长的文件
  • 通过SMB从Windows客户端计算机浏览时、文件名显示为8.3格式。
  • UNIX用户正在通过NFS挂载点保存文件。通过CIFS从Windows客户端计算机浏览时、文件名显示为8.3格式。

 

 
  • NFS 和 CIFS 使用的文件的文件命名约定
    • 文件命名约定取决于客户端的操作系统和文件共享协议。例如,对于运行 UNIX 操作系统的客户机来说,文件名区分大小写,对于运行任何 Windows 操作系统的客户机而言,文件名不区分大小写。
  • 文件名的最大长度
    • 在存储系统上、对于支持 PC 长文件名格式的 NFS 客户端和 CIFS 客户端、文件名的最大长度为 255 个字符。
    • 注意:这与最大文件路径长度是分开的,对于CIFS为32727,对于NFS为4096。
    • 某些 CIFS 客户端(例如 MS-DOS 和 Windows 3.x 客户端)仅支持 8.3 格式的文件名(文件名包含 8 个字符、文件扩展名包含 3 个字符)。在从 CIFS 客户机访问的任何目录中、存储系统都会创建并维护两个名称:原始长名称和 8.3 格式的附加短名称。存储系统将生成 8.3 名称,如下所示:
      • 将文件名截断为六个字符。
      • 它会在tilde (~)名称后面附加一个和一个数字或字母。如果由于类似名称太多而导致字母和数字不足、则会创建一个与原始文件名无关的唯一文件名。
      • 将文件扩展名截断为三个字符。
    • 注意:短名称后面的数字或字母可确保文件名是唯一的。它不用于显示文件创建顺序。
    • 例如,如果 NFS 客户端创建名为的文件specifications.html、则存储系统创建的短名称为specif~0.htm。如果此短名称已存在、则存储系统将在文件名末尾使用不同的编号。例如,如果 UNIX 客户机创建了另一个名为specifications_new.html的文件、则的简称specifications_new.htmlspecif~1.htm
    • 短名称显示在仅支持 8.3 格式的客户端上。NFS 客户端看不到短名称。在 Windows 95 和 Windows NT 客户端上,您可以选择使用文件属性显示短名称或长名称。
    • 注意在某些情况lose下、在客户端上运行的、使用 8.3 格式名称的应用程序可以使用文件的原始长格式名称。这可能是应用程序保存已编辑的文件的方式造成的。某些应用程序重命名原始文件,然后将编辑过的文件保存为新创建的文件。然后,文件管理器将收到删除原始文件和创建新文件的说明。当客户机仅支持 8.3 名称时、此新名称将不再具有等效的长格式。
    • 请注意, NetApp 上的 DOS 仿真与 Windows XP 上的 DOS 仿真不同。dir/xNetApp 上的 CMD 会在达到限制后随机选择名称,而在 XP 目录上则保留前两个字符。限制为 5 个文件或目录、 8.3 命名方案的前 8 个字符中具有重复的字符集。XP 和 NetApp 都将按照与~1命名方案部分相关的上次修改日期的顺序命名这些文件,而 NetApp 将在达到 5 的限制后删除编号。
      • 在 Windows XP Professional SP2 上显示:
      • 目录 C:test dir /x

04/24/2008  10:41 AM   <DIR>                       .
04/24/2008  10:41 AM   <DIR>                       ..
04/24/2008  10:41 AM   <DIR>          MS57C1~1     MSSDK_4_01
04/24/2008  10:41 AM   <DIR>          MS67C1~1     MSSDK_4_02
04/24/2008  10:41 AM   <DIR>          MS77C1~1     MSSDK_4_03
04/24/2008  10:41 AM   <DIR>          MSSDK_~4     MSSDK_4_04
04/24/2008  10:41 AM   <DIR>          MSSDK_~3     MSSDK_4_05
04/24/2008  10:41 AM   <DIR>          MSSDK_~2     MSSDK_4_06
04/24/2008  10:41 AM   <DIR>          MSSDK_~1     MSSDK_4_07
               0 File(s)              0 bytes
               9 Dir(s)  37,710,434,304 bytes free

  • 同样,但在 NetApp 上:
  • 目录 Z:test dir /x

04/24/2008  10:39 AM   <DIR>                       .
04/24/2008  10:38 AM   <DIR>                       ..
04/24/2008  10:39 AM   <DIR>          MSSDK_~1     MSSDK_4_01
04/24/2008  10:39 AM   <DIR>          MSSDK_~2     MSSDK_4_02
04/24/2008  10:39 AM   <DIR>          MSSDK_~3     MSSDK_4_03
04/24/2008  10:39 AM   <DIR>          MSSDK_~4     MSSDK_4_04
04/24/2008  10:39 AM   <DIR>          MSSDK_~5     MSSDK_4_05
04/24/2008  10:39 AM   <DIR>          U9ORL00~     MSSDK_4_06
04/24/2008  10:39 AM   <DIR>          V9ORL00~     MSSDK_4_07
               0 File(s)              0 bytes
               9 Dir(s)  2,967,848,583,168 bytes free

 

  • 配置非法字符的备用演示文稿
    • 当通过 NFS 创建的文件包含非法字符时,charmap可以使用该命令设置转换表以向 CIFS 客户机显示此类字符的替代显示。客户端将看到完整的长文件名,尽管其外观不同。
    • 注意:切勿将非法字符映射到文件名中使用或预期使用的字符。如果这样做、例如通过将冒号映射到a-umlauta-umlauts CIFS 客户机生成的文件名将被转换为 NFS 客户机的冒号。
    • 每个卷可以有不同的转换表,并且必须根据需要为每个卷配置。此表仅包含 CIFS 非法字符。
  • 案例冲突
    • 如上所述, Windows 系统不区分大小写。因此, UNIX 系统可以创建两个文件test.txtTEST.txt这对它很好、但 Windows 无法将它们分开。文件管理器知道这一点后,将为第二个文件创建一个 Tilde 表示形式,并进一步对文件进行冲突。这应该显示text.txt为和 text~1.txt
    • 注意:在 Apple OS X 10.4 及更早版本中,使用 AFP 还会遇到 Windows 共享、日语字符和 32 个字符的文件名限制。
  • 在 ONTAP 中启用搜索短名称。
    • 默认情况下,在 ONTAP ( cDOT 、集群模式 Data ONTAP )上运行时、 CIFS SVM (虚拟服务器)不能搜索 8.3 个短名称。
    • 如果需要让 SVM 也搜索可以启用的短名称、但也可能会影响性能。  只有在旧应用程序需要时才应启用该功能。
    • 要启用搜索短名称,请在高级权限级别运行此命令:
      • ::*> vserver cifs options modify -vserver <SVM name> -is-search-short-names-enabled true.

 

NetApp provides no representations or warranties regarding the accuracy or reliability or serviceability of any information or recommendations provided in this publication or with respect to any results that may be obtained by the use of the information or observance of any recommendations provided herein. The information in this document is distributed AS IS and the use of this information or the implementation of any recommendations or techniques herein is a customer's responsibility and depends on the customer's ability to evaluate and integrate them into the customer's operational environment. This document and the information contained herein may be used solely in connection with the NetApp products discussed in this document.
Scan to view the article on your device