salt.modules.mac_user

Manage users on Mac OS 10.7+

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.mac_user.add(name, uid=None, gid=None, groups=None, home=None, shell=None, fullname=None, createhome=True, **kwargs)

Add a user to the minion

CLI Example:

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

Change the user's Full Name

CLI Example:

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

Change the default group of the user

CLI Example:

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

Change the groups to which the user belongs. Note that the user's primary group does not have to be one of the groups passed, membership in the user's primary group is automatically assumed.

groups

Groups to which the user should belong, can be passed either as a python list or a comma-separated string

append

Instead of removing user from groups not included in the groups parameter, just add user to any groups for which they are not members

CLI Example:

salt '*' user.chgroups foo wheel,root
salt.modules.mac_user.chhome(name, home, **kwargs)

Change the home directory of the user

CLI Example:

salt '*' user.chhome foo /Users/foo
salt.modules.mac_user.chshell(name, shell)

Change the default shell of the user

CLI Example:

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

Change the uid for a named user

CLI Example:

salt '*' user.chuid foo 4376
salt.modules.mac_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.mac_user.disable_auto_login()

New in version 2016.3.0.

Disables auto login on the machine

Returns:

True if successful, otherwise False

Return type:

bool

CLI Example:

salt '*' user.disable_auto_login
salt.modules.mac_user.enable_auto_login(name, password)

New in version 2016.3.0.

Configures the machine to auto login with the specified user

Parameters:
  • name (str) -- The user account use for auto login

  • password (str) --

    The password to user for auto login

    New in version 2017.7.3.

Returns:

True if successful, otherwise False

Return type:

bool

CLI Example:

salt '*' user.enable_auto_login stevej
salt.modules.mac_user.get_auto_login()

New in version 2016.3.0.

Gets the current setting for Auto Login

Returns:

If enabled, returns the user name, otherwise returns False

Return type:

str, bool

CLI Example:

salt '*' user.get_auto_login
salt.modules.mac_user.getent(refresh=False)

Return the list of all info for all users

CLI Example:

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

Return user information

CLI Example:

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

Return a list of groups the named user belongs to.

name

The name of the user for which to list groups. Starting in Salt 2016.11.0, all groups for the user, including groups beginning with an underscore will be listed.

Changed in version 2016.11.0.

CLI Example:

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

Return a list of all users

CLI Example:

salt '*' user.list_users
salt.modules.mac_user.primary_group(name)

Return the primary group of the named user

New in version 2016.3.0.

CLI Example:

salt '*' user.primary_group saltadmin
salt.modules.mac_user.rename(name, new_name)

Change the username for a named user

CLI Example:

salt '*' user.rename name new_name