NFS and file names

Because network file system (NFS) has its origins on UNIX-based computers, the conventions used for naming files and directories on NFS file systems differs in several respects from those used by Windows. This topic covers three of these differences and describes how you can configure Server for NFS to deal appropriately with them. These differences are:

In addition, this topic also discusses directory- and file-name encoding for client computers localized for East Asian languages.

Special characters

Every file system has characters that cannot be used in directory and file names, usually because those characters are reserved for use in path and command syntax. For example, a file stored on the NTFS file system cannot contain a colon (:) character because that character is used to separate the drive letter from the rest of the path in a fully qualified path name. UNIX file systems do not use letters to identify drives, so this syntax is not used, and consequently, colon characters can appear in UNIX file names.

Server for NFS stores files on Windows-based file systems on behalf of NFS clients, which assume UNIX file-system conventions. Because of this, you can use Server for NFS to specify how characters in directory and file names will be converted (mapped) when files are moved between Server for NFS and client computers. To accomplish this, you must create a file that defines how these characters are to be mapped, and then specify where Server for NFS can find the file containing these character maps. For information about creating the character map file, see File-name character translation. To learn how to configure Server for NFS to use this file, see To configure how file-name characters are translated.

Case sensitivity

Windows and UNIX computers typically differ in the way they use the case of letters in directory and file names.

UNIX computers are usually case sensitive when handling directory and file names. That is, a UNIX computer will distinguish between a file named MYFILE and a file named MyFile, allowing both to coexist in the same directory and accessing them only when the case used in the file name matches the stored file name exactly.

Windows computers, on the other hand, are case preserving, but not case sensitive. That is, they will allow a file to be named MyFile or MYFILE and will preserve the case difference, but will not allow two files with the same name, differing only in letter case, to be stored in the same directory. Nor do they use case as a criterion when locating files. In other words, either MyFile or MYFILE can exist in the same directory, but not both, and either file can be accessed using the name MYFILE or MyFile.

By default, Server for NFS is case sensitive when matching directory- and file-access requests to directories and files in its shared directories, and it preserves the case of the names of directories and files when creating files on behalf of NFS clients computers. You can instruct Server for NFS not to be case sensitive when returning directory and file names. For more information, see To configure case sensitivity for file and directory names.

Hidden files

Files can be hidden (that is, not displayed when the directory they are store in is listed) on both Windows and UNIX computers. In the case of Windows computers, files are hidden by setting a special attribute for the file. UNIX file systems simply do not list files whose names begin with a period (.) character. By default, Server for NFS does not create files with names beginning with a period as hidden files in the Windows file system. To learn how to configure Server for NFS to hide files with names beginning with a period, see To hide files with names beginning with a period.

Directory- and file-name encoding

Client computers that are localized for an East Asian language require special support by NFS servers to be able to use characters in that language when creating directory and file names. This support, called encoding, determines how two-byte character codes exchanged between the server and a client computer will be interpreted. You can configure an NFS share to provide a default language-specific encoding scheme for all clients that access the share; you can also specify an encoding scheme for each client in the permissions list of the share. For more information, see To set default encoding for a shared directory and Configure a shared directory.