Managing accounts


vmm useradd address [-n note] [-p password]
vmm ua address [-n note] [-p password]
-n note

the note that should be set

-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, vmm will prompt for it interactively. When no password is provided and account.random_password is set to true, vmm will generate a random password and print it to stdout after the account has been created.


root@host:~# vmm ua -p "A 5ecR3t P4s5\/\/0rd"
root@host:~# vmm useradd
Enter new password:
Retype new password:


vmm userdelete address [‒‒delete-directory] [‒‒force]
vmm ud address [‒‒delete-directory] [‒‒force]

When this option is present, vmm will also delete the account’s home directory. This overrides the account.delete_directory setting of vmm.cfg.


When this option is given, 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, vmm will abort the requested operation and show an error message. To prevent this, give the optional argument --force.


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:




to list all alias addresses with the destination address


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 vmm.cfg to true.


to list all information mentioned above


root@host:~# vmm ui
Account information
        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]


vmm username address -d | -n name
vmm un address -d | -n name

delete the user’s name

-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 -d option.


root@host:~# vmm un -n "John Doe"


vmm usernote address -d | -n note
vmm uo address -d | -n note

delete the user’s note

-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 -d option.


root@host:~# vmm uo -n 'Only needed until end of May 2013'

New in version 0.6.0.


vmm userpassword address ([-p password] [-s scheme] | [‒‒hash pwhash])
vmm up address ([-p password] [-s scheme] | [‒‒hash pwhash])
-p password

The user’s new password.

-s scheme

When a scheme was specified, it overrides the misc.password_scheme setting, configured in the vmm.cfg file.

--hash pwhash

A hashed password, prefixed with {SCHEME}; as generated by 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, vmm will prompt for a password interactively.


When passing a hashed password, vmm checks only if the included SCHEME is supported by your Dovecot installation. No further checks are done.


root@host:~# vmm up -p "A |\/|0r3 5ecur3 P4s5\/\/0rd?"


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.


root@host:~# userquota 750m

New in version 0.6.0.


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.


root@host:~# userservices -d smtp imap


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.


root@host:~# ut smtp:[]