DOVEADM-DEDUPLICATE(1) Dovecot DOVEADM-DEDUPLICATE(1)

doveadm-deduplicate - پاک‌سازی پیام‌های تکراری

doveadm [GLOBAL OPTIONS] deduplicate [-u user | -A | -F file | --no-userdb-lookup] [-S socket_path] [-m] search_query

این دستور برای پاک‌سازی و حذف پیام‌های تکراری در صندوق‌های پستی استفاده می‌شود. doveadm deduplicate عمدتاً برای بازگرداندن تغییرات ناشی از ایجاد تصادفی پیام‌های تکراری، مانند پس از اجرای doveadm copy یا doveadm import، کاربرد دارد. دستور doveadm(1) جدیدترین پیام‌های تکراری را از صندوق پستی حذف کرده و قدیمی‌ترین آن‌ها را نگه می‌دارد.

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

گزینه‌های سراسری doveadm(1):

-D

حالت پرگویی (verbosity) و نمایش پیام‌های اشکال‌زدایی (debug) را فعال می‌کند.

-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 می‌تواند چندین بار مشخص شود.

-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 برای مشخص کردن نام کاربری استفاده می‌کند.

-m

اگر گزینهٔ -m مشخص شود، doveadm(1) حذف موارد تکراری را بر اساس سرآیند Message-Id انجام خواهد داد. به‌طور پیش‌فرض، حذف پیام‌های تکراری بر اساس شناسهٔ یکتای پیام‌ها (GUID) انجام می‌شود.

-S socket_path

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

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

-u user/mask

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

search_query

پیام‌های تکراری یافت‌شده از میان پیام‌های منطبق با عبارت جستجوی داده‌شده را پاک‌سازی می‌کند. معمولاً یک عبارت جستجو مانند 'mailbox mailbox_name OR mailbox other_box' کافی خواهد بود. برای جزئیات بیشتر doveadm-search-query(7) را ببینید.

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

doveadm -f table fetch -u jane 'guid uid' mailbox a_Box | sort
guid                             uid
8aad0f0a30169f4bea620000ca356bad 18751
8aad0f0a30169f4bea620000ca356bad 18756
923e301ab9219b4b4f440000ca356bad 18748
923e301ab9219b4b4f440000ca356bad 18753
doveadm deduplicate -u jane mailbox a_Box
doveadm -f table fetch -u jane 'guid uid' mailbox a_Box | sort
guid                             uid
8aad0f0a30169f4bea620000ca356bad 18751
923e301ab9219b4b4f440000ca356bad 18748
a7999e1530739c4bd26d0000ca356bad 18749

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

doveadm(1), doveadm-import(1)

May 2026 e5ac02a