Component Name Limitations and File Name Considerations

Table 1 contains words that cannot be used as names for any part of a StorNext system.

StorNext supports many operating systems, including a variety of Linux, Apple, and Windows operating systems.
Windows file naming rules are more restrictive (see Naming Files, Paths, and Namespaces [https://docs.microsoft.com/en-us/windows/desktop/FileIO/naming-a-file]) than Linux or Apple. A few Windows file naming rules include, but are not limited to the following:
- Reserved file names.
- There are certain characters that have special meaning when used in a file system name.
- There are characters that cannot be used.
- There are other characters that cannot be used in certain positions in the file name. For example, a space or period at the end of a name.
For all operating systems to inter-operate and be able to access all files, you should consider taking some actions in order to accommodate the Windows file naming rules.
When other operating systems use the SMB protocol, they must adhere to these Windows file naming rules. Apple systems running macOS 10.9 Maverick (October 22, 2013) or above support the SMB2 protocol. These systems comply with the naming convention by mapping the restricted characters to the Unicode private use area (PUA) code points (U+F0000 – U+FFFFD), which is the standard.
This standard works if all access is using SMB and all SMB clients adhere to the standard. However, this is not always the case with StorNext clients. The StorNext file system may be directly accessed by both SMB and non-SMB clients. This may result in the same logical file having two different names on StorNext – one with PUA code points and one with the illegal Windows characters, which causes a problem.
The solution for this problem consists of 3 different steps, as follows:
- All Windows nodes participating in the StorNext cluster must use the Windows Illegal Filename Support, previously known as the Apple SFM Filename Support, mount option in the Advanced Mount Options tab located within the Windows client user interface.
-
A StorNext NAS Appliance serving Apple and Linux clients using the SMB protocol should use additional Samba vfs modules, catia, qfruit, and streams_xattr snnas_radf.
You can achieve it using the following configuration change from the controller shell:
reg set cifs.native_illegal_filenames = true
share change smb tstsmbshare named streams = true
- The Linux node accessing the file system using the SMB protocol served by the StorNext NAS Appliance should mount the share with the mapposix option.
Note: The older Linux operating systems (kernel 3.x) do not correctly map the trailing space or the trailing dot, which are some of the cases of Windows illegal file names. More recent Linux kernels (for example, Ubuntu 16 and later running kernel 4.x) handle the limitation correctly.
Note: The default is to not do any file name mappings. While the mapping is not expensive, it is not free. If no application in the StorNext cluster uses Windows illegal file names, there is no need to parse each file name for illegal characters. Perform Step 1 through Step 3 only if there is a chance of applications creating Windows illegal file names. If such an applications exists, but there are no Windows nodes present, still perform Step 2 and Step 3 to generate correct file names on the StorNext file system.