DOVEADM-MAILBOX(1) Dovecot DOVEADM-MAILBOX(1)

doveadm-mailbox - دستورهای مربوط به مدیریت صندوق‌های پستی

doveadm [GLOBAL OPTIONS] [-f formatter] mailbox_cmd [OPTIONS] [ARGUMENTS]

از doveadm mailbox می‌توان برای پرس‌وجو و اصلاح صندوق‌های پستی استفاده کرد.

گزینه‌های عمومی doveadm(1):

-D

پُرگویی و پیام‌های اشکال‌زدایی را فعال می‌کند.

-O

هیچ فایل پیکربندی را نمی‌خواند و تنها از مقادیر پیش‌فرض استفاده می‌کند. مقدار پیش‌فرض تنظیم dovecot_storage_version برابر با آخرین نسخه است، اما با -o می‌توان آن را بازنویسی کرد.

-k

تمام محیط را برای doveadm حفظ می‌کند، نه فقط مقدار تنظیمات import_environment را.

-v

پُرگویی را فعال می‌کند، از جمله شمارشگر پیشرفت.

-i instance-name

در صورت استفاده از چندین نمونهٔ Dovecot، فایل پیکربندی بر اساس این نام نمونه انتخاب می‌شود.

برای اطلاعات بیشتر، تنظیم instance_name را ببینید.

-c config-file

پیکربندی را از config-file داده‌شده می‌خواند. به‌طور پیش‌فرض ابتدا سوکت پیکربندی را می‌خواند و در صورت عدم موفقیت، به /etc/dovecot/dovecot.conf بازمی‌گردد. همچنین می‌توانید این را به سوکت پیکربندی نمونه‌ای که یک نسخهٔ سازگار را اجرا می‌کند هدایت کنید.

-o setting=value

مقدار تنظیم پیکربندی (setting) را از /etc/dovecot/dovecot.conf و از userdb با value داده‌شده لغو و بازنویسی می‌کند. برای بازنویسی چندین تنظیم، گزینهٔ -o می‌تواند چندین بار مشخص شود.

-f formatter

قالب‌بند (formatter) را برای شکل‌دهی به خروجی مشخص می‌کند. قالب‌بندهای پشتیبانی‌شده عبارتند از:

flow

هر خط را با جفت‌های key=value چاپ می‌کند.

json

یک آرایهٔ JSON از اشیاء JSON را چاپ می‌کند.

pager

هر جفت key: value را در یک خط مجزا چاپ کرده و رکوردها را با نویسهٔ پیشروی برگه (^L) جدا می‌کند.

tab

یک سربرگ جدول و به‌دنبال آن خطوطی از مقادیر جداشده با تب (tab) را چاپ می‌کند.

table

یک سربرگ جدول و به‌دنبال آن خطوطی از مقادیر تراز شده را چاپ می‌کند.

-A

در صورت استفاده از گزینهٔ -A، command برای همهٔ کاربران اجرا خواهد شد. استفاده از این گزینه در ترکیب با کاربران سیستمی برگرفته از userdb { driver = passwd } توصیه نمی‌شود، زیرا شامل کاربرانی با UID کمتر از مقدار پیکربندی‌شده در تنظیمات first_valid_uid نیز می‌شود.

هنگامی که از ماژول SQL در userdb استفاده می‌شود، اطمینان حاصل کنید که تنظیمات userdb_sql_iterate_query با ساختار پایگاه‌دادهٔ شما مطابقت دارد.

هنگام استفاده از ماژول LDAP در userdb، مطمئن شوید که تنظیمات userdb_fields و userdb_ldap_iterate_fields با طرحوارهٔ (schema) LDAP شما مطابقت دارند. در غیر این صورت doveadm(1) قادر به پیمایش روی تمام کاربران نخواهد بود.

-F file

اجرای command برای همهٔ کاربران موجود در file. این گزینه مشابه گزینهٔ -A است، با این تفاوت که به جای دریافت فهرست کاربران از userdb، آن‌ها از file داده‌شده خوانده می‌شوند. این file در هر سطر شامل یک نام کاربری است.

