Table 21-1 describes required mnemonic user and group names. This specification makes no attempt to numerically assign user or group identity numbers, with the exception that both the User ID and Group ID for the user root shall be equal to 0.
Table 21-1. Required User & Group Names
|root||root||Administrative user with all appropriate privileges|
|bin||bin||Legacy User ID/Group ID[a]|
|daemon||daemon||Legacy User ID/Group ID[b]|
a. The bin User ID/Group ID is included for compatibility with legacy applications. New applications should no longer use the bin User ID/Group ID.
b. The daemon User ID/Group ID was used as an unprivileged User ID/Group ID for daemons to execute under in order to limit their access to the system. Generally daemons should now run under individual User ID/Group IDs in order to further partition daemons from one another.
Table 21-2 is a table of optional mnemonic user and group names. This specification makes no attempt to numerically assign uid or gid numbers. If the username exists on a system, then they should be in the suggested corresponding group. These user and group names are for use by distributions, not by applications.
Table 21-2. Optional User & Group Names
|adm||adm||Administrative special privileges|
|lp||lp||Printer special privileges|
|sync||sync||Login to sync the system|
|shutdown||shutdown||Login to shutdown the system|
|halt||halt||Login to halt the system|
|Mail special privileges|
|news||news||News special privileges|
|uucp||uucp||UUCP special privileges|
|operator||root||Operator special privileges|
|man||man||Man special privileges|
|nobody||nobody||Used by NFS|
Only a minimum working set of "user names" and their corresponding "user groups" are required. Applications cannot assume non system user or group names will be defined.
Applications cannot assume any policy for the default file creation mask (umask) or the default directory permissions a user may have. Applications should enforce user only file permissions on private files such as mailboxes. The location of the users home directory is also not defined by policy other than the recommendations of the Filesystem Hierarchy Standard and should be obtained by the getpwnam(), getpwnam_r(), getpwent(), getpwuid(), and getpwuid_r() functions.