DOVEADM-QUOTA(1)
π DOVEADM-QUOTA β the doveadm quota page, but make it make sense π
okay bestie, sit down, hydrate, and let me tell you about doveadm-quota(1) β the Dovecot command that initializes, recalculates, or shows your current quota usage. She's giving housekeeping. She's giving "your mailbox is 87% full and you need to know about it". Iconic. π
β¨ NAME β¨
doveadm-quota β initialize/recalculate or show current quota usage
πΈ SYNOPSIS πΈ
doveadm [GLOBAL OPTIONS] [-f formatter] quota [-S socket_path] command -A
doveadm [GLOBAL OPTIONS] [-f formatter] quota [-S socket_path] command -F file
doveadm [GLOBAL OPTIONS] [-f formatter] quota [-S socket_path] command --no-userdb-lookup
doveadm [GLOBAL OPTIONS] [-f formatter] quota [-S socket_path] command -u user
π¦ DESCRIPTION π¦
So the whole thing is basically "which users are we doing this for?" and there are four answers, one per synopsis form. Let me break it down:
- First form β the command gets performed for all users. Everybody. The whole group chat. π
- Second form β the command gets performed for all users listed in the given file.
- Third form β the command gets performed for the user contained in the
USERenvironment variable. - Last form β the command affects only the matching user(s).
π«Ά Real talk: thequota getandquota recalccommands are only available when the globalmail_pluginssetting contains thequotaplugin. No plugin, no quota commands. That's the vibe check.
π GLOBAL OPTIONS π
These are the global doveadm(1) options, bestie:
-Dβ Enables verbosity and debug messages. She's chatty and she's telling you everything.-Oβ Do not read any config file, just use defaults. Thedovecot_storage_versionsetting defaults to the latest version, but you can override it with-o. Rawdogging the defaults, respectfully.-kβ Preserve entire environment fordoveadm, not just theimport_environmentsetting.-vβ Enables verbosity, including progress counter. Little progress bar moment. β-iinstance-name β If you're using multiple Dovecot instances, choose the config file based on this instance name. See theinstance_namesetting for more information.-cconfig-file β Read configuration from the given config-file. By default it first reads the config socket, and then falls back to/etc/dovecot/dovecot.conf. You can also point this to the config socket of some instance running a compatible version.-osetting=value β Overrides the configuration setting from/etc/dovecot/dovecot.confand from the userdb with the given value. To override multiple settings, you can specify the-ooption multiple times. Stack 'em. π₯-fformatter β Specifies the formatter for formatting the output. The supported formatters are:flowβ prints each line withkey=valuepairs.jsonβ prints a JSON array of JSON objects.pagerβ prints eachkey: valuepair on its own line and separates records with form feed character (^L).tabβ prints a table header followed by tab separated value lines.tableβ prints a table header followed by adjusted value lines.
β¨ OPTIONS β¨
-Aβ If the-Aoption is present, the command will be performed for all users. Using this option in combination with system users fromuserdb { driver = passwd }is not recommended, because it contains also users with a lower UID than the one configured with thefirst_valid_uidsetting. π¨
When the SQL userdb module is used, make sure that the userdb_sql_iterate_query setting matches your database layout.
When using the LDAP userdb module, make sure that the userdb_fields setting and userdb_ldap_iterate_fields setting match your LDAP schema. Otherwise doveadm(1) will be unable to iterate over all users. π
-Ffile β Execute the command for all the users in the file. This is similar to the-Aoption, but instead of getting the list of users from the userdb, they are read from the given file. The file contains one username per line.--no-userdb-lookupβ Do not perform userdb lookup. Use theUSERenvironment variable to specify the username.-Ssocket_path β The option's argument is either an absolute path to a local UNIX domain socket, or a hostname and port (hostname:port), in order to connect a remote host via a TCP socket.
This allows an administrator to execute doveadm(1) mail commands through the given socket.
-uuser/mask β Run the command only for the given user. It's also possible to use'*'and'?'wildcards (e.g.-u *@example.org). Globbing but make it mail admin. π
π COMMANDS π
quota get π
doveadm [GLOBAL OPTIONS] quota get [-A | -u user | -F file]
The quota get command is used to display the current quota usage. The storage values are reported in kilobytes.
This command uses by default the output formatter table.
quota recalc π§
doveadm [GLOBAL OPTIONS] quota recalc [-A | -u user | -F file]
The quota recalc command is used to recalculate the current quota usage. She's doing the math so you don't have to.
πΈ FILES πΈ
/etc/dovecot/dovecot.confβ Dovecot's main configuration file, including thedictsection./etc/dovecot/conf.d/10-mail.confβ Mailbox locations and namespaces./etc/dovecot/conf.d/90-quota.confβ Quota configuration.
π EXAMPLE π
Get the current quota usage of user jane:
doveadm quota get -u jane
Quota name Type Value Limit %
user STORAGE 90099 102400 87
user MESSAGE 20548 30000 68
Look at Jane. 87% of her storage and 68% of her messages. Jane is living. π
π¨ REPORTING BUGS π¨
Report bugs, including doveconf -n output, to the Dovecot Mailing List β¨dovecot@dovecot.orgβ©. Information about reporting bugs is available at: β¨https://dovecot.org/bugreport.htmlβ©
bestie, include the doveconf -n output. It's not optional, it's the whole point. π«Ά
π₯ SEE ALSO π₯
and that's the page, bestie!! this one's Dovecot, version f979264, dated April 2026 β go forth and check your quota, you absolute main character. πβ¨π
π¦ where this page comes from
- alpine 3.23: dovecot-doc 2.4.5-r0 Β· MIT AND LGPL-2.1-or-later
- alpine 3.24: dovecot-doc 2.4.5-r0 Β· MIT AND LGPL-2.1-or-later
- arch rolling: dovecot 2.4.5-1 Β· MIT AND LGPL-2.1-only
- fedora 43: dovecot 1:2.4.5-1.fc43 Β· MIT AND LGPL-2.1-only
- fedora 44: dovecot 1:2.4.5-1.fc44 Β· MIT AND LGPL-2.1-only
- nixos 26.05: dovecot 2.4.5
- nixpkgs unstable: dovecot 2.4.5
- opensuse-leap 16.0: dovecot24 2.4.5-160000.1.1 Β· BSD-3-Clause AND LGPL-2.1-or-later AND MIT
- opensuse-leap 16.0: dovecot24 2.4.5-160000.1.1 Β· BSD-3-Clause AND LGPL-2.1-or-later AND MIT
- opensuse-leap 16.0: dovecot24 2.4.5-160000.1.1 Β· BSD-3-Clause AND LGPL-2.1-or-later AND MIT
- opensuse-leap 16.0: dovecot24 2.4.5-160000.1.1 Β· BSD-3-Clause AND LGPL-2.1-or-later AND MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms