5.4 Naming NSS Storage Objects

Storage object names must be unique on a server. If the server is part of a cluster, then all pools and volumes must have unique names across all servers in the cluster, whether they are in shared relationships or not.

5.4.1 Case Insensitive Names

NSS storage object names are case insensitive. Names such as AURORA, Aurora, and aurora are the same. NSS saves pool, volume, and software RAID device names in uppercase. NSS also saves labels in uppercase. For example, if you enter vol2 as the name, it is saved as VOL2.

IMPORTANT:Because Linux treats filenames as case sensitive, when using NSS volumes on Linux, make sure to mount the volume with the Long name space (ns=long) option so that file queries are case insensitive. For information, see Section 19.11, Mounting NSS Volumes with Linux Commands (Linux).

5.4.2 Number of Characters Allowed

Use the guidelines in Table 5-5 to determine the length requirements for names of NSS Storage objects.

Table 5-5 Storage Object Name and Password Length

NSS Storage Object

Minimum Number of Characters

Maximum Number of Characters

Device name for a physical or logical device

2

15

Device name for a software RAID 0 and RAID 5

1

128

Longer names are truncated.

Device name for a software RAID 1, RAID 10, and RAID 15

NOTE:RAIDs 10 and 15 can be created only from NSSMU on NetWare.

1

80

Longer names are truncated.

Partition label

2

128

Pool name

2

15

Volume name

2

15

Encryption password for encrypted NSS volumes. Use standard ASCII characters

2 (a minimum of 6 is recommended)

16

Pathnames for files, including the server name, volume name, path delineators (such as colons, slashes, and dots), directory names, filename, and file extension

1

255

5.4.3 Conventions for Valid Names of NSS Storage Objects

Valid device, pool, and volume object names conform to the following naming conventions. We recommend that you also consider the character conventions for the software RAID names in order to have consistent naming policies on your system.

  • Use only valid characters:

    ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_!@#$%&()

    IMPORTANT:Special characters (non-alphanumeric) can create confusion or problems for some configuration files, command line utilities, applications, and scripts. For example, the ampersand (&), at (@), dollar sign ($), exclamation point (!), percent (%), and number sign (#) characters should be avoided for this reason. For more information, see Section 5.4.4, Other Naming Guidelines

  • Do not use spaces in the object name.

  • Do not begin or end the object name with an underscore (_).

  • Do not use multiple contiguous underscores (__) anywhere in the object name.

5.4.4 Other Naming Guidelines

  • In general, we recommend that you avoid using reserved names or words as names of Storage objects in order to avoid confusion.

    For example, the following case-insensitive names are reserved names on NetWare:

    • ALL
    • AUX
    • CLOCK
    • COM1
    • COM2
    • COM3
    • COM4
    • CON
    • LPT1
    • LPT2
    • LPT3
    • NETQ
    • NSS_ADMIN
    • NUL
    • PIPE
    • PRN
    • SYS (This is the default name of the system pool and volume on NetWare.)
  • Some characters on Linux, such as the ampersand (&), dollar sign ($), exclamation point (!), and number sign (#) characters, can cause problems in some configuration files, command line utilities, applications, and scripts. You might need to use different techniques in each case to make the name be accepted in the manner intended. Refer to the documentation for the specific consumer application or utility to find how to treat names that contain special characters in that environment.

    To avoid this extra effort, we recommend that you avoid using special characters in names of Storage objects.

  • Because the “at sign” (@) character (also called “the at symbol”) is an element of electronic mail addresses, such as code@engineer.com, it might cause confusion and possible problems in a Storage object name. A Web browser or other application could mistake it for an e-mail address.

    We recommend that you do not use the @ character in Storage object names.

  • The percent character (%) might cause problems if it is passed in a format string to an application routine that uses it to delineate parameters. For example, if a volume name that contains the percent character, such as store%sales, is passed to an (s)printf routine, the (s)printf routine might look for parameters that are not there and crash.

    We recommend that you do not use the percent character in Storage object names.

  • If spaces are used in User or Group object names, you must enclose the object name in double quotation marks (") in order for it to be recognized in command line utilities, scripts, and applications.

  • If special characters are used in User or Group object names and passwords, you might need to use different escape techniques in command line utilities (such as Bash on Linux) to make the name be accepted in the manner intended. Refer to the documentation for the specific command line utility to find how to escape special characters in that environment.

    For example, enclosing the name in double quotation marks and preceding the character with a backslash are common techniques for escaping special characters when parsing command lines.

    To avoid this extra effort, we recommend that you avoid using special characters in names of User and Group objects and in passwords.

5.4.5 UTF-8 Naming Considerations in Mixed-Language Environments (NetWare)

NSS supports UTF-8 (8-bit Unicode Transformation Format) compatible filenames. Unicode allows the characters for multiple languages to be represented using a single Unicode representation. We recommend that you use the same language environments on the server and on the client workstations that access the server. UTF-8 support is enabled by default in the Novell Client™ 4.91 SP2 for Windows and later.

In NetWare 6.5 SP1 or earlier versions of NetWare, NSS used code-page translation to access the file system information on the server. The best practice was to use the same code pages on the servers and clients. However, workstation clients could use any local code page settings to read and write file system data to the server. Because each workstation might use a different code page, it was possible for file system data to be stored at the server based on different code pages. Unfortunately, this practice resulted in behavior that appeared to work, but in reality, it stored the wrong Unicode values in the NSS filenames. Users had to change their local code pages to see the names of the files as stored by another user with a different code page. The solution to this issue was for Novell to move to UTF-8 in NetWare 6.5 SP2.

If you upgrade data from NetWare 6.5 SP1 or earlier versions where you allowed users to use different local language codes than the language code of the server, you might encounter filename problems. For information, see Supporting Mixed Language Environments with Novell NetWare (TID 10097059) in the Novell Support Knowledgebase.