salt.modules.pw_user

Manage users with the useradd command

Important

If you feel that Salt should be using this module to manage users on a minion, and it is using a different module (or gives an error similar to 'user.info' is not available), see here.

salt.modules.pw_user.add(name, uid=None, gid=None, groups=None, home=None, shell=None, unique=True, fullname='', roomnumber='', workphone='', homephone='', createhome=True, loginclass=None, **kwargs)

Add a user to the minion

CLI Example:

salt '*' user.add name <uid> <gid> <groups> <home> <shell>
salt.modules.pw_user.chfullname(name, fullname)

Change the user's Full Name

CLI Example:

salt '*' user.chfullname foo "Foo Bar"
salt.modules.pw_user.chgid(name, gid)

Change the default group of the user

CLI Example:

salt '*' user.chgid foo 4376
salt.modules.pw_user.chgroups(name, groups, append=False)

Change the groups to which a user belongs

name
Username to modify
groups
List of groups to set for the user. Can be passed as a comma-separated list or a Python list.
append
: False
Set to True to append these groups to the user's existing list of groups. Otherwise, the specified groups will replace any existing groups for the user.

CLI Example:

salt '*' user.chgroups foo wheel,root True
salt.modules.pw_user.chhome(name, home, persist=False)

Set a new home directory for an existing user

name
Username to modify
home
New home directory to set
persist
: False
Set to True to prevent configuration files in the new home directory from being overwritten by the files from the skeleton directory.

CLI Example:

salt '*' user.chhome foo /home/users/foo True
salt.modules.pw_user.chhomephone(name, homephone)

Change the user's Home Phone

CLI Example:

salt '*' user.chhomephone foo "7735551234"
salt.modules.pw_user.chloginclass(name, loginclass, root=None)

Change the default login class of the user

New in version 2016.3.5.

CLI Example:

salt '*' user.chloginclass foo staff
salt.modules.pw_user.chroomnumber(name, roomnumber)

Change the user's Room Number

CLI Example:

salt '*' user.chroomnumber foo 123
salt.modules.pw_user.chshell(name, shell)

Change the default shell of the user

CLI Example:

salt '*' user.chshell foo /bin/zsh
salt.modules.pw_user.chuid(name, uid)

Change the uid for a named user

CLI Example:

salt '*' user.chuid foo 4376
salt.modules.pw_user.chworkphone(name, workphone)

Change the user's Work Phone

CLI Example:

salt '*' user.chworkphone foo "7735550123"
salt.modules.pw_user.delete(name, remove=False, force=False)

Remove a user from the minion

CLI Example:

salt '*' user.delete name remove=True force=True
salt.modules.pw_user.get_loginclass(name)

Get the login class of the user

New in version 2016.3.0.

CLI Example:

salt '*' user.get_loginclass foo
salt.modules.pw_user.getent(refresh=False)

Return the list of all info for all users

CLI Example:

salt '*' user.getent
salt.modules.pw_user.info(name)

Return user information

CLI Example:

salt '*' user.info root
salt.modules.pw_user.list_groups(name)

Return a list of groups the named user belongs to

CLI Example:

salt '*' user.list_groups foo
salt.modules.pw_user.list_users()

Return a list of all users

CLI Example:

salt '*' user.list_users
salt.modules.pw_user.rename(name, new_name)

Change the username for a named user

CLI Example:

salt '*' user.rename name new_name