--no-userdb-lookup

جستجو در userdb را انجام ندهید. از متغیر محیطی USER برای مشخص کردن نام کاربری استفاده کنید.

-S socket_path

آرگومان این گزینه یا یک مسیر مطلق به یک سوکت محلی دامنهٔ یونیکس (UNIX domain socket) است، یا یک نام میزبان و درگاه (hostname:port)، برای اتصال به یک میزبان راه دور از طریق سوکت TCP.

این به مدیر سیستم امکان می‌دهد دستورهای ایمیل doveadm(1) را از طریق سوکت داده‌شده اجرا کند.

-u user/mask

اجرای command تنها برای user مشخص‌شده. همچنین امکان استفاده از نویسه‌های عام (wildcard) «*» و «?» وجود دارد (مانند -u *@example.org).

mailbox

نام یک mailbox است، همان‌گونه که برای کلاینت‌های IMAP قابل مشاهده است، با این تفاوت که در قالب UTF-8 می‌باشد. جداکنندهٔ سلسله‌مراتبی میان یک صندوق پستی والد و فرزند معمولاً '/' یا '.' است، اما این موضوع به قالب ذخیره‌سازی انتخاب‌شده برای صندوق پستی و پیکربندی namespace شما بستگی دارد. همچنین ممکن است نام‌های صندوق پستی به یک پیشوند namespace نیاز داشته باشند.

doveadm [GLOBAL OPTIONS] mailbox create [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-g guid] [-s] mailbox...

این دستور برای ایجاد یک یا چند صندوق پستی به کار می‌رود. قالب صندوق‌های پستی ایجادشده به تنظیمات mail_driver یا فیلد mail کاربر که توسط userdb بازگردانده شده، بستگی دارد.

-g guid

ایجاد صندوق پستی با GUID مشخص‌شده.

-s

هنگامی که این گزینه مشخص شود، صندوق‌های پستی ایجادشده به اشتراک‌های (subscriptions) کاربر نیز افزوده خواهند شد.

doveadm [GLOBAL OPTIONS] mailbox cryptokey export|generate|list|password

این دستور برای مدیریت کلیدهای رمزنگاری افزونهٔ mail crypt به کار می‌رود. لطفاً برای جزئیات بیشتر به doveadm-mailbox-cryptokey(1) مراجعه کنید.

doveadm [GLOBAL OPTIONS] mailbox delete [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-s] [-r] [-e] [-Z] mailbox...

این دستور یک صندوق پستی را حذف کرده و تمام پیام‌های درون آن را به طور کامل پاکسازی (expunge) می‌کند. اگر صندوق پستی دارای هرگونه زیرمجموعه باشد، حذف نخواهند شد مگر اینکه -r داده شده باشد.

-r

حذف بازگشتی صندوق‌های پستی.

-s

لغو اشتراک صندوق‌های پستی حذف‌شده.

-e

الزام خالی بودن صندوق‌های پستی پیش از اقدام به حذف.

-Z

صندوق پستی را تا حد ممکن با بیشترین کارایی حذف می‌کند، اما ممکن است پس از آن وضعیت کاربر کاملاً سازگار (consistent) باقی نماند؛ به عنوان مثال ممکن است سهمیه (quota) نادرست باشد. این گزینه عمدتاً هنگام حذف کامل کاربر مفید است.

doveadm [GLOBAL OPTIONS] mailbox list [-7 | -8] [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-s] [mailbox ...]

برای دریافت یک دید کلی از صندوق‌های پستی موجود از این دستور استفاده کنید. همچنین امکان استفاده از نویسه‌های عام (wildcards) در نام mailbox وجود دارد.

هنگامی که گزینهٔ -s مشخص شده باشد، تنها صندوق‌های پستی مشترک‌شده فهرست خواهند شد. اشتراک‌های فهرست‌شده ممکن است شامل صندوق‌های پستی باشند که پیش از این حذف شده‌اند.

