-
Notifications
You must be signed in to change notification settings - Fork 23
doveadm rmb plugin
doveadm rmb is the Dovecot Ceph storage plugin administration utiltiy, which basically wraps the rmb cli commands, but also provides access to the index management of Dovecot. Execute doveadm rmb
for a command usage listing.
- -D
-
Enables verbosity and debug messages.
- -f formatter
-
Specifies the formatter for formatting the output. Supported formatters are:
- flow
-
Prints each line with key=value pairs
- pager
-
Prints each key value pair on its own line and separates records with from feed character.
- table
-
Prints a table header fallowed by adjusted value lines
- -o setting=value
-
Overrides the configuration setting from /etc/dovecot/dovecot.conf and from the userdb with the given value. In order to override multiple settings, the -o option may be specified multiple times.
- -v
-
Enables verbosity, including progress counter.
Command specific options:
- -u user/mask
-
Run the command only for the given user. It’s also possible to use '*' and '?' wildcards (e.g. -u *@example.org). When neither the *-A* option, nor the -F file option, nor the -u user was specified, the command will be executed with the environment of the currently logged in user.
- -A
-
If the -A option is present, the command will be performed for all users. Using this option in combination with system users from userdb { driver = passwd } is not recommended, because it contains also users with a lower UID than the one configured with the first_valid_uid setting.
When the SQL userdb module is used make sure that the iterate_query setting in /etc/dovecot/dovecot-sql.conf.ext matches your database layout. When using the LDAP userdb module, make sure that the iterate_attrs and iterate_filter settings in /etc/dovecot/dovecot-ldap.conf.ext match your LDAP schema. Otherwise doveadm(1) will be unable to iterate over all users. - -F file
-
Execute the command for all the users in the file. This is similar to the -A option, 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.
- -S socket_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 mail commands through the given socket.
For the possible arguments and their meaning have a look at the rmb cli page.
- check indices [-u user|-A|-F file] [-S socket_path]
-
doveadm rmb specific command, system will check if there are objects in RADOS which are not in the index files, and vice versa.
⚠️ This is a costly operation, because we are scanning the object storage namespace of a user. - doveadm rmb config create | show | update -u user [-S socket_path]
-
Allows the creation of the dovecot plugin ceph configuration, for details see rmb cli documentation.
- doveadm rmb delete -u user [-S socket_path] <oid>
-
Deletes the object with given <oid> from RADOS. The Dovecot index data will not be updated.
⚠️ This command will not ask for confirmation! - doveadm rmb ls [-u user|-A|-F file] [-S socket_path] - | key=value
-
List objects in RADOS storage. For more information have a look at rmb cli documentation.
⚠️ This command does not use the index files, it scans the object storage. - doveadm rmb get [-u user|-A|-F file] [-S socket_path] - | key=value
-
Allows the download of objects from RADOS storage to a local directory. The command will only download the objectfile (original mail) without metadata. If you need to do a backup use
doveadm backup
. - doveadm rmb set -u user [-S socket_path] oid key=value
-
Allows the update of metadata attributes. See rmb cli documentation for details.
- doveadm rmb ls mb [-u user|-A|-F file] [-S socket_path]
-
Displays the user mailboxes with some stats.
⚠️ This command does not use the index files, it scans the object storage. - doveadm rmb lspools -u user [-S socket_path]
-
List all storage pools. The user will be ignored.
⚠️ This command does not use the index files, it scans the object storage. - doveadm rmb mailbox delete [-u user|-A|-F file] [-S socket_path] [-s] [-r] [-e] [-Z] mailbox …
-
This command wraps the doveadm mailbox delete command. In case you are using namespace indirection this command will delete the user namespace file, if all mailboxes are empty.
- doveadm rmb rename -u user [-S socket_path] new-username
-
Allows the renaming of a user if namespace indirection is active. Only the RADOS namespace indirection will be changed. The users home directory will noch be renamed.
- doveadm rmb revert -u user [-S socket_path] /path/to/save_log
-
Used to clean up all objects given in save_log. For more information, have a look at rmb cli documentation and rbox configuration. The
save_log
will be recorded by the rbox storage if requested by configuration. It contains information RADOS object creation and manipulation. Thesave_log
has three command types: save, copy and move.
The user from-u user
will be ignored because the user information from the save_log will be used.
Duringsave_log
replay the recorded operations will be reverted as much as possible:- save
-
Objects will be deleted
- copy
-
Objects will be deleted
- move
-
The rbox plugin does not change the mail object when it is moved between the user’s mailboxes. It only creates a new index entry and removes the old. The doveadm save_log command will restore the original index entry for the moved mail.