The File Name Handling tab enables you to determine the level of file name conversion support provided by Server for NFS. UNIX clients expect the case of their file names to be preserved. The Windows Server operating system does not require case sensitivity by default—however, case in file names is maintained by the NTFS file system. Server for NFS can be configured to provide case-sensitive search capabilities, as well as translation support for characters that may not be supported on client or server file systems.

Character translation mappings are stored in a text file. File names containing an unsupported character will be translated using the character mappings in the translation file.

Case sensitivity in file name searches is enabled by default in Server for NFS. The default can be overridden to return file names in uppercase or lowercase letters. Additionally, file names with a leading period (.) can be configured to automatically mark the file as hidden on NTFS to provide interoperability for local or network access from Windows clients.

Understanding the character translation file

Although Windows and UNIX file systems do not allow certain characters in file names, the characters that are prohibited by each operating system are not the same. For example, a valid UNIX file name can contain a colon (:), while a valid Windows file name cannot. If a UNIX user attempts to create a file in a NFS shared folder on a computer running a Windows Server operating system with Server for NFS, the file name will then contain an illegal character and the attempt will fail.

You can eliminate this problem by enabling the use of a character translation file, as described in the previous section. Each entry in the character translation file maps a single character from UNIX to a recognized counterpart in Windows. For example, to map a colon (:) in UNIX to a dash (-) in Windows, the translation file would contain the following line:

0x00 0x3a : 0x00 0x2d ; replace client : with - on server

If this entry appears in the file name character translation file on a Server for NFS computer when an NFS client creates a file named re:salesquotas on a Server for NFS shared resource, Server for NFS names the file re-salesquotas. This is the name that appears in Windows Explorer when local or remote Windows users display the contents of the shared folder. NFS clients that list the contents of the shared directory will see the file name as re:salesquotas. Character translation takes place for all files shared through NFS by the server, regardless of whether they were created by an NFS client.

The character translation file is a simple text file containing one or more of the mappings in the format:

0xnn 0xnn : 0xnn 0xnn [ ; comment]

Nn (nn) is the hexadecimal value of one byte of a two-byte Unicode character, and comment is an optional comment, which is preceded by a semicolon (;). Everything from the semicolon to the end of the line is ignored. The first set of hexadecimal values in the entry represents the character on the client (UNIX) computer, while the second set is the character used on the Windows-based computer running Server for NFS.

Additional considerations

  • Do not map a period (.) to a different character because it is used in the file name syntax of both Windows and UNIX file systems.

  • To prevent unauthorized users from tampering with the file name character translation file and causing Server for NFS to fail, you can ensure that the file is protected by using a discretionary access control list (DACL) that grants Full Control to the built-in System account and the Administrators group. The DACL should contain no other entries.