-7

صندوق‌های پستی را با رمزگذاری mUTF-7 فهرست می‌کند.

-8

صندوق‌های پستی را با رمزگذاری UTF-8 فهرست می‌کند.

doveadm [GLOBAL OPTIONS] mailbox metadata list [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-s] [-p] mailbox [key-prefix]

-s

امکان تعیین "" را برای mailbox فراهم می‌کند که به جای متاداده‌های صندوق پستی، به متاداده‌های سرور اشاره دارد. اگر mailbox چیزی غیر از یک رشتهٔ خالی باشد، این گزینه هیچ تأثیری ندارد.

-p

افزودن پیشوند به ابتدای خروجی.

mailbox

صندوق پستی هدف (اجباری). اگر -s مشخص شده باشد، می‌توان از رشتهٔ خالی "" برای نشان دادن دسترسی به متاداده‌های سرور استفاده کرد.

key-prefix

پیشوند کلید مورد نظر برای جستجو. در صورت عدم تعیین، تمام کلیدها فهرست خواهند شد.

doveadm [GLOBAL OPTIONS] mailbox metadata get [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-s] mailbox key

-s

امکان مشخص کردن "" را برای mailbox فراهم می‌کند، که به جای متادیتای صندوق‌های پستی به متادیتای سرور اشاره دارد. اگر mailbox چیزی به جز یک رشته خالی باشد، این گزینه هیچ تاثیری ندارد.

mailbox

صندوق پستی هدف (اجباری). اگر -s مشخص شده باشد، می‌توان از رشته خالی "" برای اشاره به دسترسی به متادیتای سرور استفاده کرد.

key

کلیدی که باید بازیابی شود.

doveadm [GLOBAL OPTIONS] mailbox metadata set [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-s] mailbox key value

-s

امکان مشخص کردن "" را برای mailbox فراهم می‌کند، که به جای متادیتای صندوق‌های پستی به متادیتای سرور اشاره دارد. اگر mailbox چیزی به جز یک رشته خالی باشد، این گزینه هیچ تاثیری ندارد.

mailbox

صندوق پستی هدف (اجباری). اگر -s مشخص شده باشد، می‌توان از رشته خالی "" برای اشاره به دسترسی به متادیتای سرور استفاده کرد.

key

کلیدی که باید تنظیم شود.

value

مقداری که باید تنظیم شود.

doveadm [GLOBAL OPTIONS] mailbox metadata unset [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-s] mailbox key

-s

امکان مشخص کردن "" را برای mailbox فراهم می‌کند، که به جای متادیتای صندوق‌های پستی به متادیتای سرور اشاره دارد. اگر mailbox چیزی به جز یک رشته خالی باشد، این گزینه هیچ تاثیری ندارد.

mailbox

صندوق پستی هدف (اجباری). اگر -s مشخص شده باشد، می‌توان از رشته خالی "" برای اشاره به دسترسی به متادیتای سرور استفاده کرد.

key

کلیدی که باید حذف (unset) شود.

doveadm [GLOBAL OPTIONS] mailbox mutf7 [-7 | -8] name...

دستور mailbox mutf7 می‌تواند برای تبدیل name بین‌المللی صندوق پستی به یک نسخهٔ اصلاح‌شده از کدگذاری UTF-7 و برعکس به کار رود. RFC 3501 (Mailbox International Naming Convention) را ببینید.

-7

نشان می‌دهد که بازنمایی رشته‌ای name با mUTF-7 کدگذاری شده است و باید به UTF-8 تبدیل شود.

-8

نشان می‌دهد که name با UTF-8 کدگذاری شده است و باید به mUTF-7 تبدیل شود (پیش‌فرض).

name

یک یا چند نام صندوق پستی که باید تبدیل شوند.

doveadm [GLOBAL OPTIONS] mailbox path [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-s] [-t type] mailbox

دستور mailbox path مسیر سیستم‌فایل را برای صندوق پستی مشخص‌شده بازمی‌گرداند. این مسیر به طور پیش‌فرض، مسیر دایرکتوری «index» است.

