================= Managing accounts ================= useradd ------- .. program:: vmm useradd Syntax: | **vmm useradd** *address* [**-n** *note*] [**-p** *password*] | **vmm ua** *address* [**-n** *note*] [**-p** *password*] .. option:: -n note the note that should be set .. option:: -p password the new user's password Use this subcommand to create a new e-mail account for the given *address*. If the password is not provided, :command:`vmm` will prompt for it interactively. When no *password* is provided and *account.random_password* is set to **true**, :command:`vmm` will generate a random password and print it to stdout after the account has been created. Example: .. code-block:: console root@host:~# vmm ua d.user@example.com -p "A 5ecR3t P4s5\/\/0rd" root@host:~# vmm useradd e.user@example.com Enter new password: Retype new password: userdelete ---------- .. program:: vmm userdelete Syntax: | **vmm userdelete** *address* [**‒‒delete-directory**] [**‒‒force**] | **vmm ud** *address* [**‒‒delete-directory**] [**‒‒force**] .. option:: --delete-directory When this option is present, :command:`vmm` will also delete the account's home directory. This overrides the *account.delete_directory* setting of :file:`vmm.cfg`. .. option:: --force When this option is given, :command:`vmm` will delete the account, even if there are aliases with the account's address as their destination. Those aliases will be deleted too. Use this subcommand to delete the account with the given *address*. If there are one or more aliases with an identical destination address, :command:`vmm` will abort the requested operation and show an error message. To prevent this, give the optional argument :option:`--force`. userinfo -------- Syntax: | **vmm userinfo** *address* [**-d** *details*] | **vmm ui** *address* [**-d** *details*] This subcommand displays some information about the account specified by *address*. If the optional argument *details* is given some more information will be displayed. Possible values for *details* are: ======= ============================================================== value description ======= ============================================================== aliases to list all alias addresses with the destination *address* du to display the disk usage of the user's mail directory. In order to summarize the disk usage each time this subcommand is executed automatically, set *account.disk_usage* in your :file:`vmm.cfg` to **true**. full to list all information mentioned above ======= ============================================================== Example: .. code-block:: console root@host:~# vmm ui d.user@example.com Account information ------------------- Address..........: d.user@example.com Name.............: None UID..............: 79881 GID..............: 70704 Home.............: /srv/mail/2/70704/79881 Mail_Location....: mdbox:~/mdbox Quota Storage....: [ 0.00%] 0/500.00 MiB [domain default] Quota Messages...: [ 0.00%] 0/10,000 [domain default] Transport........: lmtp:unix:private/dovecot-lmtp [domain default] SMTP.............: disabled [domain default] POP3.............: disabled [domain default] IMAP.............: enabled [domain default] SIEVE............: enabled [domain default] username -------- .. program:: vmm username Syntax: | **vmm username** *address* **-d** | **-n** *name* | **vmm un** *address* **-d** | **-n** *name* .. option:: -d delete the user's name .. option:: -n name a user's real name The user's real *name* can be set/updated with this subcommand. In order to delete the value stored for the account, pass the :option:`-d` option. Example: .. code-block:: console root@host:~# vmm un d.user@example.com -n "John Doe" usernote -------- .. program:: vmm usernote Syntax: | **vmm usernote** *address* **-d** | **-n** *note* | **vmm uo** *address* **-d** | **-n** *note* .. option:: -d delete the user's note .. option:: -n note the note that should be set With this subcommand, it is possible to attach a note to the specified account. In order to delete an existing note, pass the :option:`-d` option. Example: .. code-block:: console root@host:~# vmm uo d.user@example.com -n 'Only needed until end of May 2013' .. versionadded:: 0.6.0 userpassword ------------ .. program:: vmm userpassword Syntax: | **vmm userpassword** *address* ([**-p** *password*] [**-s** *scheme*] | \ [**‒‒hash** *pwhash*]) | **vmm up** *address* ([**-p** *password*] [**-s** *scheme*] | \ [**‒‒hash** *pwhash*]) .. option:: -p password The user's new password. .. option:: -s scheme When a *scheme* was specified, it overrides the *misc.password_scheme* setting, configured in the :file:`vmm.cfg` file. .. option:: --hash pwhash A hashed password, prefixed with **{**\ *SCHEME*\ **}**; as generated by :command:`doveadm pw`. You should enclose the hashed password in single quotes, if it contains one ore more dollar signs (**$**). The password of an account can be updated with this subcommand. If no *password* or *pwhash* was provided, :command:`vmm` will prompt for a password interactively. .. note:: When passing a hashed password, :command:`vmm` checks only if the included *SCHEME* is supported by your Dovecot installation. No further checks are done. Example: .. code-block:: console root@host:~# vmm up d.user@example.com -p "A |\/|0r3 5ecur3 P4s5\/\/0rd?" userquota --------- Syntax: | **vmm userquota** *address storage* [**-m** *messages*] | **vmm uq** *address storage* [**-m** *messages*] This subcommand is used to set a new quota limit for the given account. When the argument *messages* was omitted the default number of messages **0** (zero) will be applied. Instead of a *storage* limit pass the keyword **domain** to remove the account-specific override, causing the domain's value to be in effect. Example: .. code-block:: console root@host:~# userquota d.user@example.com 750m .. versionadded:: 0.6.0 userservices ------------ Syntax: | **vmm userservices** *address* ( **-e** *service ...* | \ **-d** *service ...* | **-r** ) | **vmm us** *address* ( **-e** *service ...* | \ **-d** *service ...* | **-r** ) To grant a user access to the specified services, use this command. If you pass services after -e, each *service* will be enabled/usable. If you pass services after -d, each *service* will be disabled/unsable. If you want to restore the user's services to the domain defaults, pass -r without any more arguments. Example: .. code-block:: console root@host:~# userservices d.user@example.com -d smtp imap .. _usertransport: usertransport ------------- Syntax: | **vmm usertransport** *address transport* | **vmm ut** *address transport* A different *transport* for an account can be specified with this subcommand. Instead of *transport* pass **domain** to remove the account-specific override, causing the domain's value to be in effect. Example: .. code-block:: console root@host:~# ut c.user@example.com smtp:[pc105.it.example.com]