Skip to content

Commit

Permalink
man: doveadm-fs - Update new syntax and add mail fs commands
Browse files Browse the repository at this point in the history
  • Loading branch information
sirainen committed Feb 2, 2024
1 parent 1a8237a commit f1b5ccc
Showing 1 changed file with 60 additions and 27 deletions.
87 changes: 60 additions & 27 deletions source/man/doveadm-fs.1.rst.in
Original file line number Diff line number Diff line change
Expand Up @@ -9,40 +9,64 @@ NAME

doveadm-fs - Interact with the abstract mail storage filesystem

doveadm-mail-fs - Interact with the abstract mail storage filesystem in user context

SYNOPSIS
========

**doveadm** [**-Dv**] [**-f** *formatter*] **fs** *command* [*ARGUMENTS*]
**doveadm** [**-Dv**] [**-f** *formatter*] **fs** *command* *config-filter-name* [*arguments*]

**doveadm** [**-Dv**] [**-f** *formatter*] **mail fs** *command* [*options*] *config-filter-name* [*arguments*]

DESCRIPTION
===========

The **doveadm fs** *commands* are used to abstractly interact with the
The **doveadm fs** and **doveadm mail fs** *commands* are used to abstractly interact with the
storage backend defined in the Dovecot configuration. It allows access
to the mailbox structure without needing to know details of how the
storage backend is designed.

The **doveadm mail fs** commands can be used within a specific user context.
This may be useful if e.g. userdb lookup returns user-specific fs settings.
Otherwise the commands behave identically.

*config-filter-name*
Filter name to use when looking up the fs settings. For example
*mail_attachment*, *obox*, *metacache*, *fts_dovecot*. It's also
possible to use an empty filter name and specify the fs settings using
the **-o** parameters.

.. include:: global-options-formatter.inc

This command uses by default the **table** output formatter.
**doveadm mail fs** command specific *options*:

.. include:: option-A.inc

.. include:: option-F-file.inc

.. include:: option-S-socket.inc

.. include:: option-u-user.inc

If you have multiple fs drivers, you start by having the first driver in
*fs-driver* and the rest of the pipeline as-is in *fs-args*.

COMMANDS
========

fs copy
-------
copy
----

**doveadm fs copy** *fs-driver* *fs-args* *source-path* *dest-path*
**doveadm fs copy** *config-filter-name* *source-path* *dest-path*

**doveadm mail fs copy** [**-A** | **-u** *user* | **-F** *file*] [**-S** *socket_path*] *config-filter-name* *source-path* *dest-path*

Copy source path to the destination path.

fs delete
---------
delete
------

**doveadm fs delete** [**-R**] [**-n** *count*] *config-filter-name* *path* [*path* ...]

**doveadm fs delete** [**-R**] [**-n** *count*] *fs-driver* *fs-args* *path* [*path* ...]
**doveadm mail fs delete** [**-A** | **-u** *user* | **-F** *file*] [**-S** *socket_path*] [**-R**] [**-n** *count*] *config-filter-name* *path* [*path* ...]

Delete all data associated with the path provided.

Expand All @@ -51,32 +75,39 @@ Delete all data associated with the path provided.
**-n** *count*
Maximum number of parallel operations to perform.

fs get
------
get
---

**doveadm fs get** *fs-driver* *fs-args* *path*
**doveadm fs get** *config-filter-name* *path*

**doveadm mail fs get** [**-A** | **-u** *user* | **-F** *file*] [**-S** *socket_path*] *config-filter-name* *path*

Retrieve data associated with the path provided.

fs iter
-------
iter
----

**doveadm fs iter** *config-filter-name* *path*

**doveadm fs iter** *fs-driver* *fs-args* *path*
**doveadm mail fs iter** [**-A** | **-u** *user* | **-F** *file*] [**-S** *socket_path*] *config-filter-name* *path*

Iterate through all data files in the path provided.

fs iter-dirs
------------
iter-dirs
---------

**doveadm fs iter-dirs** *config-filter-name* *path*

**doveadm fs iter-dirs** *fs-driver* *fs-args* *path*
**doveadm mail fs iter-dirs** [**-A** | **-u** *user* | **-F** *file*] [**-S** *socket_path*] *config-filter-name* *path*

Iterate through all directories in the path provided.

fs put
------
put
---

**doveadm fs put** [**-h** *hash*] *fs-driver* *fs-args* *input_path*
*path*
**doveadm fs put** [**-h** *hash*] *config-filter-name* *input_path* *path*

**doveadm mail fs put** [**-h** *hash*] [**-A** | **-u** *user* | **-F** *file*] [**-S** *socket_path*] *config-filter-name* *input_path* *path*

Store data at the path provided.

Expand All @@ -86,10 +117,12 @@ Store data at the path provided.
Assign a value to a metadata. Can be provided as many times as needed. Requires
either metawrap as driver or metadata capable FS-driver.

fs stat
-------
stat
----

**doveadm fs stat** *config-filter-name* *path*

**doveadm fs stat** *fs-driver* *fs-args* *path*
**doveadm mail fs stat** [**-A** | **-u** *user* | **-F** *file*] [**-S** *socket_path*] *config-filter-name* *path*

Retrieve files status for the path provided. Currently, only the total
size (in bytes) of the item is returned.
Expand Down

0 comments on commit f1b5ccc

Please sign in to comment.