-t type

مسیر مربوط به این نوع مکان صندوق پستی را خروجی می‌دهد. یکی از موارد زیر:

  • alt-dir
  • alt-mailbox
  • control
  • dir
  • index (پیش‌فرض)
  • index-cache
  • index-private
  • list-index
  • mailbox

mailbox

صندوق پستی مورد نظر برای پرس‌وجو (اجباری).

doveadm [GLOBAL OPTIONS] mailbox rename [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-s] old_name new_name

دستور mailbox rename برای تغییر نام صندوق پستی old_name به new_name به کار می‌رود.

هنگامی که گزینهٔ -s داده شود، اشتراک old_name لغو شده و new_name مشترک می‌شود.

doveadm [GLOBAL OPTIONS] mailbox status [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [-t] fields mailbox...

نمایش status (وضعیت) یک یا چند صندوق پستی. نام mailbox می‌تواند شامل نویسه‌های عامه‌نما (wildcards) نیز باشد.

این دستور به‌طور پیش‌فرض از قالب‌بند خروجی (formatter) flow استفاده می‌کند.

-t

جمع‌بندی مقادیر فیلدهای (fields) وضعیت messages، recent، unseen و/یا vsize چند صندوق پستی در قالب یک مجموع کل (total).

fields

مشخص کردن فیلدهای (fields) وضعیتی که باید نمایش داده شوند.

به منظور مشخص کردن چندین فیلد وضعیت، آن‌ها را داخل علامت نقل‌قول قرار دهید.

all : این یک نام فیلد وضعیت ویژه است. به معنای نمایش تمام فیلدهای (fields) زیر است. هنگامی که گزینهٔ -t وجود داشته باشد، به معنای نمایش تنها فیلدهای messages، recent، unseen و vsize است.

guid : شناسهٔ یکتای سراسری (globally unique identifier) صندوق پستی (mailbox).

highestmodseq : بالاترین مقدار توالی تغییرات (mod-sequence) در بین تمام پیام‌های موجود در mailbox.

messages : تعداد پیام‌های موجود در mailbox.

deleted : تعداد پیام‌هایی که پرچم \Deleted برای آن‌ها تنظیم شده است.

recent : تعداد پیام‌هایی که پرچم \Recent برای آن‌ها تنظیم شده است.

uidnext : مقدار شناسهٔ یکتای بعدی.

uidvalidity : مقدار اعتبار شناسهٔ یکتا (unique identifier validity).

unseen : شماره توالی پیام مربوط به نخستین پیام دیده‌نشده در mailbox.

vsize : اندازهٔ مجازی mailbox، محاسبه‌شده با پایان‌دهنده‌های خط CRLF.

firstsaved : زمان ذخیره شدن نخستین نامه در صندوق پستی.

doveadm [GLOBAL OPTIONS] mailbox subscribe [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] mailbox ...

از این دستور برای مشترک شدن در یک یا چند صندوق پستی استفاده می‌شود.

doveadm [GLOBAL OPTIONS] mailbox unsubscribe [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] mailbox ...

از این دستور برای لغو اشتراک یک یا چند صندوق پستی استفاده می‌شود.

doveadm [GLOBAL OPTIONS] mailbox update [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [--mailbox-guid guid] [--uid-validity uid] [--min-next-uid uid] [--min-first-recent-uid uid] [--min-highest-modseq seq] [--min-highest-pvt-modseq seq] mailbox ...

این دستور برای تنظیم مقادیر UID validity، UID بعدی (next UID)، نخستین UID اخیر (first recent UID) و مقادیر دنباله تغییرات (modification sequence) به کار می‌رود.

معمولاً این دستور تنها در زمان مهاجرت (migration) یا بازیابی صندوق پستی پس از بروز فاجعه استفاده می‌شود. تغییر و تنظیم این مقادیر به‌هیچ‌وجه توصیه نمی‌شود و در تمام زیرساخت‌های ذخیره‌سازی ایمیل (mail backends) نیز پشتیبانی نمی‌شود.

doveadm [GLOBAL OPTIONS] mailbox cache purge [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] mailbox ...

پاک‌سازی فایل dovecot.index.cache. مهم‌ترین کاربرد این دستور، آزادسازی فضای دیسک از ایمیل‌هایی است که پیش‌تر حذف شده‌اند. معمولاً نیازی به اجرای دستی این دستور نیست، چرا که عملیات فشرده‌سازی به‌صورت خودکار نیز اجرا می‌شود.

doveadm [GLOBAL OPTIONS] mailbox cache decision [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] [--all] [--fields list of fields] [--last-used unix timestamp] [--decision no|temp|yes] mailbox ...

این دستور برای فهرست‌کردن یا تغییر تصمیم‌گیری‌های حافظه موقت (caching decisions) برای فیلد(ها) در صندوق(های) پستی استفاده می‌شود. می‌توانید با صرف‌نظر کردن از پارامترهای decision و last-used، تصمیمات فعلی را فهرست کنید.

--all

فهرست‌کردن یا تغییر تمامی فیلدها.

--fields

فهرست‌کردن یا تغییر این فیلدها که با ویرگول یا فاصله از یکدیگر جدا شده‌اند.

--decision

تنظیم تصمیم ذخیره‌سازی فیلد در حافظه موقت. مقدار Yes به این معنی است که همیشه در حافظه موقت ذخیره می‌شود. Temp به معنای ذخیره‌سازی موقت و مشروط است. No بدین معنی است که فیلد در حافظه موقت ذخیره نمی‌شود.

--last-used

تنظیم برچسب زمانی (timestamp) آخرین استفاده از فیلد.

نکته: از این دستور نمی‌توان برای افزودن فیلدهای جدید به حافظه موقت (cache) استفاده کرد! ابتدا باید آن‌ها را در پیکربندی تعریف کنید. تنظیم کش روی no فیلد را بلافاصله از حافظه موقت حذف نمی‌کند، بلکه افزودن آن به حافظه موقت را متوقف می‌سازد.

doveadm [GLOBAL OPTIONS] mailbox cache remove [-A | -u user | -F file | --no-userdb-lookup] [-S socket_path] search query

حذف هرگونه ایمیل(های) منطبق از حافظه موقت (cache).

هشدار! این دستور می‌تواند تمام داده‌های ذخیره‌شده در حافظه موقت را پاک کند و باعث کندی سیستم شود.

برای اطلاع از ساختار دستوری عبارت جستجو، doveadm-search-query(7) را ببینید.

فهرست‌کردن صندوق‌های پستیِ مشترک‌شدهٔ کاربر bob که با 'dovecot' آغاز می‌شوند:

doveadm mailbox list -s -u bob dovecot\*
dovecot
dovecot/pigeonhole
dovecot/pigeonhole/2.0

مشاهده وضعیت صندوق‌های پستی dovecot متعلق به کاربر bob:

doveadm -f table mailbox status -u bob "messages vsize" dovecot\*
mailbox                                    messages vsize
dovecot                                    20501    93968492
dovecot/pigeonhole                         0        0
dovecot/pigeonhole/2.0                     47       323474

تبدیل نام بین‌المللی یک صندوق پستی از mUTF-7 به UTF-8 و برعکس:

doveadm mailbox mutf7 -7 "~peter/mail/&U,BTFw-/&ZeVnLIqe-"
~peter/mail/台北/日本語
doveadm mailbox mutf7 ~peter/mail/台北/日本語
~peter/mail/&U,BTFw-/&ZeVnLIqe-

گزارش باگ‌ها، از جمله خروجی doveconf -n را به فهرست پستی Dovecot به نشانی ⟨dovecot@dovecot.org⟩ ارسال کنید. اطلاعات مربوط به نحوهٔ گزارش باگ‌ها در نشانی زیر در دسترس است: ⟨https://dovecot.org/bugreport.html⟩

doveadm(1)

May 2026 e5ac02a