Purpose
Creates a user account
Synopsis
uss add -user <login name> [-realname <full name in quotes>] [-pass <initial password>] [-pwexpires <password expires in [0..254] days (0 => never)>] [-server <FileServer for home volume>] [-partition <FileServer's disk partition for home volume>] [-mount <home directory mount point>] [-uid <uid to assign the user>] [-template <pathname of template file>] [-verbose] [-var <auxiliary argument pairs (Num val)>+] [-cell <cell name>] [-admin <administrator to authenticate>] [-dryrun] [-skipauth] [-overwrite] [-help] uss ad -us <login name> [-r <full name in quotes>] [-pas <initial password>] [-pw <password expires in [0..254] days (0 => never)>] [-se <FileServer for home volume>] [-par <FileServer's disk partition for home volume>] [-m <home directory mount point>] [-ui <uid to assign the user>] [-t <pathname of template file>] [-ve] [-va <auxiliary argument pairs (Num val)>+] [-c <cell name>] [-a <administrator to authenticate>] [-d] [-sk] [-o] [-h]
Description
The uss add command creates entries in the Protection Database and Authentication Database for the user name specified by the -user argument. By default, the Protection Server automatically allocates an AFS user ID (UID) for the new user; to specify an alternate AFS UID, include the -uid argument. If a password is provided with the -pass argument, it is stored as the user's password in the Authentication Database after conversion into a form suitable for use as an encryption key. Otherwise, the string changeme is assigned as the user's initial password.
The other results of the command depend on which instructions and which of a defined set of variables appear in the template file specified with the -template argument. Many of the command's arguments supply a value for one of the defined variables, and failure to provide an argument when the corresponding variable appears in the template file halts the account creation process at the point where the command interpreter first encounters the variable in the template file.
To create multiple accounts with a single command, use the uss bulk command. To delete accounts with a single command, use the uss delete command.
Options
Corresponding variable in the template file: $USER.
Corresponding variable in the template file: $NAME. Many operating systems include a field for the full name in a user's entry in the local password file (/etc/passwd or equivalent), and this variable can be used to pass a value to be used in that field.
Corresponding variable in the template file: none.
When the password becomes invalid (expires), the user is unable to authenticate, but has 30 more days in which to issue the kpasswd command to change the password (after that, only an administrator can change it).
Corresponding variable in the template file: $PWEXPIRES.
Corresponding variable in the template file: $SERVER.
/vicepa = vicepa = a = 0 /vicepb = vicepb = b = 1
After /vicepz (for which the index is 25) comes
/vicepaa = vicepaa = aa = 26 /vicepab = vicepab = ab = 27
and so on through
/vicepiv = vicepiv = iv = 255
Corresponding variable in the template file: $PART.
Specify the read/write path to the directory, to avoid the failure that results from attempting to create a new mount point in a read-only volume. By convention, the read/write path is indicated by placing a period before the cell name at the pathname's second level (for example, /afs/.abc.com). For further discussion of the concept of read/write and read-only paths through the filespace, see the fs mkmount reference page.
Corresponding variable in template: $MTPT, but in the template file's V instruction only. Occurrences of the $MTPT variable in template instructions that follow the V instruction take their value from the V instruction's mount_point field. Thus the value of this command line argument becomes the value for the $MTPT variable in instructions that follow the V instruction only if the string $MTPT appears alone in the V instruction's mount_point field.
Corresponding variable in the template file: $UID.
If the issuer provides a filename other than uss.template but without a pathname, the command interpreter searches for it in the indicated directories. If the issuer provides a full or partial pathname, the command interpreter consults the specified file only; it interprets partial pathnames relative to the current working directory.
If the specified template file is empty (zero-length), the command creates Protection and Authentication Database entries only.
The uss Template File reference page details the file's format.
Corresponding variables in the template file: $1 through $9.
For each instance of this argument, provide two parts in the indicated order, separated by a space:
See the chapter on uss in the IBM AFS Administration Guide for further explanation.
Examples
The combination of the following example uss add command and V instruction in a template file called uss.tpl creates Protection and Authentication Database entries named smith, and a volume called user.smith with a quota of 2500 kilobyte blocks, mounted at the pathname /afs/abc.com/usr/smith. The access control list (ACL) on the mount point grants smith all rights.
The issuer of the uss add command provides only the template file's name, not its complete pathname, because it resides in the current working directory. The command and V instruction appear here on two lines only for legibility; there are no line breaks in the actual instruction or command.
V user.$USER $SERVER.abc.com /vice$PART $1 \ /afs/abc.com/usr/$USER $UID $USER all % uss add -user smith -realname "John Smith" -pass js_pswd -server fs2 \ -partition b -template uss.tpl -var 1 2500
Privilege Required
The issuer (or the user named by the -admin argument) must belong to the system:administrators group in the Protection Database and must have the ADMIN flag turned on in his or her Authentication Database entry.
If the template contains a V instruction, the issuer must be listed in the /usr/afs/etc/UserList file and must have at least a (administer) and i (insert) permissions on the ACL of the directory that houses the new mount point. If the template file includes instructions for creating other types of objects (directories, files or links), the issuer must have each privilege necessary to create them.
Related Information