DOVEADM(1)

πŸ’– DOVEADM πŸ’–

okay bestie, gather round, because we're talking about doveadm β€” and no, that's not the man page name I'm copying, that's just me screaming it with love. It's Dovecot's administration utility and it's genuinely the main character of this whole page. Sit down, hydrate, let's go. πŸ¦‹


✨ SYNOPSIS ✨

doveadm [-DOkv] [-i instance-name] [-c config-file] [-o key=value [ .. ]] [-f formatter] command [command_options] [command_arguments]

like. look at that. a whole little buffet of flags and then whatever command you want. slay. πŸ’…


🌸 DESCRIPTION 🌸

doveadm is the Dovecot administration tool, periodt. It's how you manage all the various parts of Dovecot, and also how you get at users' mailboxes. It does a lot, and it is not shy about it.

If you ever forget what you're doing (relatable), just run doveadm help β€” that gives you the command usage listing. chef's kiss, no notes. 😌


πŸŽ€ GLOBAL OPTIONS πŸŽ€

These are the global doveadm(1) options β€” the ones that vibe across everything:

  • -D β€” turns on verbosity and debug messages. it's giving "I want to see EVERYTHING". πŸ”₯
  • -O β€” do NOT read any config file, just roll with the defaults. the dovecot_storage_version setting defaults to the latest version, but you can still override it with -o.
  • -k β€” preserve the entire environment for doveadm, not just the import_environment setting. full vibe preservation. 🫢
  • -v β€” enables verbosity, including a progress counter. progress bars are literally so satisfying.
  • -i instance-name β€” if you're running multiple Dovecot instances, this picks the config file based on that instance name. check the instance_name setting for the deets, iykyk.
  • -c config-file β€” read configuration from the given config-file. by default it first reads config socket, and then falls back to /etc/dovecot/dovecot.conf. you can also point this at the config socket of some instance running a compatible version. flexible queen. πŸ‘‘
  • -o setting=value β€” overrides the configuration setting from /etc/dovecot/dovecot.conf and from the userdb with the given value. want to override multiple settings? just specify the -o option multiple times. stack 'em. πŸ’…
  • -f formatter β€” specifies the formatter for formatting the output. the supported formatters are:
    • flow β€” prints each line with key=value pairs.
    • json β€” prints a JSON array of JSON objects.
    • pager β€” prints each key: value pair 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.

🌈 COMMANDS 🌈

these commands work directly with Dovecot's master process. no middleman, no small talk. 😀

doveadm reload

Force dovecot(1) to reload the configuration.

doveadm stop

Stop dovecot(1) and all its child processes.


⭐ ADDITIONAL MASTER COMMANDS ⭐

doveadm config

doveconf(1), Dump Dovecot configuration.

doveadm exec

doveadm-exec(1), Easily execute commands from Dovecot's libexec_dir.

doveadm instance

doveadm-instance(1), Manage the list of running Dovecot instances.

doveadm kick

doveadm-kick(1), Disconnect users by user name and/or IP address.

doveadm log

doveadm-log(1), Locate, test or reopen Dovecot's log files.

doveadm penalty

doveadm-penalty(1), Show current penalties.

doveadm proxy

doveadm-proxy(1), Handle Dovecot proxy connections.

doveadm who

doveadm-who(1), Show who is logged into the Dovecot server.


πŸ” AUTHENTICATION COMMANDS πŸ”

doveadm auth

doveadm-auth(1), Test authentication for a user.

doveadm pw

doveadm-pw(1), Dovecot's password hash generator.

doveadm user

doveadm-user(1), Perform a user lookup in Dovecot's userdbs


πŸ“¬ MAILBOX COMMANDS πŸ“¬

doveadm acl

doveadm-acl(1), Manage Access Control List (ACL).

doveadm altmove

doveadm-altmove(1), Move matching mails to the alternative storage.

doveadm backup

doveadm-sync(1), Dovecot's one-way mailbox synchronization utility.

doveadm copy

doveadm-move(1), Copy/move messages matching the given search query into another mailbox.

doveadm deduplicate

doveadm-deduplicate(1), Expunge duplicate messages.

doveadm dump

doveadm-dump(1), Dump the content of Dovecot's binary mailbox index/log.

doveadm expunge

doveadm-expunge(1), Expunge messages matching given search query.

doveadm fetch

doveadm-fetch(1), Fetch messages matching given search query.

doveadm flags

doveadm-flags(1), Add, remove or replace messages' flags.

doveadm force-resync

doveadm-force-resync(1), Repair broken mailboxes, in case Dovecot doesn't automatically do that.

doveadm fs

doveadm-fs(1), Interact with the abstract mail storage filesystem.

doveadm fts

doveadm-fts(1), Manipulate the Full Text Search (FTS) index.

doveadm import

doveadm-import(1), Import messages matching given search query.

doveadm index

doveadm-index(1), Index messages in a given mailbox.

doveadm mail fs

doveadm-mail-fs(1), Interact with the abstract mail storage filesystem in a user context.

doveadm mailbox

doveadm-mailbox(1), Various commands related to handling mailboxes.

doveadm mailbox cryptokey

doveadm-mailbox-cryptokey(1), Mail crypt plugin management.

doveadm move

doveadm-move(1), Move messages matching the given search query into another mailbox.

doveadm purge

doveadm-purge(1), Remove messages with refcount=0 from mdbox files.

doveadm quota

doveadm-quota(1), Initialize/recalculate or show current quota usage.

doveadm rebuild

doveadm-rebuild(1), Rebuild index metadata from message data.

doveadm save

doveadm-save(1), Save email to users' mailboxes.

doveadm-search(1), Show a list of mailbox GUIDs and message UIDs matching given search query.

doveadm stats

doveadm-stats(1), Inspect or reset stats.

doveadm sync

doveadm-sync(1), Dovecot's two-way mailbox synchronization utility.


πŸšͺ EXIT STATUS πŸšͺ

doveadm will exit with one of the following values, and bestie, each one is a whole mood:

  • 0 β€” Selected command was executed successful. πŸŽ‰
  • 64 β€” Command line usage error. (you typed it wrong, we've all been there πŸ™ˆ)
  • 65 β€” Data format error or operation is not possible.
  • 67 β€” User does not exist.
  • 68 β€” Input file, address or other resource does not exist.
  • 73 β€” Cannot create output file.
  • 75 β€” There was some temporary error, check logs.
  • 76 β€” Protocol error during remote host connection.
  • 77 β€” Permission error.
  • 78 β€” Configuration error.
  • 127 β€” Unknown error. πŸ’€

🌿 ENVIRONMENT 🌿

  • USER β€” this environment variable is used to determine the user if a command accepts a user but none was specified. so like. it fills in the blank for you. 🫢

πŸ“ FILES πŸ“

  • /etc/dovecot/dovecot.conf β€” Dovecot's main configuration file.
  • /etc/dovecot/conf.d/10-mail.conf β€” Mailbox locations and namespaces.
  • /etc/dovecot/conf.d/90-plugin.conf β€” Plugin specific settings.

πŸ› REPORTING BUGS πŸ›

Found a bug? First of all, thank you for your service. 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

fr fr, include that doveconf -n output or they're gonna have to ask you for it and nobody wants the extra round trip. 😭

πŸ‘€ SEE ALSO πŸ‘€


and that's the whole page, bestie!! this one's from f979264, dated April 2026 β€” so like, go forth, run your doveadm commands, be the admin main character you were always meant to be. mwah. πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from