| EXIM(8) | System Manager's Manual | EXIM(8) |
نام (NAME)
exim - عامل انتقال پیام و ایمیل (MTA)
خلاصه دستور (SYNOPSIS)
exim [options] arguments ... mailq [options] arguments ... rsmtp [options] arguments ... rmail [options] arguments ... runq [options] arguments ... newaliases [options] arguments ...
توضیحات (DESCRIPTION)
اکسیم (Exim) یک عامل انتقال ایمیل (MTA) است که در دانشگاه کمبریج توسعه یافته است. این برنامه یک نرمافزار بزرگ با امکانات و قابلیتهای بسیار است. برای مشخصات کامل، به راهنمای مرجع مراجعه فرمایید. این صفحه راهنما فقط شامل توضیحی درباره گزینههای خط فرمان است. این متن بهصورت خودکار از سورس راهنمای مرجع تولید شده است.
مانند سایر نرمافزارهای MTA، اکسیم نیز جایگزین Sendmail میشود و معمولاً توسط برنامههای کاربر ایمیل (MUA) از طریق مسیر /usr/sbin/sendmail هنگام ارسال پیامها برای تحویل فراخوانی میشود (برخی از سیستمعاملها از /usr/lib/sendmail استفاده میکنند). این مسیر معمولاً بهصورت یک پیوند نمادین به فایل اجرایی Exim تنظیم میگردد. همچنین ممکن است توسط اسکریپتهای بوت سیستم برای شروع دیمن Exim مورد استفاده قرار گیرد. بسیاری از گزینههای خط فرمان Exim با Sendmail سازگار هستند تا بتواند بهعنوان یک جایگزین مستقیم عمل کند.
اقدام پیشفرض (DEFAULT ACTION)
اگر هیچ گزینهای که نیازمند اقدامی مشخص باشد (مانند راهاندازی دیمن یا اجراکننده صف، آزمایش یک آدرس، دریافت پیام با قالبی خاص یا نمایش محتوای صف) وجود نداشته باشد و هیچ آرگومانی در خط فرمان مشخص نشده باشد، Exim پیام کوتاهی درباره خود نمایش داده و خارج میشود.
با این حال، اگر حداقل یک آرگومان در خط فرمان وجود داشته باشد، گزینه -bm (پذیرش یک پیام محلی از ورودی استاندارد، بهطوری که آرگومانها مشخصکننده گیرندگان هستند) در نظر گرفته میشود. بنابراین، برای نمونه، اگر Exim در مسیر /usr/sbin نصب شده باشد، میتوانید پیامی را به این صورت از خط فرمان ارسال کنید:
/usr/sbin/exim -i <recipient-address(es)>
<محتوای
پیام، شامل
تمام
سطرهای
هدر>
CTRL-D
گزینه -i از پایان یافتن پیام توسط خطی که تنها شامل یک نقطه است جلوگیری میکند. تنها یک نویسه پایان فایل (که با فشردن CTRL-D در صورت دریافت ورودی از ترمینال ایجاد میشود) پیام را خاتمه میدهد.
تنظیم گزینهها با نام برنامه (SETTING OPTIONS BY PROGRAM NAME)
اگر باینری Exim با استفاده از یکی از نامهای فهرستشده در این بخش (معمولاً از طریق یک پیوند نمادین) فراخوانی شود، گزینههای خاصی بهصورت پیشفرض در نظر گرفته میشوند.
- mailq
- بهگونهای عمل میکند که گویا گزینه -bp پیش از هر گزینه دیگری وارد شده است. گزینه -bp درخواست فهرست کردن محتویات صف ایمیل را در خروجی استاندارد صادر میکند.
- rsmtp
- جهت سازگاری با Smail، بهگونهای رفتار میکند که گویی گزینه -bS قبل از سایر گزینهها مشخص شده است. گزینه -bS برای خواندن تعدادی پیام در قالب دستهای SMTP استفاده میشود.
- rmail
- بهگونهای عمل میکند که گویا گزینههای -i و -oee پیش از گزینههای دیگر آمدهاند، تا با Smail سازگار باشد. نام rmail بهعنوان رابط توسط برخی سیستمهای UUCP استفاده میشود. گزینه -i مشخص میکند که وجود نقطه در یک سطر بهتنهایی، پیامی غیر از SMTP را خاتمه ندهد؛ گزینه -oee درخواست میکند خطاهای شناساییشده در پیامهای غیر SMTP از طریق ایمیل به فرستنده گزارش داده شوند.
- runq
- جهت سازگاری با Smail، بهگونهای عمل میکند که انگار گزینه -q پیش از سایر گزینهها آمده است. گزینه -q باعث میشود یک پردازش مجزای اجراکننده صف آغاز شود. این پردازش یکبار صف را پردازش کرده و سپس خارج میشود.
- newaliases
- جهت سازگاری با Sendmail، بهگونهای رفتار میکند که گویا گزینه -bi پیش از سایر گزینهها قرار دارد. این گزینه برای بازسازی فایل نامهای مستعار Sendmail استفاده میشود. اکسیم مفهومی به نام یک فایل نام مستعار منفرد ندارد، اما میتوان آن را طوری پیکربندی کرد که در صورت فراخوانی با گزینه -bi، دستور مشخصی را اجرا کند.
گزینهها (OPTIONS)
- -- --
- این یک شبهگزینه است که تنها هدف آن پایان دادن به گزینهها است و بنابراین باعث میشود موارد بعدی در خط فرمان، حتی اگر با خط تیره آغاز شوند، بهجای گزینه بهعنوان آرگومان در نظر گرفته شوند.
- --help
- این گزینه باعث میشود Exim چند جمله در معرفی ماهیت و کارکرد خود چاپ کند. همین خروجی در صورتی که فایل باینری Exim بدون هیچ گزینه و آرگومانی فراخوانی شود نیز تولید خواهد شد.
- --version
- این گزینه نام مستعاری برای -bV است و باعث نمایش اطلاعات نسخه برنامه میشود.
- -Ac
- -Am این گزینهها توسط Sendmail برای انتخاب فایلهای پیکربندی استفاده میشوند و توسط Exim نادیده گرفته میشوند.
- -atrn <host>
- این گزینه درخواست یک اتصال مشتری ODMR را صادر میکند.
- -B <type>
- این یک گزینه Sendmail برای انتخاب پردازش ۷ یا ۸ بیتی است. اگزیم کاملاً سازگار با ۸ بیت (8-bit clean) است و این گزینه را نادیده میگیرد.
- -bd
- این گزینه Exim
را
بهعنوان
یک دیمن (daemon)
اجرا
میکند که
در انتظار
اتصالات
ورودی SMTP
میماند.
معمولاً
گزینه -bd با
گزینه -q<time>
ترکیب
میشود تا
مشخص شود که
دیمن باید
پردازش
دورهای صف
را نیز آغاز
کند.
گزینه -bd فقط توسط کاربر مدیر (ادمین) قابل استفاده است. اگر هر یک از گزینههای -d (اشکالزدایی) یا -v (راستیآزمایی) تنظیم شده باشند، دیمن از ترمینال کنترلکننده جدا نمیشود. هنگام اجرا به این صورت، میتوان آن را با فشردن کلیدهای ctrl-C متوقف کرد.
بهطور پیشفرض، Exim روی تمام رابطهای فعال میزبان برای اتصالات ورودی به درگاه (پورت) استاندارد SMTP گوش میدهد. با این حال، گوش دادن روی درگاههای دیگر، چندین پورت و فقط روی رابطهای شبکه خاص نیز امکانپذیر است.
هنگامی که یک دیمن شنونده بدون استفاده از -oX (یعنی بدون نادیدهگرفتن پیکربندی عادی) راهاندازی میشود، شناسه پردازش (PID) خود را در فایلی به نام exim-daemon.pid در دایرکتوری spool اگزیم مینویسد. این مکان را میتوان با تنظیم PID_FILE_PATH در Local/Makefile بازنویسی کرد. این فایل زمانی نوشته میشود که Exim هنوز با دسترسی ریشه (root) در حال اجرا است.
هنگامی که از -oX در خط فرمان برای شروع دیمن شنونده استفاده میشود، شناسه پردازش در مسیر معمول فایل pid نوشته نمیشود. با این حال، در صورت نیاز به فایل pid، میتوان از -oP برای تعیین مسیر در خط فرمان استفاده کرد.
از سیگنال SIGHUP میتوان برای اجرای مجدد دیمن توسط خودش استفاده کرد. این کار باید هر زمان که فایل پیکربندی Exim، یا هر فایلی که از طریق قابلیت .include در آن گنجانده شده است تغییر کند، و همچنین هر زمان که نسخه جدیدی از Exim نصب شود، انجام گیرد. نیازی به انجام این کار هنگام تغییر سایر فایلهای ارجاع دادهشده از پیکربندی (مانند فایلهای alias) نیست، زیرا این فایلها هر بار که استفاده میشوند مجدداً خوانده خواهند شد.
برای خاموش کردن کامل و تمیز دیمن، باید از سیگنال SIGTERM یا SIGINT استفاده شود. زیرپردازشهایی که مسئول دریافت یا تحویل پیامها، یا پویش صف هستند، با پایان یافتن پردازش اصلی دیمن دچار اختلال نخواهند شد.
- -bdf
- این گزینه همان اثر -bd را دارد، به جز اینکه هرگز از ترمینال کنترلکننده جدا نمیشود، حتی زمانی که هیچ اشکالزدایی مشخص نشده باشد.
- -be
- اجرای Exim در
حالت
آزمایش بسط
و گسترش
رشته (expansion testing).
اگزیم
دسترسی
ریشه (root) خود
را کنار
میگذارد
تا کاربران
عادی
نتوانند از
این حالت
برای
خواندن
فایلهای
غیرقابلدسترس
استفاده
کنند. اگر
آرگومانی
داده نشود،
Exim بهصورت
تعاملی
اجرا شده و
خطوط داده
را از کاربر
درخواست
میکند. در
غیر این
صورت، هر
آرگومان را
به نوبت
پردازش
میکند.
اگر Exim با تنظیم USE_READLINE=yes در Local/Makefile کامپایل شده باشد، هر زمان که گزینه -be بدون آرگومانهای خط فرمان استفاده شود، تلاش میکند کتابخانه libreadline را بهصورت پویا بارگذاری کند. در صورت موفقیت، از تابع readline() که امکانات ویرایش خط گستردهای را فراهم میکند برای خواندن دادههای آزمایشی استفاده خواهد کرد. تاریخچه خطوط نیز پشتیبانی میشود.
عبارات طولانی گسترش رشته را میتوان با استفاده از بکاسلش در چندین خط شکست. همانند پیکربندی زمان اجرای Exim، فاصلههای خالی در ابتدای خطوط ادامهیافته نادیده گرفته میشوند. هر آرگومان یا خط داده از مکانیزم گسترش رشته عبور کرده و نتیجه چاپ میشود. مقادیر متغیرها از فایل پیکربندی (مانند $qualify_domain) در دسترس هستند، اما مقادیر مربوط به پیام خاص (مانند $message_exim_id) تنظیم نشدهاند، زیرا پیامی در حال پردازش نیست (اما به -bem و -Mset مراجعه کنید).
نکته: اگر از این مکانیزم برای آزمایش جستجوها (lookups) استفاده میکنید و فایلهای داده یا پایگاههای داده مورد استفاده را تغییر میدهید، باید قبل از تلاش مجدد برای همان جستجو، از Exim خارج شده و دوباره آن را شروع کنید. در غیر این صورت، چون هر پردازش Exim نتایج جستجوها را در حافظه پنهان نگه میدارد، همان نتیجه قبلی را دریافت خواهید کرد.
پردازش ماکروها روی خطوط پیش از گسترش رشته انجام میشود: ماکروهای جدید میتوانند تعریف شوند و ماکروها گسترش مییابند. از آنجا که ماکروها در فایل پیکربندی اغلب برای اطلاعات محرمانه استفاده میشوند، تنها برای کاربران مدیر در دسترس هستند.
کلمه "set" در ابتدای یک خط، که به دنبال آن یک فاصله تکی قرار دارد، بهطور ویژه بهعنوان تعریف مقداری برای یک متغیر شناخته میشود. اگر توالی ",t" قبل از فاصله درج شود، مقدار بهعنوان آلوده (tainted) علامتگذاری میشود. ساختار نوشتاری در غیره این صورت همانند اصلاحکننده ACL با نام "set =" است.
- -bem <filename>
- این گزینه
مانند -be
عمل میکند
با این
تفاوت که
باید نام یک
فایل به
دنبال آن
بیاید. برای
مثال:
exim -bem /tmp/testmessageفایل قبل از انجام هرگونه گسترش آزمایشی، بهصورت یک پیام (مانند دریافت یک پیام غیر SMTP محلی) خوانده میشود. بنابراین، متغیرهای خاص پیام مانند $message_size و $header_from: در دسترس هستند. با این حال، هیچ هدر Received: به پیام اضافه نمیشود. اگر گزینه -t تنظیم شده باشد، گیرندگان به روش معمول از هدرها خوانده شده و در متغیر $recipients نشان داده میشوند. توجه داشته باشید که گیرندگان را نمیتوان در خط فرمان وارد کرد، زیرا آرگومانهای بعدی بهعنوان رشتههایی برای گسترش در نظر گرفته میشوند (دقیقاً مانند -be).
- -bF <filename>
- این گزینه همانند -bf است به جز اینکه فرض میکند فیلتر مورد آزمایش، یک فیلتر سیستمی است. دستورات اضافی که تنها در فیلترهای سیستمی در دسترس هستند، شناسایی میشوند.
- -bf <filename>
- این گزینه Exim
را در حالت
آزمایش
فیلتر
کاربر اجرا
میکند؛
فایل
مشخصشده
فایل
فیلتری است
که باید
آزمایش
شود، و یک
پیام
آزمایشی
باید در
ورودی
استاندارد
ارائه گردد.
اگر
آزمایشهای
وابسته به
پیام در
فیلتر وجود
نداشته
باشد،
میتوان یک
فایل خالی
ارائه داد.
اگر میخواهید یک فایل فیلتر سیستمی را آزمایش کنید، از -bF بهجای -bf استفاده نمایید. میتوانید هر دو گزینه -bF و -bf را در یک دستور واحد برای آزمایش فیلتر سیستمی و فیلتر کاربر به صورت همزمان استفاده کنید. برای مثال:
exim -bF /system/filter -bf /user/filter </test/messageاین امر زمانی مفید است که فیلتر سیستمی خطوط هدر اضافه میکند یا متغیرهای فیلتری را تعیین میکند که توسط فیلتر کاربر استفاده میشوند.
اگر فایل فیلتر آزمایشی با یکی از خطوط خاص زیر آغاز نشود:
# Exim filter
# Sieve filterیک فایل فوروارد معمولی (.forward) تلقی شده و اعتبار آن تحت آن تعبیر آزمایش میشود.
نتیجه دستور Exim که از -bf استفاده میکند، به شرطی که خطایی شناسایی نشود، فهرستی از اقداماتی است که Exim در صورت مواجهه با پیام در واقعیت تلاش میکرد انجام دهد. جزئیات بیشتر درباره آزمایش فیلتر در سندی جداگانه با عنوان رابطهای Exim برای فیلتر کردن ایمیل ارائه شده است.
هنگام آزمایش یک فایل فیلتر، فرستنده پاکت را میتوان با گزینه -f یا با یک خط "From " در ابتدای پیام آزمایشی تعیین کرد. پارامترهای مختلفی که معمولاً از آدرس گیرنده پاکت پیام گرفته میشوند را میتوان با گزینههای خط فرمان اضافی تنظیم کرد (چهار گزینه بعدی را ببینید).
- -bfd <domain>
- این گزینه دامنه آدرس گیرنده را هنگامی که فایل فیلتر توسط گزینه -bf آزمایش میشود تنظیم میکند. مقدار پیشفرض، مقدار متغیر $qualify_domain است.
- -bfl <local part>
- این گزینه بخش محلی (local part) آدرس گیرنده را هنگامی که یک فایل فیلتر توسط گزینه -bf آزمایش میشود تعیین میکند. مقدار پیشفرض، نام کاربری پردازشی است که Exim را فراخوانی میکند. بخش محلی باید بدون هرگونه پیشوند یا پسوند مشخص شود، زیرا هنگام تحویل واقعی پیام به همین صورت در فیلتر ظاهر میشود.
- -bfp <prefix>
- این گزینه پیشوند بخش محلی آدرس گیرنده را هنگام آزمایش فایل فیلتر با گزینه -bf تعیین میکند. پیشفرض، یک پیشوند خالی است.
- -bfs <suffix>
- این گزینه پسوند بخش محلی آدرس گیرنده را هنگام آزمایش فایل فیلتر با گزینه -bf تعیین میکند. پیشفرض، یک پسوند خالی است.
- -bh <IP address>
- این گزینه
یک نشست
ساختگی SMTP را
طوری اجرا
میکند که
گویی از
آدرس IP
دادهشده و
با استفاده
از ورودی و
خروجی
استاندارد
انجام
میشود.
آدرس IP
میتواند
شامل یک
شماره پورت
در انتها،
پس از یک
نقطه باشد.
برای مثال:
exim -bh 10.9.8.7.1234
exim -bh fe80::a00:20ff:fe86:a061.5678هنگامی که یک آدرس IPv6 داده میشود، به قالب استاندارد (canonical) تبدیل میگردد. در مورد مثال دوم در بالا، مقدار $sender_host_address پس از تبدیل به قالب استاندارد به این صورت خواهد بود: fe80:0000:0000:0a00:20ff:fe86:a061.5678.
توضیحات مربوط به وقایع در حال وقوع، در فایل خطای استاندارد (stderr) نوشته میشوند. این موارد شامل خطوطی است که با "LOG" برای هر چیزی که قرار بود ثبت شود شروع میشوند. این قابلیت برای آزمایش گزینههای پیکربندی پیامهای ورودی فراهم شده است تا اطمینان حاصل شود که سیاستهای مورد نظر را پیادهسازی میکنند. برای مثال، میتوانید کنترلهای رله (relay controls) خود را با استفاده از -bh آزمایش کنید.
هشدار ۱: میتوانید ویژگیهایی از پیکربندی را که به اطلاعات ident (RFC 1413) متکی هستند با استفاده از گزینه -oMt آزمایش کنید. با این حال، Exim در هنگام آزمایش با -bh نمیتواند فراخوانی واقعی ident انجام دهد زیرا هیچ اتصال ورودی SMTP وجود ندارد.
هشدار ۲: فراخوانیهای اعتبارسنجی آدرس نیز هنگام آزمایش با -bh نادیده گرفته میشوند. اگر میخواهید این فراخوانیها انجام شوند، بهجای آن از -bhc استفاده کنید.
پیامهای ارائهشده در طول نشست آزمایشی دور ریخته میشوند و هیچ چیزی در فایلهای لاگ واقعی نوشته نمیشود. ممکن است هنگام انجام جستجوهای DNS (و سایر جستجوها) مکثهایی رخ دهد و البته ممکن است با مهلت زمانی (timeout) مواجه شوند. در صورت اهمیت داشتن، میتوان از گزینه -oMi برای مشخص کردن یک رابط IP و درگاه خاص استفاده کرد، و از -oMaa و -oMai میتوان برای تنظیم پارامترها بهگونهای استفاده کرد که گویا نشست SMTP احراز هویت شده است.
ابزار exim_checkaccess یک نسخه بستهبندیشده از -bh است که خروجی آن فقط مشخص میکند آیا یک آدرس گیرنده مشخص از یک میزبان مشخص قابل قبول است یا خیر.
ویژگیهایی مانند احراز هویت و رمزنگاری، که در آنها ورودی کلاینت متن ساده نیست، بهراحتی با -bh قابل آزمایش نیستند. در عوض، باید از یک برنامه تخصصی آزمایش SMTP مانند swaks استفاده کنید.
- -bhc <IP address>
- این گزینه به همان شیوه -bh عمل میکند، با این تفاوت که در صورت نیاز، فراخوانیهای اعتبارسنجی آدرس انجام میشوند. این شامل مراجعه به پایگاه داده کش فراخوانی و بهروزرسانی آن نیز میشود.
- -bi
- برنامه Sendmail
گزینه -bi را
بهعنوان
درخواستی
برای
بازسازی
فایل
نامهای
مستعار (alias)
خود تفسیر
میکند.
اکسیم
مفهومی تحت
عنوان یک
فایل
مستعار
منفرد
ندارد و
بنابراین
نمیتواند
این رفتار
را تقلید
کند. با این
حال،
فراخوانیهای
/usr/lib/sendmail با
گزینه -bi
معمولاً در
اسکریپتهای
مختلفی
مانند makefileهای
NIS ظاهر
میشوند،
بنابراین
این گزینه
باید
شناسایی
شود.
اگر گزینه -bi دریافت شود، دستور تعیینشده توسط گزینه پیکربندی bi_command، تحت شناسههای کاربری و گروهی (uid و gid) فراخواننده Exim اجرا میشود. اگر گزینه -oA استفاده شده باشد، مقدار آن بهعنوان آرگومان به دستور ارسال میشود. دستور تعیینشده توسط bi_command نباید حاوی آرگومان باشد. این دستور در صورت لزوم میتواند از ابزار exim_dbmbuild یا ابزارهای دیگر برای بازسازی فایلهای نامهای مستعار استفاده کند. اگر گزینه bi_command تنظیم نشده باشد، فراخوانی Exim با -bi هیچ عملیاتی انجام نمیدهد (no-op).
- -bI:help
- گزینههای مختلفی با پیشوند -bI: برای دریافت اطلاعات از Exim فراهم شدهاند. خروجی بسیاری از آنها برای پردازش توسط ماشین در نظر گرفته شده است، اما این یکی اینگونه نیست. گزینه -bI:help خلاصهای از گزینههای پشتیبانیشده که با -bI: آغاز میشوند را درخواست میکند. استفاده از هر یک از این گزینهها باعث میشود Exim پس از تولید خروجی درخواستی خارج شود.
- -bI:dscp
- اگر Exim با پشتیبانی از DSCP ساخته شده باشد، این گزینه باعث میشود فهرستی به ترتیب الفبایی از تمام نامهای شناختهشده DSCP چاپ شود.
- -bI:modules
- این گزینه باعث میشود Exim فهرستی از ماژولهای بارگذاری پویای نصبشده روی سیستم را چاپ کند.
- -bI:sieve
- اگر Exim با پشتیبانی از Sieve ساخته شده باشد، این گزینه باعث میشود فهرستی به ترتیب الفبایی از تمام پسوندهای پشتیبانیشده پروتکل Sieve در خروجی استاندارد چاپ شود (یک مورد در هر خط). پیشبینی میشود این امر برای پیادهسازیهای ManageSieve (RFC 5804) در ارائه خط پاسخ قابلیت SIEVE آن پروتکل مفید باشد. از آنجا که فهرست دقیق ممکن است به گزینههای زمان ساخت و کامپایل بستگی داشته باشد (که این گزینه با آنها منطبق میشود)، این تنها راه برای تضمین پاسخی صحیح است.
- -bm
- این گزینه
یک پردازش
دریافتکننده
Exim را اجرا
میکند که
پیام ورودی
و محلی
ایجادشده
را از ورودی
استاندارد
میپذیرد.
گیرندگان
بهعنوان
آرگومانهای
دستور داده
میشوند
(مگر زمانی
که -t نیز
وجود داشته
باشد - به
پایین
مراجعه
کنید). هر
آرگومان
میتواند
فهرستی از
آدرسهای
تفکیکشده
با کاما بر
اساس RFC 2822
باشد. این
گزینه
پیشفرض
برای تعیین
اقدام کلی
یک
فراخوانی Exim
است؛ اگر
هیچ گزینه
متضاد
دیگری وجود
نداشته
باشد، این
حالت فرض
میشود.
اگر هر آدرسی در پیام فاقد دامنه باشد، بر اساس موقعیت، با مقادیر گزینههای qualify_domain یا qualify_recipient کامل و واجد صلاحیت میشود. گزینه -bnq (به پایین مراجعه کنید) راهکاری برای جلوگیری از این رفتار در موارد خاص فراهم میکند.
بررسیهای خطمشی روی محتوای پیامهای محلی را میتوان از طریق ACLهای غیر SMTP اعمال کرد.
در صورت پذیرش موفقیتآمیز پیام، کد خروجی صفر خواهد بود. در غیر این صورت، اقدام انجامشده توسط تنظیم گزینه -oex کنترل میشود - به پایین مراجعه کنید.
قالب پیام باید مطابق با تعریف در RFC 2822 باشد، به جز اینکه برای سازگاری با Sendmail و Smail، خطی با یکی از قالبهای زیر:
From sender Fri Jan 5 12:55 GMT 1997
From sender Fri, 5 Jan 97 12:55:01(با روز هفته اختیاری، و احتمالاً متن اضافی پس از تاریخ) مجاز است در ابتدای پیام ظاهر شود. به نظر میرسد هیچ مشخصات معتبری برای قالب این خط وجود ندارد. Exim آن را با تطبیق با عبارت باقاعده تعریفشده توسط گزینه uucp_from_pattern تشخیص میدهد که در صورت لزوم قابل تغییر است.
فرستنده مشخصشده بهگونهای در نظر گرفته میشود که گویا بهعنوان آرگومان گزینه -f ارائه شده است، اما اگر گزینه -f نیز وجود داشته باشد، آرگومان آن بر آدرس دریافتشده از پیام ترجیح داده میشود. فراخواننده Exim باید یک کاربر قابل اعتماد (trusted user) باشد تا فرستنده پیام به این روش تنظیم شود.
- -bmalware <filename>
- این گزینه
اشکالزدایی
باعث
میشود Exim
فایل یا
دایرکتوری
مشخصشده
را (بسته به
رابط اسکنر
استفادهشده)
با استفاده
از چارچوب
پویش
بدافزار
اسکن کند.
گزینه av_scanner
بر این
گزینه
تأثیر
میگذارد،
بنابراین
اگر مقدار
av_scanner به یک
گسترش رشته
وابسته
باشد، آن
گسترش باید
دارای
پیشفرضهایی
باشد که در
این
فراخوانی
اعمال شوند.
لیستهای
کنترل
دسترسی (ACL)
فراخوانی
نمیشوند،
بنابراین
اگر av_scanner به
یک متغیر ACL
ارجاع دهد،
آن متغیر
هرگز
مقداردهی
نخواهد شد و
-bmalware با شکست
مواجه
میشود.
اگزیم دایرکتوری کاری را پیش از حل نام فایل تغییر میدهد، بنابراین استفاده از مسیرهای کامل و مطلق (fully qualified pathnames) توصیه میشود. Exim هنگام تلاش برای باز کردن فایل، به جای کاربر فراخواننده، تحت کاربر اختصاصی exim اجرا خواهد شد. این گزینه به مجوزهای مدیریتی نیاز دارد.
گزینه -bmalware برای کاربردهای عمومیتر توسعه نخواهد یافت، زیرا ابزارهای بهتری برای اسکن فایلها وجود دارند. این گزینه برای کمک به مدیران سیستم در جهت راستیآزمایی پیکربندی Exim و اسکنر ضدویروس وجود دارد.
- -bnq
- بهطور
پیشفرض، Exim
آدرسهای
بدون
صلاحیت
(آدرسهای
فاقد دامنه)
را که در
پیامهای
ارسالشده
بهصورت
محلی (یعنی
نه از طریق TCP/IP)
ظاهر
میشوند،
بهطور
خودکار
کامل
میکند. این
اعتبارسنجی
و کامل کردن
هم برای
آدرسهای
موجود در
پاکت و هم
برای
آدرسهای
درون خطوط
هدر اعمال
میشود.
آدرسهای
فرستنده با
استفاده از
qualify_domain و
آدرسهای
گیرنده با
استفاده از
qualify_recipient (که
پیشفرض آن
مقدار qualify_domain
است) کامل
میشوند.
گاهی اوقات، کاملسازی آدرسها مطلوب نیست. به عنوان مثال، اگر از -bS (دستهای SMTP) برای ارسال مجدد پیامهایی استفاده میشود که در اصل از میزبانهای دوردست پس از اسکن محتوا آمدهاند، احتمالاً نمیخواهید آدرسهای فاقد دامنه در خطوط هدر کامل شوند. (چنین خطوطی تنها در صورتی وجود خواهند داشت که بررسی نحوی هدر را در ACL مناسب فعال نکرده باشید.)
گزینه -bnq تمامی کاملسازی آدرسهای بدون دامنه را در پیامهایی که از میزبان محلی سرچشمه میگیرند متوقف میکند. هنگامی که از این گزینه استفاده میشود، آدرسهای بدون دامنه در پاکت پیام موجب ایجاد خطا (و رد شدن پیام) میشوند و آدرسهای بدون دامنه در خطوط هدر دستنخورده باقی میمانند.
- -bP
- اگر این
گزینه بدون
هیچ
آرگومانی
داده شود،
باعث
میشود
مقادیر
تمام
گزینههای
اصلی
پیکربندی Exim
در خروجی
استاندارد
نوشته شوند.
مقادیر یک
یا چند
گزینه خاص
را میتوان
با دادن نام
آنها
بهعنوان
آرگومان
درخواست
کرد، برای
مثال:
exim -bP qualify_domain hold_domainsبا این حال، هر تنظیم گزینهای که با کلمه "hide" در فایل پیکربندی پیش از آن آمده باشد، به طور کامل نمایش داده نمیشود، مگر برای یک کاربر مدیر. برای سایر کاربران، خروجی مانند این مثال است:
mysql_servers = <value not displayable>اگر config بهعنوان آرگومان داده شود، پیکربندی همانطور که تجزیه شده است چاپ میشود، هر فایل include حل شده و نظرات حذف میشوند.
اگر config_file بهعنوان آرگومان داده شود، نام فایل پیکربندی زمان اجرا چاپ میشود. (configure_file نیز برای سازگاری با نسخههای پیشین کار میکند.) اگر فهرستی از فایلهای پیکربندی ارائه شده باشد، مقداری که در اینجا خروجی داده میشود نام فایلی است که عملاً استفاده شده است.
اگر پرچم -n داده شود، در بیشتر حالتهای عملکرد -bP نام گزینه در خروجی چاپ نخواهد شد.
اگر log_file_path یا pid_file_path داده شوند، به ترتیب نام دایرکتوریهایی که فایلهای لاگ و فایلهای pid دیمن در آنها نوشته میشوند در خروجی چاپ میگردند. اگر این مقادیر تنظیم نشده باشند، فایلهای لاگ در زیردایرکتوری از دایرکتوری spool به نام log نوشته میشوند و فایل pid مستقیماً در دایرکتوری spool نوشته میشود.
اگر به دنبال -bP نامی با پیشوند + بیاید، برای مثال:
exim -bP +local_domainsفهرست نامگذاریشده منطبق از هر نوعی (دامنه، میزبان، آدرس یا بخش محلی) را جستجو کرده و آنچه را که مییابد چاپ میکند.
اگر یکی از کلمات router، transport یا authenticator داده شود و پس از آن نام یک نمونه درایور مناسب بیاید، تنظیمات گزینه برای آن درایور چاپ میشود. برای مثال:
exim -bP transport local_deliveryگزینههای عمومی درایور ابتدا چاپ میشوند و پس از آن گزینههای اختصاصی درایور میآیند. فهرستی از نامهای درایورهای یک نوع خاص را میتوان با استفاده از یکی از کلمات router_list، transport_list یا authenticator_list به دست آورد، و فهرست کاملی از تمام درایورها به همراه تنظیمات گزینههای آنها را میتوان با استفاده از routers، transports یا authenticators به دست آورد.
اگر environment بهعنوان آرگومان داده شود، مجموعه متغیرهای محیطی خط به خط چاپ میشوند. استفاده از پرچم -n از نمایش مقدار متغیرها جلوگیری میکند.
اگر توسط یک کاربر مدیر فراخوانی شود، macro، macro_list و macros مشابه درایورها در دسترس هستند. از آنجا که ماکروها گاهی اوقات برای ذخیره گذرواژهها استفاده میشوند، این گزینه محدود شده است. قالب خروجی یک مورد در هر خط است. برای حالت "-bP macro <name>"، اگر چنین ماکرویی پیدا نشود، وضعیت خروج غیرصفر خواهد بود.
- -bp
- این گزینه
درخواست
فهرست کردن
محتویات صف
ایمیل را در
خروجی
استاندارد
صادر
میکند. اگر
به دنبال
گزینه -bp
فهرستی از
شناسههای
پیام
بیاید، فقط
همان
پیامها
فهرست
میشوند.
بهطور
پیشفرض،
این گزینه
فقط توسط یک
کاربر مدیر
قابل
استفاده
است. با این
حال، گزینه
queue_list_requires_admin
میتواند
روی false تنظیم
شود تا به
هر کاربری
اجازه
مشاهده صف
داده شود.
هر پیام در صف مانند مثال زیر نمایش داده میشود:
25m 2.9K 0t5C6f-0000c8-00 <alice@wonderland.fict.example>
red.king@looking-glass.fict.example
<other addresses>سطر اول شامل مدت زمانی است که پیام در صف بوده است (در این مورد ۲۵ دقیقه)، اندازه پیام (2.9K)، شناسه محلی یکتای پیام و فرستنده پیام همانطور که در پاکت آمده است. برای پیامهای برگشتی (bounce)، آدرس فرستنده خالی است و بهصورت "<>" نمایش داده میشود. اگر پیام بهصورت محلی توسط یک کاربر غیرقابلاعتماد ارسال شده باشد که آدرس فرستنده پیشفرض را بازنویسی کرده است، نام کاربری ورود کاربر در پرانتز قبل از آدرس فرستنده نشان داده میشود.
اگر پیام منجمد (frozen) باشد (تلاشها برای تحویل آن به حالت تعلیق درآمده باشد)، متن "*** frozen ***" در انتهای این سطر نمایش داده میشود.
گیرندگان پیام (گرفتهشده از پاکت، نه از هدرها) در سطرهای بعدی نمایش داده میشوند. آدرسهایی که پیام قبلاً به آنها تحویل داده شده است با حرف D مشخص میشوند. اگر یک آدرس اصلی از طریق یک فایل alias یا forward به چندین آدرس گسترش یابد، آدرس اصلی تنها زمانی با حرف D نمایش داده میشود که تحویل برای تمام آدرسهای فرزند آن کامل شده باشد.
- -bpa
- این گزینه مانند -bp عمل میکند، اما علاوه بر آن، آدرسهای تحویلدادهشدهای را که از آدرس(های) اصلی سطح بالا در هر پیام توسط عملیات نام مستعار یا فوروارد ایجاد شدهاند، نشان میدهد. این آدرسها به جای فقط "D" با "+D" علامتگذاری میشوند.
- -bpc
- این گزینه تعداد پیامهای موجود در صف را شمارش کرده و مجموع را در خروجی استاندارد مینویسد. این گزینه محدود به کاربران مدیر است، مگر اینکه queue_list_requires_admin روی false تنظیم شده باشد.
- -bpi
- این گزینه مانند -bp عمل میکند، اما تنها شناسههای پیام را چاپ میکند (یک مورد در هر سطر).
- -bpr
- این گزینه مانند -bp عمل میکند، اما خروجی بر اساس ترتیب زمانی ورود پیامها مرتب نمیشود. این کار میتواند در زمانی که پیامهای زیادی در صف وجود دارند سرعت را افزایش دهد و بهویژه زمانی مفید است که خروجی قرار است به گونهای پسپردازش شود که نیازی به مرتبسازی ندارد.
- -bpra
- این گزینه ترکیبی از -bpr و -bpa است.
- -bpri
- این گزینه ترکیبی از -bpr و -bpi است.
- -bpru
- این گزینه ترکیبی از -bpr و -bpu است.
- -bpu
- این گزینه مانند -bp عمل میکند اما فقط آدرسهای سطح بالای تحویلدادهنشده را برای هر پیام نمایش داده شده نشان میدهد. آدرسهای تولیدشده توسط ایجاد نام مستعار یا فوروارد نمایش داده نمیشوند، مگر اینکه پیام پس از پردازش توسط روتری که گزینه one_time در آن تنظیم شده به تعویق افتاده باشد.
- -brt
- این گزینه
برای
آزمایش
قوانین
تلاش مجدد (retry
rules) است و باید
حداکثر سه
آرگومان به
دنبال آن
بیاید. این
گزینه باعث
میشود Exim به
دنبال یک
قانون تلاش
مجدد منطبق
بر مقادیر
بگردد و آن
را در خروجی
استاندارد
بنویسد.
برای مثال:
exim -brt bach.comp.mus.example
Retry rule: *.comp.mus.example F,2h,15m; F,4d,30m;آرگومان اول، که الزامی است، میتواند یک آدرس کامل به فرم local_part@domain یا صرفاً یک نام دامنه باشد. اگر آرگومان دوم حاوی یک نقطه باشد، بهعنوان یک نام دامنه اختیاری دوم تفسیر میشود؛ اگر هیچ قانون تلاش مجددی برای آرگومان اول پیدا نشود، آرگومان دوم بررسی میشود. این رفتار منطبق بر عملکرد Exim در جستجوی قوانین تلاش مجدد برای میزبانهای راهدور است؛ اگر قانونی متناسب با میزبان یافت نشود، قانونی که با دامنه ایمیل مطابقت داشته باشد جستجو میشود. در نهایت، میتوان آرگومانی شامل نام یک خطای تحویل خاص که در تنظیم قوانین تلاش مجدد استفاده میشود ارائه کرد. برای مثال:
exim -brt haydn.comp.mus.example quota_3d
Retry rule: *@haydn.comp.mus.example quota_3d F,1h,15m - -brw
- این گزینه برای آزمایش قوانین بازنویسی آدرس (address rewriting) است و باید یک آرگومان منفرد به دنبال آن بیاید که شامل یک بخش محلی بدون دامنه یا یک آدرس کامل با دامنهای کاملاً واجد شرایط است. اگزیم نحوه بازنویسی این آدرس را برای هر مکان ممکنی که ممکن است در آن ظاهر شود نمایش میدهد.
- -bS
- این گزینه
برای ورودی
دستهای SMTP
(یا batched SMTP)
استفاده
میشود که
یک رابط
جایگزین
برای ارسال
غیرتعاملی
پیامهای
محلی است.
تعدادی
پیام را
میتوان در
یک اجرای
واحد ارسال
کرد. با این
حال، با
وجود نام
آن، این یک
ورودی
واقعی SMTP
نیست. اگزیم
پاکت هر
پیام را از
دستورات SMTP
در ورودی
استاندارد
میخواند،
اما هیچ
پاسخی
تولید
نمیکند.
اگر
فراخواننده
قابل
اعتماد
باشد یا
untrusted_set_sender تنظیم
شده باشد،
فرستندگان
موجود در
دستورات MAIL
در SMTP
پذیرفته
میشوند؛
در غیر این
صورت
فرستنده
همیشه
کاربر
فراخواننده
Exim خواهد بود.
خود پیام از ورودی استاندارد، در قالب SMTP (با نقاط ابتدای خط مضاعفشده)، با خطی که فقط حاوی یک نقطه است خاتمه مییابد. اگر نقطه پایانی وجود نداشته باشد، خطا ایجاد میشود. سپس ممکن است پیام دیگری به دنبال آن بیاید.
همانند سایر پیامهای ارسالی محلی، محتوای پیامهای ورودی دستهای SMTP را میتوان با استفاده از ACL غیر SMTP بررسی کرد. آدرسهای بدون دامنه بهطور خودکار با استفاده از qualify_domain و qualify_recipient به شکل مقتضی کامل میشوند، مگر اینکه گزینه -bnq استفاده شود.
برخی دیگر از دستورات SMTP در ورودی شناسایی میشوند: HELO و EHLO مانند RSET عمل میکنند؛ VRFY، EXPN، ETRN، ATRN و HELP مانند NOOP عمل میکنند؛ QUIT برنامه را میبندد و بقیه ورودی استاندارد را نادیده میگیرد.
در صورت بروز هرگونه خطا، گزارشها در خروجی استاندارد و جریانهای خطا نوشته میشوند و Exim بلافاصله متوقف میشود. کد خروجی در صورت عدم شناسایی خطا 0 است؛ در صورتی که یک یا چند پیام قبل از شناسایی خطا پذیرفته شده باشند 1 است؛ در غیر این صورت 2 خواهد بود.
- -bs
- این گزینه
باعث
میشود Exim با
خواندن
دستورات SMTP
در ورودی
استاندارد
و تولید
پاسخهای SMTP
در خروجی
استاندارد،
یک یا چند
پیام را
بپذیرد.
کنترلهای
سیاست SMTP،
همانطور
که در ACLها
تعریف
شدهاند،
اعمال
میشوند.
برخی از
برنامههای
کاربر
ایمیل از
این رابط
بهعنوان
راهی برای
ارسال
پیامهای
ایجادشده
بهصورت
محلی به MTA
استفاده
میکنند.
در این کاربرد، اگر فراخواننده Exim قابل اعتماد باشد، یا untrusted_set_sender تنظیم شده باشد، فرستندگان پیامها از دستورات SMTP MAIL گرفته میشوند. در غیر این صورت محتوای این دستورات نادیده گرفته شده و فرستنده همان کاربر فراخواننده تنظیم میشود. آدرسهای بدون دامنه بهطور خودکار با استفاده از qualify_domain و qualify_recipient به شکل مقتضی کامل میشوند، مگر اینکه گزینه -bnq استفاده شود.
گزینه -bs همچنین برای اجرای Exim از طریق inetd بهعنوان جایگزینی برای استفاده از دیمن شنونده استفاده میشود. اگزیم میتواند این دو حالت را با بررسی اینکه آیا ورودی استاندارد یک سوکت TCP/IP است یا خیر، تشخیص دهد. هنگامی که Exim از inetd فراخوانی میشود، مبدأ ایمیل دوردست در نظر گرفته میشود و نظرات بالا درباره فرستندگان و اعتبارسنجی اعمال نمیشوند. در این وضعیت، Exim دقیقاً به همان روشی عمل میکند که هنگام دریافت پیام از طریق دیمن شنونده رفتار میکند.
- -bt
- این گزینه Exim
را در حالت
آزمایش
آدرس اجرا
میکند، که
در آن هر
آرگومان
بهعنوان
آدرس
گیرندهای
در نظر
گرفته
میشود که
قابلیت
تحویل به آن
باید
آزمایش شود.
نتایج در
خروجی
استاندارد
نوشته
میشوند.
اگر
آزمایشی
ناموفق
باشد و
فراخواننده
کاربر مدیر
نباشد، هیچ
جزئیاتی از
شکست نمایش
داده
نمیشود،
زیرا این
جزئیات
ممکن است
شامل
اطلاعات
حساسی
مانند
نامهای
کاربری و
گذرواژهها
برای
جستجوهای
پایگاه
داده باشند.
اگر هیچ آرگومانی داده نشود، Exim بهصورت تعاملی اجرا شده و با نمایش علامت بزرگتر (>) آدرسهایی را برای آزمایش درخواست میکند.
برخلاف گزینه آزمایشی -be، نمیتوانید Exim را طوری تنظیم کنید که از تابع readline() استفاده کند، زیرا با دسترسی root اجرا میشود و مسائل امنیتی وجود دارد.
با هر آدرس طوری رفتار میشود که گویی آدرس گیرنده یک پیام است (با گزینه -bv مقایسه کنید). آدرس به روترها ارسال شده و نتیجه در خروجی استاندارد نوشته میشود. با این حال، هر روتری که گزینه no_address_test در آن تنظیم شده باشد، دور زده میشود. این امر میتواند استفاده از -bt را برای آزمایشهای مسیریابی واقعی آسانتر کند، بهویژه اگر روتر اول شما همه چیز را به یک برنامه اسکنر منتقل کند.
کد خروجی در صورتی که هر آدرسی بهطور قطعی ناموفق باشد ۲ است؛ اگر هیچ آدرسی بهطور قطعی ناموفق نباشد اما حداقل یک آدرس به دلایلی قابل حل نباشد ۱ است. کد خروجی ۰ تنها زمانی برگردانده میشود که تمام آدرسها موفق شوند.
نکته: هنگام تحویل واقعی پیام، Exim آدرسهای گیرنده تکراری را پس از تکمیل مسیریابی حذف میکند تا تنها یک تحویل صورت گیرد. این اتفاق هنگام آزمایش با -bt رخ نمیدهد؛ نتایج کامل مسیریابی همیشه نشان داده میشوند.
هشدار: گزینه -bt تنها میتواند آزمایشهای نسبتاً سادهای انجام دهد. اگر هر یک از روترها در پیکربندی، آزمایشی روی آدرس فرستنده پیام انجام دهند، میتوانید از گزینه -f برای تنظیم یک فرستنده مناسب هنگام اجرای آزمایشهای -bt استفاده کنید. بدون آن، فرستنده کاربر فراخواننده در دامنه صلاحیت پیشفرض فرض میشود. با این حال، اگر روترهایی را تنظیم کردهاید که رفتار آنها به محتوای پیام ورودی بستگی دارد، نمیتوانید آن شرایط را با استفاده از -bt آزمایش کنید. گزینه -N راهکاری احتمالی برای انجام چنین آزمایشهایی فراهم میکند.
- -bV
- این گزینه
باعث
میشود Exim
شماره نسخه
فعلی،
شماره
کامپایل و
تاریخ
کامپایل
فایل
باینری exim
را در خروجی
استاندارد
بنویسد.
همچنین
کتابخانه DBM
مورداستفاده،
ماژولهای
اختیاری
(مانند
انواع
جستجوهای
خاص)،
درایورهای
گنجاندهشده
در فایل
باینری، و
نام فایل
پیکربندی
زمان اجرای
مورداستفاده
را فهرست
میکند.
بهعنوان بخشی از عملکرد خود، -bV باعث میشود Exim فایل پیکربندی خود را خوانده و نحو آن را بررسی کند. با این حال، این تنها یک بررسی ایستا است. این گزینه نمیتواند مقادیری را که قرار است گسترش یابند بررسی کند. برای مثال، هرچند یک فعل ACL که املای نادرست دارد تشخیص داده میشود، خطایی در آرگومانهای آن فعل شناسایی نخواهد شد. نمیتوانید تنها به -bV برای کشف (برای مثال) تمامی غلطهای املایی در پیکربندی تکیه کنید؛ برخی آزمایشهای واقعی لازم است. گزینههای -bh و -N امکانات آزمایش پویاتری را فراهم میکنند.
- -bv
- این گزینه Exim
را در حالت
تأیید و
اعتبارسنجی
آدرس اجرا
میکند، که
در آن هر
آرگومان
بهعنوان
آدرس
گیرندهای
در نظر
گرفته
میشود که
باید توسط
روترها
اعتبارسنجی
شود. (این
شامل
هیچگونه
فراخوانی
اعتبارسنجی
خارجی
نمیشود).
در طول
عملکرد
عادی،
اعتبارسنجی
اغلب
بهعنوان
نتیجه
پردازش یک
شرط verify در یک
ACL رخ میدهد.
اگر
میخواهید
یک ACL کامل
را،
احتمالاً
شامل
فراخوانیها،
آزمایش
کنید،
گزینههای
-bh و -bhc را
ببینید.
اگر اعتبارسنجی با شکست مواجه شود و کاربر فراخواننده مدیر نباشد، هیچ جزئیاتی از شکست نمایش داده نمیشود، زیرا این جزئیات ممکن است شامل اطلاعات حساسی مانند نامهای کاربری و گذرواژهها برای جستجوهای پایگاه داده باشند.
اگر هیچ آرگومانی ارائه نشود، Exim بهصورت تعاملی اجرا شده و با علامت بزرگتر (>) آدرسهایی را برای اعتبارسنجی درخواست میکند.
برخلاف گزینه آزمایشی -be، نمیتوانید ترتیبی دهید که Exim از تابع readline() استفاده کند، زیرا تحت کاربر exim اجرا میشود و مسائل امنیتی وجود دارد.
اعتبارسنجی با آزمایش آدرس (گزینه -bt) از این جهت تفاوت دارد که روترهایی که گزینه no_verify در آنها تنظیم شده است نادیده گرفته میشوند، و اگر آدرس توسط روتری که fail_verify در آن تنظیم شده پذیرفته شود، اعتبارسنجی با شکست مواجه میگردد. اگر از -bv استفاده شود، آدرس بهعنوان یک گیرنده اعتبارسنجی میشود؛ برای آزمایش اعتبارسنجی برای آدرس فرستنده، باید از -bvs استفاده شود.
اگر گزینه -v تنظیم نشده باشد، خروجی شامل یک خط منفرد برای هر آدرس است که مشخص میکند آیا تأیید شده است یا خیر، و در صورت عدم تأیید، دلیلی ارائه میدهد. بدون -v، تولید بیش از یک آدرس از طریق تغییر مسیر (redirection) باعث میشود اعتبارسنجی با موفقیت پایان یابد، بدون اینکه آدرسهای تولیدشده بررسی شوند. با این حال، اگر تنها یک آدرس تولید شود، پردازش ادامه مییابد و آدرس تولیدشده باید با موفقیت اعتبارسنجی شود تا کل اعتبارسنجی موفقیتآمیز باشد.
هنگامی که -v تنظیم شده باشد، جزئیات بیشتری از نحوه مدیریت آدرس ارائه میشود و در صورت تغییر مسیر آدرس، تمام آدرسهای تولیدشده نیز در نظر گرفته میشوند. اعتبارسنجی ممکن است برای برخی موفق و برای برخی دیگر ناموفق باشد.
کد خروجی ۲ است اگر هر آدرسی بهطور قطعی رد شود؛ ۱ است اگر هیچ آدرسی بهطور قطعی رد نشود اما حداقل یک آدرس به دلایلی حل نشود. کد خروجی ۰ تنها زمانی داده میشود که تمام آدرسها موفق شوند.
اگر هر یک از روترها در پیکربندی آزمایشی روی آدرس فرستنده پیام انجام میدهند، باید از گزینه -f برای تنظیم یک فرستنده مناسب هنگام اجرای آزمایشهای -bv استفاده کنید. بدون آن، فرستنده همان کاربر فراخواننده در دامنه صلاحیت پیشفرض فرض میشود.
- -bvs
- این گزینه مانند -bv عمل میکند، اما آدرس را بهجای آدرس گیرنده، بهعنوان فرستنده اعتبارسنجی میکند. این موضوع بر هرگونه بازنویسی و کاملسازی دامنهای که ممکن است رخ دهد تأثیر میگذارد.
- -bw
- این گزینه Exim
را
بهعنوان
یک دیمن، در
انتظار
اتصالات
ورودی SMTP،
مشابه
گزینه -bd
اجرا
میکند.
تمامی
مشخصات
پورت در خط
فرمان و در
فایل
پیکربندی
نادیده
گرفته
میشوند.
اجرای صف
ممکن است
مشخص نشود.
در این حالت، Exim انتظار دارد سوکتی بهعنوان توصیفکننده فایل ۰ (stdin) که در حال گوش دادن به اتصالات است به آن منتقل شود. این امر به سیستم اجازه میدهد راهاندازی شود و inetd (یا معادل آن) روی پورتهای SMTP گوش دهد، و یک دیمن Exim را برای هر پورت تنها زمانی راهاندازی کند که اولین اتصال دریافت شود.
اگر این گزینه بهصورت -bw<time> داده شود، زمان مذکور یک مهلت زمانی (timeout) است که پس از آن دیمن خارج میشود، که باید باعث شود inetd بار دیگر شروع به گوش دادن کند.
- -C <filelist>
- این گزینه
باعث
میشود Exim
فایل
پیکربندی
زمان اجرا
را بهجای
فهرستی که
توسط تنظیم
زمان
کامپایل CONFIGURE_FILE
مشخص شده
است، از
فهرست
ارائهشده
پیدا کند.
معمولاً
این فهرست
تنها از یک
نام فایل
منفرد
تشکیل
میشود،
اما
میتواند
فهرستی از
نامها
باشد که با
دو نقطه (:) از
هم جدا
شدهاند. در
این حالت،
اولین
فایلی که
وجود دارد
استفاده
میشود.
ناتوانی در
باز کردن یک
فایل موجود
مانع از
ادامه
بررسی سایر
موارد
فهرست توسط
Exim میشود و
خطا ایجاد
میگردد.
هنگامی که این گزینه توسط کاربری غیر از root استفاده شود، و این فهرست متفاوت از فهرست کامپایلشده داخلی باشد، Exim بلافاصله امتیازات ریشه خود را واگذار میکند و با شناسه کاربری و گروهی واقعی و مؤثر (uid و gid) متناظر با فراخواننده اجرا میشود. با این حال، اگر فایل TRUSTED_CONFIG_LIST در Local/Makefile تعریف شده باشد، آن فایل حاوی فهرستی از مسیرهای کامل (یک مورد در هر سطر) برای فایلهای پیکربندی قابل اعتماد است. امتیاز ریشه برای هر فایل پیکربندی که در این فهرست باشد حفظ میشود، تا زمانی که فراخواننده کاربر Exim (یا کاربر مشخصشده در گزینه CONFIGURE_OWNER، در صورت وجود) باشد، و تا زمانی که فایل پیکربندی توسط کاربران یا گروههای نامناسب قابل نوشتن نباشد.
تنظیم نکردن TRUSTED_CONFIG_LIST امکان آزمایش یک پیکربندی را با استفاده از -C در کل مراحل دریافت و تحویل پیام ناممکن میسازد، حتی اگر فراخواننده کاربر ریشه باشد. دریافت پیام کار میکند، اما در آن زمان، Exim با دسترسی کاربر Exim در حال اجرا است، بنابراین هنگامی که برای بازیابی امتیاز جهت تحویل دوباره اجرا میشود، استفاده از -C باعث از دست رفتن امتیاز میگردد. با این حال، کاربر root میتواند دریافت و تحویل را با استفاده از دو دستور جداگانه آزمایش کند (یکی برای قرار دادن پیام در صف با استفاده از -odq، و دیگری برای انجام تحویل با استفاده از -M).
اگر ALT_CONFIG_PREFIX در Local/Makefile تعریف شده باشد، یک رشته پیشوند را مشخص میکند که هر فایلی با نام مشخصشده در گزینه خط فرمان -C باید با آن شروع شود. علاوه بر این، نام فایل نباید حاوی توالی /../ باشد. با این حال، اگر مقدار گزینه -C با مقدار CONFIGURE_FILE در Local/Makefile یکسان باشد، Exim گزینه -C را نادیده گرفته و طبق روال عادی عمل میکند. هیچ تنظیم پیشفرضی برای ALT_CONFIG_PREFIX وجود ندارد؛ هنگامی که تنظیم نشده باشد، هر نام فایلی میتواند با -C استفاده شود.
میتوان از ALT_CONFIG_PREFIX برای محدود کردن فایلهای پیکربندی جایگزین به دایرکتوریای که فقط کاربر ریشه به آن دسترسی دارد استفاده کرد. این کار از اجرای یک Exim دارای امتیاز با یک فایل پیکربندی دلخواه توسط فردی که به حساب Exim نفوذ کرده است، جلوگیری میکند.
قابلیت -C برای اطمینان از صحت نحوی فایلهای پیکربندی مفید است، اما نمیتوان از آن برای تحویلهای آزمایشی استفاده کرد، مگر اینکه فراخواننده دارای امتیاز ویژه باشد، یا اینکه پیکربندی نامتعارفی باشد که به امتیاز ویژه نیاز ندارد. هیچ بررسی روی مالک یا گروه فایلهای مشخصشده توسط این گزینه انجام نمیشود.
- -D<macro>=<value>
- این گزینه
میتواند
برای
بازنویسی
تعاریف
ماکرو در
فایل
پیکربندی
استفاده
شود. با این
حال، مانند
-C، اگر
توسط یک
فراخواننده
غیرمجاز
استفاده
شود، باعث
میشود Exim
امتیاز
ریشه خود را
واگذار کند.
اگر DISABLE_D_OPTION در Local/Makefile
تعریف شده
باشد،
استفاده از
-D کاملاً
غیرفعال
میشود و
استفاده از
آن باعث
خروج فوری
با خطا
میگردد.
اگر WHITELIST_D_MACROS در Local/Makefile تعریف شده باشد، باید فهرستی از ماکروهای تفکیکشده با دونقطه باشد که ایمن در نظر گرفته میشوند، و اگر -D فقط ماکروهای این فهرست را ارائه دهد و مقادیر قابل قبول باشند، در صورتی که فراخواننده root، کاربر زمان اجرای Exim، یا CONFIGURE_OWNER (در صورت تنظیم) باشد، Exim امتیاز ریشه را رها نخواهد کرد. این یک مکانیزم گذار است و انتظار میرود در آینده حذف شود. مقادیر قابل قبول برای ماکروها با این عبارت باقاعده مطابقت دارند: ^[A-Za-z0-9_/.-]*$
کل گزینه (شامل علامت مساوی در صورت وجود) باید همگی درون یک مورد در خط فرمان قرار گیرند. میتوان از -D برای تنظیم مقدار یک ماکرو روی رشته خالی استفاده کرد، که در این صورت علامت مساوی اختیاری است. این دو دستور هممعنی هستند:
exim -DABC ...
exim -DABC= ...برای گنجاندن فاصلهها در یک مورد تعریف ماکرو، باید از نقلقول (quotes) استفاده شود. اگر از نقلقول استفاده کنید، فاصلهها در اطراف نام ماکرو و علامت مساوی مجاز هستند. برای مثال:
exim '-D ABC = something' ...گزینه -D ممکن است حداکثر تا ۱۰ بار در یک خط فرمان تکرار شود. تنها نامهای ماکرو با طول حداکثر ۲۲ حرف قابل تنظیم هستند.
- -d<debug options>
- این گزینه
باعث
میشود
اطلاعات
اشکالزدایی
در جریان
خطای
استاندارد
(stderr) نوشته
شوند. این
گزینه
محدود به
کاربران
مدیر است
زیرا خروجی
اشکالزدایی
ممکن است
پرسوجوهای
پایگاه
داده حاوی
گذرواژه را
نمایش دهد.
همچنین
جزئیات
فایلهای
فیلتر
کاربران
باید
محافظت
شوند. اگر
کاربری
غیرمدیر از
-d استفاده
کند، Exim یک
پیام خطا در
جریان خطای
استاندارد
نوشته و با
کد خروجی
غیرصفر
خارج
میشود.
هنگامی که -d استفاده میشود، گزینه -v نیز فرض میشود. اگر -d بهتنهایی داده شود، حجم زیادی از دادههای اشکالزدایی استاندارد خروجی داده میشود. این مقدار را میتوان کاهش داد، یا با اضافه کردن اطلاعاتی که کمتر مورد نیاز هستند افزایش داد؛ این کار با قرار دادن رشتهای از نامها که علامت مثبت (+) یا منفی (-) پیش از آنها آمده است بلافاصله پس از -d انجام میگیرد. این علامتها به ترتیب مجموعههای دادههای اشکالزدایی را اضافه یا حذف میکنند. برای مثال، -d+filter اشکالزدایی فیلتر را اضافه میکند، در حالی که -d-all+filter تنها اشکالزدایی فیلتر را انتخاب میکند. توجه داشته باشید که هیچ فاصلهای در تنظیم اشکالزدایی مجاز نیست. دستهبندیهای اشکالزدایی موجود عبارتند از:
acl تفسیر ACL
auth احراز هویتکنندهها
deliver منطق عمومی تحویل
dns جستجوهای DNS (همچنین resolver را ببینید)
dnsbl کد فهرست سیاه DNS (یا RBL)
exec آرگومانهای فراخوانیهای execv()
expand اشکالزدایی دقیق برای بسط رشتهها
filter مدیریت فیلتر
hints_lookup جستجوهای دادههای راهنما (hints)
host_lookup انواع مدیریت تبدیل نام به آدرس IP
ident جستجوی ident
interface فهرستهای رابطهای محلی
lists تطبیق موارد در فهرستها
load بررسیهای بار سیستم
local_scan قابل استفاده توسط local_scan()
lookup کد کلی جستجو و تمام جستجوها
macro تعریف و گسترش ماکرو
memory مدیریت حافظه
noutf8 اصلاحکننده: جلوگیری از رسم خطوط با UTF-8
pid اصلاحکننده: افزودن pid به خطوط خروجی اشکالزدایی
process_info تنظیم اطلاعات برای لاگ پردازش
queue_run اجراهای صف
receive منطق کلی دریافت پیام
regex عبارات باقاعده
resolver روشن کردن خروجی اشکالزدایی تحلیلگر DNS
retry مدیریت تلاش مجدد
rewrite بازنویسی آدرس
route مسیریابی آدرس
start اطلاعات مربوط به ساخت هنگام راهاندازی
timestamp اصلاحکننده: افزودن برچسب زمان به خطوط خروجی اشکالزدایی
tls منطق TLS
transport ترنسپورتها (انتقالدهندهها)
uid تغییرات uid/gid و جستجوی uid/gid
verify منطق اعتبارسنجی آدرس
all تقریباً تمام موارد بالا (به زیر مراجعه کنید)، و همچنین -vگزینه all هنگام استفاده بهعنوان +all، گزینههای memory، macro و regex را مستثنی میکند، اما برای -all آنها را شامل میشود. دلیل این امر این است که +all گزینهای است که کاربران معمولاً هنگام تولید خروجی اشکالزدایی برای نگهدارندگان Exim از آن استفاده میکنند. اگر +memory گنجانده شود، حجم بسیار زیادی از خروجی که به ندرت مورد توجه است تولید میشود، بنابراین اکنون باید به صراحت درخواست شود. با این حال، -all همه چیز را خاموش میکند.
گزینه resolver تنها در صورتی خروجی تولید میکند که تحلیلگر (resolver) DNS با فعال بودن DEBUG کامپایل شده باشد. در برخی سیستمعاملها اینگونه نیست. همچنین، متأسفانه خروجی اشکالزدایی تحلیلگر DNS به جای stderr در stdout نوشته میشود.
حالت پیشفرض (-d بدون آرگومان) گزینههای expand، filter، interface، load، memory، pid، resolver و timestamp را نادیده میگیرد. با این حال، انتخابگر pid هنگامی که اشکالزدایی برای یک دیمن فعال است اجباری میشود، که سپس آن را به هر نسخه مجدداً اجراشده Exim منتقل میکند. اکسیم همچنین بهطور خودکار pid را به خطوط اشکالزدایی هنگامی که چندین تحویل از راه دور بهصورت موازی اجرا میشوند اضافه میکند.
انتخابگر timestamp باعث میشود زمان فعلی در ابتدای تمام خطوط خروجی اشکالزدایی درج شود. این امر هنگام تلاش برای ردیابی تأخیرها در پردازش میتواند مفید باشد.
انتخابگر noutf8 استفاده از نویسههای خطکشی UTF-8 را برای گروهبندی اطلاعات مرتبط غیرفعال میکند. هنگامی که غیرفعال باشد، رسم اسکی (ascii-art) به جای آن استفاده میشود. استفاده از گزینه +all این اصلاحکننده را تنظیم نمیکند.
اگر گزینه debug_print در هر درایوری تنظیم شده باشد، هر زمان که هرگونه اشکالزدایی انتخاب شود، یا اگر از -v استفاده شود، خروجی تولید میکند.
- -dd<debug options>
- این گزینه دقیقاً مانند -d رفتار میکند، مگر زمانی که در دستوری استفاده شود که یک پردازش دیمن را راهاندازی میکند. در این حالت، اشکالزدایی برای زیرپردازشهایی که دیمن ایجاد میکند خاموش میشود. بنابراین، برای نظارت بر رفتار دیمن بدون ایجاد خروجی به اندازه اشکالزدایی کامل، مفید است.
- -dp<size>
- این گزینه یک بافر پیشمحرک (pretrigger) اشکالزدایی با اندازه معین (بر حسب بایت) تنظیم میکند. مقدار پیشفرض ۱۶ کیلوبایت است.
- -dt=<value>
- این گزینه دلایل بیشتری را برای راهاندازی اشکالزدایی، علاوه بر محرکهای آغازشده توسط ACL، تعیین میکند. مقداری با بیت ۰ فعال، هنگام نوشتن در لاگ بحرانی (panic log) فعال میشود. اگر یک بافر پیشمحرک تنظیم شده باشد (به گزینه -dp در بالا مراجعه کنید)، مسیر اشکالزدایی منتهی به این نوشتن در دسترس خواهد بود.
- -dS
- این گزینه اشکالزدایی را در طول راهاندازی Exim، قبل از تکمیل پردازش فایل(های) پیکربندی فعال میکند.
- -E
- این گزینه مشخص میکند که یک پیام ورودی، گزارش شکست تحویل است که بهصورت محلی ایجاد شده است. این گزینه بهصورت داخلی توسط Exim هنگام مدیریت شکستهای تحویل استفاده میشود و برای استفاده خارجی در نظر گرفته نشده است. تنها اثر آن جلوگیری از ایجاد پیامهای خاصی توسط Exim برای مدیر پستچی (postmaster) است، زیرا در غیر این صورت ممکن است در برخی موقعیتها آبشاری از پیامها رخ دهد. بهعنوان بخشی از همین گزینه، شناسه پیام ممکن است به دنبال نویسههای -E بیاید. اگر چنین باشد، مدخل لاگ برای دریافت پیام جدید شامل این شناسه به دنبال "R=" بهعنوان یک ارجاع متقابل خواهد بود.
- -ex
- تعدادی از گزینههای Sendmail وجود دارند که با -oe شروع میشوند و به نظر میرسد توسط برنامههای مختلف بدون حرف ابتدایی o فراخوانی میشوند. برای مثال، برنامه vacation از -eq استفاده میکند. اکسیم تمام گزینههای به فرم -ex را مترادف با گزینههای متناظر -oex در نظر میگیرد.
- -F <string>
- این گزینه نام کامل فرستنده را برای استفاده در هنگام پذیرش پیام تولیدشده محلی تنظیم میکند. در صورت عدم وجود این گزینه، مدخل gecos کاربر از دادههای گذرواژه استفاده میشود. از آنجا که کاربران عموماً مجاز به تغییر مدخلهای gecos خود هستند، هیچ ملاحظه امنیتی در این مورد وجود ندارد. فاصله خالی بین -F و <string> اختیاری است.
- -f <address>
- این گزینه
آدرس
فرستنده
پاکت پیام
تولیدشده
محلی (که
بهعنوان
مسیر
بازگشت نیز
شناخته
میشود) را
تعیین
میکند. این
گزینه
معمولاً
فقط توسط یک
کاربر قابل
اعتماد
قابل
استفاده
است، اما
میتوان
untrusted_set_sender را
تنظیم کرد
تا به
کاربران
غیرقابلاعتماد
نیز اجازه
استفاده از
آن داده
شود.
پردازشهایی که تحت کاربر root یا کاربر Exim اجرا میشوند همیشه قابل اعتماد هستند. سایر کاربران قابل اعتماد توسط گزینههای trusted_users یا trusted_groups تعریف میشوند. در صورت عدم وجود -f، یا اگر فراخواننده قابل اعتماد نباشد، فرستنده یک پیام محلی روی نام کاربری ورود فراخواننده در دامنه واجد صلاحیت پیشفرض تنظیم میشود.
یک استثنا برای محدودیت در استفاده از -f وجود دارد: یک فرستنده خالی میتواند توسط هر کاربری، چه قابل اعتماد و چه غیرقابلاعتماد، برای ایجاد پیامی که هرگز نمیتواند باعث برگشت (bounce) شود مشخص شود. یک فرستنده خالی را میتوان بهعنوان یک رشته خالی، یا بهعنوان یک جفت پرانتز شکسته بدون هیچ چیزی بین آنها، مانند این مثالهای دستورات شل مشخص کرد:
exim -f '<>' user@domain
exim -f "" user@domainعلاوه بر این، استفاده از -f هنگام آزمایش یک فایل فیلتر با -bf یا هنگام آزمایش یا اعتبارسنجی آدرسها با استفاده از گزینههای -bt یا -bv محدودیتی ندارد.
اجازه دادن به کاربران غیرقابلاعتماد برای تغییر آدرس فرستنده، بهخودیخود امکان ارسال ایمیل ناشناس را فراهم نمیکند. اکسیم همچنان بررسی میکند که هدر From: به کاربر محلی ارجاع دارد یا خیر، و اگر ارجاع نداشته باشد، یک هدر Sender: اضافه میکند، هرچند میتوان این رفتار را با تنظیم no_local_from_check لغو کرد.
فاصله خالی بین -f و <address> اختیاری است (یعنی میتوان آنها را بهعنوان دو آرگومان یا یک آرگومان ترکیبی ارائه داد). فرستنده یک پیام تولیدشده محلی را میتوان (در صورت مجاز بودن) با یک خط ابتدایی "From " در پیام نیز تعیین کرد - توضیحات -bm را در بالا ببینید - اما اگر -f نیز وجود داشته باشد، بر "From " اولویت دارد.
- -G
- این گزینه
معادل یک ACL
است که
قانون زیر
را اعمال
میکند:
control = suppress_local_fixupsبرای هر پیام دریافتشده. توجه داشته باشید که Sendmail از چنین قالببندیهای نادرستی شکایت میکند، در حالی که Exim در سکوت فقط آنها را اصلاح نمیکند. این ممکن است در آینده تغییر کند.
از آنجا که این امر بر اطلاعات ممیزی تأثیر میگذارد، فراخواننده برای استفاده از این گزینه باید یک کاربر قابل اعتماد باشد.
- -h <number>
- این گزینه جهت سازگاری با Sendmail پذیرفته میشود، اما هیچ اثری ندارد. (در Sendmail این گزینه مقدار "شمارش جهش" را که از شمارش هدرهای Received: به دست میآید بازنویسی میکند.)
- -i
- این گزینه که اثر مشابهی با -oi دارد، مشخص میکند که وجود نقطه در یک سطر بهتنهایی نباید باعث خاتمه یک پیام ورودی غیر SMTP شود. نرمافزار Sendmail در سولاریس ۲.۴ (SunOS 5.4) گزینه پردازشی مشابه -i دارد (https://docs.oracle.com/cd/E19457-01/801-6680-1M/801-6680-1M.pdf، صفحه 1M-529)، و بنابراین گزینه خط فرمان -oi دارد که هر دو توسط دستور mailx آن استفاده میشوند.
- -L <tag>
- این گزینه
معادل
تنظیم syslog_processname
در فایل
پیکربندی و
تنظیم log_file_path
روی syslog است.
استفاده از
آن محدود به
مدیران است.
فایل
پیکربندی
برای تعیین
حقوق
دسترسی
باید قبل از
تنظیم و
اعمال این
گزینه
خوانده و
تجزیه شود،
بنابراین
خطاهای
اولیه فایل
پیکربندی
این پرچم را
رعایت
نخواهند
کرد.
برچسب نباید طولانیتر از ۳۲ نویسه باشد.
- -M <message id> <message id> ...
- این گزینه
از Exim
درخواست
میکند تا
تلاش برای
تحویل را
روی هر پیام
به نوبت
اجرا کند.
اگر هر یک
از پیامها
منجمد (frozen)
باشند، قبل
از تلاش
برای تحویل
بهطور
خودکار
یخزدایی (thawed)
میشوند.
تنظیمات
queue_domains، queue_smtp_domains و
hold_domains نادیده
گرفته
میشوند.
راهنماهای تلاش مجدد (retry hints) برای هر یک از آدرسها بازنویسی میشوند - Exim حتی اگر هنوز به زمان تلاش مجدد عادی نرسیده باشد، تلاش میکند تحویل را انجام دهد. این گزینه مستلزم آن است که فراخواننده یک کاربر مدیر باشد. با این حال، گزینهای به نام prod_requires_admin وجود دارد که میتوان آن را روی false تنظیم کرد تا این محدودیت کاهش یابد (و همچنین الزامی مشابه برای گزینههای -q، -R و -S).
تحویلها بهصورت همگام انجام میشوند، یعنی پردازش اصلی Exim تا زمانی که تمام تلاشهای تحویل به پایان نرسند خاتمه نمییابد. هیچ خروجی تولید نمیشود مگر اینکه خطای جدی رخ دهد. اگر میخواهید ببینید چه اتفاقی در حال رخ دادن است، از گزینه -v نیز استفاده کنید، یا لاگ اصلی Exim را بررسی نمایید.
- -Mar <message id> <address> <address> ...
- این گزینه
از Exim
درخواست
میکند که
آدرسها را
به فهرست
گیرندگان
پیام اضافه
کند ("ar" برای
"add recipients").
آرگومان
اول باید یک
شناسه پیام
باشد و
آرگومانهای
باقیمانده
باید
آدرسهای
ایمیل
باشند. با
این حال،
اگر پیام
فعال باشد
(در میانه
تلاش برای
تحویل)،
تغییری در
آن ایجاد
نمیشود.
این گزینه
فقط توسط
کاربر مدیر
قابل
استفاده
است. -MC
<transport> <hostname>
<host IP> <host port>
<sequence number> <message id>
این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim استفاده میشود تا نمونه دیگری از خود را فراخوانی کند تا پیامی در حال انتظار را با استفاده از یک اتصال موجود SMTP (که بهعنوان ورودی استاندارد منتقل میشود) تحویل دهد. این باید آخرین گزینه باشد، و فراخواننده برای استفاده از آن باید root یا کاربر Exim باشد.
- -MCA
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود و نشان میدهد که اتصال به میزبان راه دور احراز هویت شده است.
- -MCD
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim در ترکیب با گزینه -MC استفاده میشود و نشان میدهد که میزبان راه دور از پسوند ESMTP DSN پشتیبانی میکند.
- -MCd
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -d برای انتقال یک رشته اطلاعاتی درباره هدف پردازش استفاده میشود.
- -MCG <queue name>
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود و نشان میدهد که از یک صف جایگزین استفاده شده که نام آن توسط آرگومان بعدی مشخص میشود.
- -MCK
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود و نشان میدهد که یک میزبان دوردست از پسوند ESMTP CHUNKING پشتیبانی میکند.
- -MCL
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود و نشان میدهد سروری که Exim به آن متصل است، محدودیتهایی را روی تعداد نامهها، گیرندگان یا دامنههای گیرنده اعلام کرده است. این محدودیتها توسط سه آرگومان بعدی مشخص میشوند.
- -MCP
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود و نشان میدهد سروری که Exim به آن متصل است از خط لوله (pipelining) پشتیبانی میکند.
- -MCp
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود و نشان میدهد که اتصال به یک سرور از راه دور از طریق پروکسی SOCKS، با استفاده از آدرسها و پورتهای ارائهشده توسط چهار آرگومان بعدی انجام میشود.
- -MCQ <process id> <pipe fd>
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC زمانی استفاده میشود که تحویل اولیه توسط یک اجراکننده صف آغاز شده باشد. این گزینه شناسه پردازش (PID) اجراکننده صف را به همراه شماره توصیفکننده فایل لوله (pipe fd) باز انتقال میدهد. بسته شدن لوله نشاندهنده اتمام نهایی توالی پردازشهایی است که پیامها را از طریق همان اتصال SMTP منتقل میکنند.
- -MCq <recipient address> <size>
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim برای پیادهسازی بررسی سهمیه برای کاربران محلی استفاده میشود.
- -MCS
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود، و این واقعیت را منتقل میکند که گزینه ESMTP SIZE باید روی پیامهای تحویلدادهشده از طریق اتصال موجود استفاده شود.
- -MCT
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود، و این موضوع را انتقال میدهد که میزبانی که Exim به آن متصل است از رمزنگاری TLS پشتیبانی میکند.
- -MCr <SNI>
- -MCs <SNI> این گزینهها برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشدهاند. این گزینهها بهصورت داخلی توسط Exim همراه با گزینه -MCt استفاده میشوند، و این موضوع را انتقال میدهند که یک نشانگر نام سرور (SNI) در TLS بهعنوان بخشی از ایجاد کانال ارسال شده است. آرگومان رشته SNI را مشخص میکند. گونه "r" نشاندهنده یک اتصال تأییدشده با DANE است.
- -MCt <IP address> <port> <cipher>
- این گزینه برای استفاده توسط فراخوانندگان خارجی در نظر گرفته نشده است. این گزینه بهصورت داخلی توسط Exim همراه با گزینه -MC استفاده میشود، و این واقعیت را منتقل میکند که اتصال توسط یک پردازش والد برای مدیریت رمزنگاری TLS پروکسی شده است. آرگومانها آدرس محلی و پورت پروکسیشده، و رمز TLS را ارائه میدهند.
- -Mc <message id> <message id> ...
- این گزینه از Exim درخواست میکند که تلاش برای تحویل را به نوبت روی هر پیام اجرا کند، اما برعکس گزینه -M، راهنماهای تلاش مجدد (retry hints) را بررسی کرده و در صورت وجود رعایت میکند. این گزینه برای فراخوانندگان خارجی چندان مفید نیست و عمدتاً برای استفاده داخلی Exim زمانی که نیاز به فراخوانی مجدد خود برای بازیابی امتیاز root جهت تحویل دارد، در نظر گرفته شده است. با این حال، -Mc میتواند هنگام آزمایش برای اجرای تحویلی که زمانهای تلاش مجدد و سایر گزینهها مانند hold_domains (که هنگام استفاده از -M لغو میشوند) را رعایت میکند، مفید باشد. چنین تحویلی بهعنوان یک اجرای صف محسوب نمیشود. اگر میخواهید یک تحویل خاص را مانند اجرای صف اجرا کنید، باید از -q به همراه یک شناسه پیام بهعنوان آرگومان استفاده کنید. در یک یا دو جا تمایز میان تحویلهای اجرای صف و سایر تحویلها اعمال میشود.
- -Mes <message id> <address>
- این گزینه از Exim درخواست میکند تا آدرس فرستنده پیام را به آدرس ارائهشده تغییر دهد، که باید یک آدرس با دامنه کامل یا "<>" باشد ("es" مخفف "edit sender"). باید دقیقاً دو آرگومان وجود داشته باشد؛ اولین آرگومان باید شناسه پیام و دومی آدرس ایمیل باشد. با این حال، اگر پیام فعال باشد (در میانه تلاش برای تحویل)، وضعیت آن تغییر نمیکند. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -Mf <message id> <message id> ...
- این گزینه از Exim درخواست میکند که هر یک از پیامهای فهرستشده را بهعنوان "منجمد" (frozen) علامتگذاری کند. این امر از انجام هرگونه تلاش برای تحویل تا زمان "یخزدایی" (thawed) پیام، چه بهصورت دستی و چه بر اثر گزینه پیکربندی auto_thaw، جلوگیری میکند. با این حال، اگر هر یک از پیامها فعال باشند (در میانه تلاش برای تحویل)، وضعیت آنها تغییر نمیکند. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -Mg <message id> <message id> ...
- این گزینه از Exim درخواست میکند تا از تلاش برای تحویل پیامهای فهرستشده، از جمله پیامهای منجمد، صرفنظر کند. با این حال، اگر هر یک از پیامها فعال باشند، وضعیت آنها تغییر نمیکند. برای پیامهای غیربرگشتی، یک پیام خطای تحویل برای فرستنده ارسال میشود. پیامهای برگشتی به سادگی دور ریخته میشوند. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -MG <queue name> <message id> <message id> ...
- این گزینه درخواست میکند که هر یک از پیامهای فهرستشده از صف فعلی خود به صف نامگذاریشده مشخصشده منتقل شوند. آرگومان نام صف مقصد الزامی است، اما میتواند یک رشته خالی برای تعریف صف پیشفرض باشد. اگر پیامها در حال حاضر در صف پیشفرض قرار ندارند، گزینه -qG<name> برای تعریف صف مبدأ مورد نیاز خواهد بود.
- -Mmad <message id> <message id> ...
- این گزینه از Exim درخواست میکند تا تمام آدرسهای گیرنده در پیامها را بهعنوان تحویلدادهشده علامتگذاری کند ("mad" مخفف "mark all delivered"). با این حال، اگر پیامی فعال باشد (در میانه تلاش برای تحویل)، وضعیت آن تغییر نمیکند. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -Mmd <message id> <address> <address> ...
- این گزینه از Exim درخواست میکند که آدرسهای ارائهشده را بهعنوان تحویلدادهشده علامتگذاری کند ("md" مخفف "mark delivered"). آرگومان اول باید یک شناسه پیام باشد و موارد بعدی باید آدرسهای ایمیل باشند. این آدرسها با آدرسهای گیرنده در پیام بهصورت حساس به حروف کوچک و بزرگ مطابقت داده میشوند. اگر پیام فعال باشد (در میانه تلاش برای تحویل)، وضعیت آن تغییر نمیکند. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -Mrm <message id> <message id> ...
- این گزینه از Exim درخواست میکند تا پیامهای مشخصشده را از صف حذف کند. هیچ پیام برگشتی ارسال نمیشود و هر پیام صرفاً فراموش میشود. با این حال، اگر هر یک از پیامها فعال باشند، وضعیت آنها تغییر نمیکند. این گزینه فقط توسط یک کاربر مدیر یا توسط کاربری که در ابتدا باعث قرار گرفتن پیام در صف شده است قابل استفاده است.
- -Mset <message id>
- این گزینه تنها در ترکیب با -be (یعنی هنگام آزمایش گسترش رشتهها) مفید است. اگزیم پیام مشخصشده را پیش از انجام گسترش آزمایشی از spool خود بارگذاری میکند، و بدین ترتیب متغیرهای ویژه پیام مانند $message_size و متغیرهای هدر را مقداردهی میکند. متغیر $recipients در دسترس قرار میگیرد. این قابلیت برای آسانتر کردن آزمایش گسترشهایی که از این متغیرها استفاده میکنند فراهم شده است. با این حال، این گزینه فقط توسط یک کاربر مدیر قابل استفاده است. همچنین گزینه -bem را ببینید.
- -Mt <message id> <message id> ...
- این گزینه از Exim درخواست میکند تا هر یک از پیامهای فهرستشده را که منجمد هستند، یخزدایی (thaw) کند تا تلاشهای تحویل بتوانند از سر گرفته شوند. با این حال، اگر هر یک از پیامها فعال باشند، وضعیت آنها تغییر نمیکند. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -Mvb <message id>
- این گزینه باعث میشود محتویات فایل spool بدنه پیام (-D) در خروجی استاندارد نوشته شود. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -Mvc <message id>
- این گزینه باعث میشود رونوشتی از پیام کامل (سطرهای هدر به علاوه بدنه) با فرمت RFC 2822 در خروجی استاندارد نوشته شود. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -Mvh <message id>
- این گزینه باعث میشود محتویات فایل spool هدرهای پیام (-H) در خروجی استاندارد نوشته شود. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -Mvl <message id>
- این گزینه باعث میشود محتویات فایل لاگ spool پیام در خروجی استاندارد نوشته شود. این گزینه فقط توسط یک کاربر مدیر قابل استفاده است.
- -m
- این یک مترادف برای -om است که توسط Sendmail پذیرفته شده است (https://docs.oracle.com/cd/E19457-01/801-6680-1M/801-6680-1M.pdf صفحه 1M-258)، بنابراین Exim نیز با آن به همان صورت رفتار میکند.
- -N
- این یک
گزینه
اشکالزدایی
است که مانع
از تحویل
پیام در سطح
ترنسپورت
(انتقال)
میشود و
گزینه -v را
در بر دارد.
اگزیم
بسیاری از
مراحل
تحویل را طی
میکند -
فقط در
واقعیت
پیام را
انتقال
نمیدهد،
بلکه طوری
رفتار
میکند که
گویی این
کار را با
موفقیت
انجام داده
است. با این
حال، هیچ
بهروزرسانی
در پایگاه
داده تلاش
مجدد انجام
نمیدهد و
ورودیهای
لاگ برای
تحویلها
به جای "=>"
با "*>"
علامتگذاری
میشوند.
از آنجا که -N هر پیامی را که به آن اعمال میشود دور میاندازد، تنها کاربر root یا کاربر Exim مجاز به استفاده از آن به همراه گزینههای -bd، -q، -R یا -M هستند. به عبارت دیگر، یک کاربر عادی تنها زمانی میتواند از آن استفاده کند که پیام ورودیای را ارائه میدهد که این گزینه به آن اعمال خواهد شد. اگرچه انتقال پیام هنگام تنظیم بودن -N هرگز شکست نمیخورد، اما یک آدرس ممکن است به دلیل مشکل پیکربندی در ترنسپورت یا مشکل مسیریابی به تعویق بیفتد. پس از اینکه -N برای یک تلاش تحویل استفاده شد، به پیام وابسته میماند و برای هرگونه تلاش بعدی تحویل که ممکن است برای آن پیام رخ دهد اعمال میشود.
- -n
- این گزینه توسط Sendmail به معنای "بدون ایجاد نام مستعار" (no aliasing) تفسیر میشود. برای حالتهای عادی عملکرد، توسط Exim نادیده گرفته میشود. هنگامی که با -bP ترکیب شود، خروجی را خلاصهتر میکند (نام گزینهها، مقادیر محیطی و قالببندی زیبای پیکربندی را پنهان میسازد).
- -O <data>
- این گزینه توسط Sendmail به معنای تنظیم گزینه تفسیر میشود و توسط Exim نادیده گرفته میشود.
- -oA <file name>
- این گزینه توسط Sendmail در ترکیب با -bi برای تعیین نام فایل نامهای مستعار جایگزین استفاده میشود. اکسیم با -bi بهگونه متفاوتی رفتار میکند؛ توضیحات بالا را ببینید.
- -oB <n>
- این یک گزینه اشکالزدایی است که حداکثر تعداد پیامهایی را که میتوان از طریق یک اتصال SMTP تحویل داد محدود میکند و مقدار تنظیمشده در هر ترنسپورت smtp را بازنویسی مینماید. اگر <n> حذف شود، این حد روی ۱ تنظیم میشود.
- -oDSN <option>
- پسوندهای DSN (RFC 3461) در صورت امکان روی پیامهای ارسالی از خط فرمان در زمان استفاده از یک یا چند مورد از این گزینهها استفاده خواهند شد. مقدار گزینه باید با یک حرف کد و علامت مساوی شروع شود. حرف کد N درخواست پارامتر NOTIFY را در دستورات SMTP RCPT صادر میکند؛ پس از علامت مساوی میتوان "never" یا فهرستی تفکیکشده با کاما از هر ترکیبی از "success"، "failure" و "delay" قرار داد. پارامتر NOTIFY برای تمام گیرندگان پیام اعمال میشود. حرف کد R درخواست پارامتر RET را در دستور SMTP MAIL ارسال میکند؛ پس از علامت مساوی باید "full" یا "hdrs" بیاید. حرف کد V درخواست پارامتر ENVID را در دستور SMTP MAIL صادر میکند؛ پس از علامت مساوی باید مقدار "شناسه پاکت" برای پیام قرار گیرد.
- -odb
- این گزینه
برای تمام
حالتهایی
که در آنها
Exim پیامهای
ورودی را
میپذیرد
(از جمله
دیمن
شنونده)
اعمال
میشود. این
گزینه
درخواست
تحویل در
پسزمینه
(background) چنین
پیامهایی
را میدهد،
به این معنی
که پردازش
پذیرنده
بهطور
خودکار یک
پردازش
تحویل برای
هر پیام
دریافتشده
آغاز
میکند،
اما منتظر
پایان
پردازشهای
تحویل
نمیماند.
هنگامی که همه پیامها دریافت شدند، پردازش دریافت خارج میشود و به پردازشهای تحویل اجازه میدهد تا در زمان خود کار را به پایان برسانند. جریانهای خروجی و خطای استاندارد در شروع هر پردازش تحویل بسته میشوند. اگر هیچ یک از گزینههای -od وجود نداشته باشد، این اقدام پیشفرض است.
اگر یکی از گزینههای صفبندی در فایل پیکربندی (برای مثال queue_only یا queue_only_file) فعال باشد، در صورتی که queue_only_override روی true تنظیم شده باشد (که تنظیم پیشفرض است)، گزینه -odb آن را بازنویسی میکند. اگر queue_only_override روی false تنظیم شده باشد، -odb هیچ تأثیری ندارد.
- -odf
- این گزینه
درخواست
تحویل در
پیشزمینه
یا همگام
(foreground/synchronous) را
زمانی که Exim
پیامی
تولیدشده
محلی را
پذیرفته
است صادر
میکند.
(برای دیمن
دقیقاً
مشابه -odb
است). یک
پردازش
تحویل
بهطور
خودکار
برای تحویل
پیام آغاز
میشود و Exim
قبل از
ادامه کار
منتظر
تکمیل آن
میماند.
پردازش اصلی دریافت Exim تا پایان پردازش تحویل برای آخرین پیام تمام نمیشود. جریان خطای استاندارد در طول تحویلها باز میماند.
با این حال، مانند -odb، اگر queue_only_override مقدار false داشته باشد و یکی از گزینههای صفبندی در فایل پیکربندی فعال باشد، این گزینه هیچ اثری ندارد.
اگر در حین تحویل پیشزمینه خطای تحویل موقتی رخ دهد، پیام برای تحویل بعدی در صف باقی میماند و پردازش اصلی دریافت خارج میشود.
- -odi
- این گزینه مترادف با -odf است و جهت سازگاری با Sendmail ارائه شده است.
- -odq
- این گزینه برای تمامی حالتهایی که در آنها Exim پیامهای ورودی را میپذیرد (از جمله دیمن شنونده) اعمال میشود. این گزینه مشخص میکند که پردازش پذیرنده نباید بهطور خودکار پردازش تحویل را برای هر پیام دریافتشده آغاز کند. پیامها در صف قرار میگیرند و تا زمانی که پردازش بعدی اجراکننده صف با آنها مواجه شود در آنجا باقی میمانند. چندین گزینه پیکربندی (مانند queue_only) وجود دارد که میتوان از آنها برای صفبندی پیامهای ورودی تحت شرایط خاص استفاده کرد. این گزینه تمام آنها و همچنین -odqs را بازنویسی میکند و همیشه صفبندی را اجباری میسازد.
- -odqs
- این گزینه
حالتی
ترکیبی
میان -odb/-odi و
-odq است. با
این حال،
مانند -odb و
-odi، اگر queue_only_override
روی false باشد و
یکی از
گزینههای
صفبندی در
فایل
پیکربندی
فعال باشد،
این گزینه
هیچ اثری
ندارد.
هنگامی که -odqs عمل میکند، یک پردازش تحویل برای هر پیام ورودی آغاز میشود؛ بهطور پیشفرض در پسزمینه، اما در صورت وجود -odi در پیشزمینه. آدرسهای گیرنده مسیریابی میشوند و تحویلهای محلی به روش معمول انجام میگیرند. با این حال، اگر تحویلهای SMTP مورد نیاز باشد، در این زمان انجام نمیشوند، بنابراین پیام در صف باقی میماند تا زمانی که یک پردازش بعدی اجراکننده صف با آن مواجه شود. از آنجا که مسیریابی انجام شده است، Exim میداند کدام پیامها برای کدام میزبانها در انتظار هستند، و بنابراین چندین پیام برای یک میزبان میتوانند در یک اتصال SMTP واحد ارسال شوند. گزینه پیکربندی queue_smtp_domains همین اثر را برای دامنههای خاص دارد. گزینه -qq را نیز ببینید.
- -oee
- اگر هنگام
دریافت یک
پیام غیر SMTP
خطایی
شناسایی
شود (برای
مثال،
آدرسی با
ساختار
نادرست)،
خطا در یک
پیام ایمیل
به فرستنده
گزارش
میشود.
به شرطی که این پیام خطا با موفقیت ارسال شود، پردازش دریافت Exim با کد خروجی صفر خارج میشود. در غیر این صورت، اگر مشکل این باشد که پیام اصلی گیرندهای ندارد کد خروجی ۲، و برای هر خطای دیگر ۱ خواهد بود. این گزینه پیشفرض -oex در صورتی است که Exim بهصورت rmail فراخوانی شود.
- -oem
- این گزینه همانند -oee است، با این تفاوت که Exim همیشه با کد خروجی غیرصفر خارج میشود، صرفنظر از اینکه پیام خطا با موفقیت ارسال شده باشد یا خیر. این گزینه پیشفرض -oex است، مگر اینکه Exim بهصورت rmail فراخوانی شود.
- -oep
- اگر هنگام دریافت یک پیام غیر SMTP خطایی شناسایی شود، خطا با نوشتن یک پیام در فایل خطای استاندارد (stderr) گزارش میشود. کد خروجی برای تمام خطاها ۱ است.
- -oeq
- این گزینه جهت سازگاری با Sendmail پشتیبانی میشود، اما همان اثر -oep را دارد.
- -oew
- این گزینه جهت سازگاری با Sendmail پشتیبانی میشود، اما همان اثر -oem را دارد.
- -oi
- این گزینه، که همان اثر -i را دارد، مشخص میکند که وجود نقطه در یک سطر بهتنهایی نباید باعث خاتمه یک پیام ورودی غیر SMTP شود. در غیر این صورت، یک نقطه منفرد پیام را خاتمه میدهد، هرچند Exim پردازش خاصی برای سایر خطوطی که با نقطه شروع میشوند انجام نمیدهد. این گزینه در صورتی که Exim بهصورت rmail فراخوانی شود بهطور پیشفرض تنظیم است. همچنین گزینه -ti را ببینید.
- -oitrue
- این گزینه مترادف با -oi در نظر گرفته میشود.
- -oMa <host address>
- تعدادی از
گزینههایی
که با -oM
شروع
میشوند
میتوانند
برای تنظیم
مقادیر
مرتبط با
میزبانهای
راه دور روی
پیامهای
ارسالی
محلی (یعنی
پیامهایی
که از طریق TCP/IP
دریافت
نشدهاند)
استفاده
شوند. این
گزینهها
میتوانند
توسط هر
فراخوانندهای
در ترکیب با
گزینههای
آزمایشی
-bh، -be، -bf،
-bF، -bt یا -bv
استفاده
شوند. در
شرایط
دیگر،
نادیده
گرفته
میشوند
مگر اینکه
فراخواننده
قابل
اعتماد
باشد.
گزینه -oMa آدرس میزبان فرستنده را تعیین میکند. این مقدار میتواند شامل یک شماره پورت در انتها، پس از یک نقطه باشد. برای مثال:
exim -bs -oMa 10.9.8.7.1234یک ساختار نحوی جایگزین این است که آدرس IP در قلابها (کروشهها) قرار گیرد و به دنبال آن دونقطه و شماره پورت بیاید:
exim -bs -oMa [10.9.8.7]:1234آدرس IP در متغیر $sender_host_address، و پورت (در صورت وجود) در $sender_host_port قرار میگیرد. اگر هر دو گزینه -oMa و -bh در خط فرمان وجود داشته باشند، آدرس IP میزبان فرستنده از گزینهای که در آخر آمده است گرفته میشود.
- -oMaa <name>
- برای ملاحظات عمومی درباره گزینههای -oM به -oMa در بالا مراجعه کنید. گزینه -oMaa مقدار $sender_host_authenticated (نام احراز هویتکننده) را تنظیم میکند. این گزینه میتواند با -bh و -bs برای راهاندازی یک نشست SMTP احراز هویتشده بدون استفاده واقعی از دستور SMTP AUTH استفاده شود.
- -oMai <string>
- برای ملاحظات عمومی درباره گزینههای -oM به -oMa در بالا مراجعه کنید. گزینه -oMai مقدار $authenticated_id (شناسهای که احراز هویت شده) را تنظیم میکند. این مقدار، مقدار پیشفرض (شناسه ورود فراخواننده، به جز در -bh که پیشفرضی ندارد) را برای پیامهای منابع محلی بازنویسی میکند.
- -oMas <address>
- برای ملاحظات عمومی درباره گزینههای -oM به -oMa در بالا مراجعه کنید. گزینه -oMas مقدار فرستنده احراز هویتشده را در $authenticated_sender تنظیم میکند. این گزینه آدرس فرستندهای را که از شناسه ورود فراخواننده برای پیامهای منابع محلی ایجاد شده است بازنویسی میکند، به جز زمانی که -bh استفاده میشود که هیچ پیشفرضی ندارد. برای هر دو مورد -bh و -bs، فرستنده احراز هویتشدهای که در یک دستور MAIL مشخص شده باشد، این مقدار را بازنویسی میکند.
- -oMi <interface address>
- برای ملاحظات عمومی درباره گزینههای -oM به -oMa در بالا مراجعه کنید. گزینه -oMi مقدار آدرس رابط IP را تنظیم میکند. یک شماره پورت ممکن است با استفاده از همان ساختار -oMa گنجانده شود. آدرس رابط در $received_ip_address و شماره پورت در صورت وجود در $received_port قرار میگیرد.
- -oMm <message reference>
- برای
ملاحظات
عمومی
درباره
گزینههای
-oM به -oMa در
بالا
مراجعه
کنید. گزینه
-oMm مرجع
پیام (مانند
message-id) را تنظیم
میکند و در
حین تحویل
ثبت میشود.
این گزینه
زمانی مفید
است که نوعی
دنباله
حسابرسی
برای پیوند
دادن
پیامها به
یکدیگر
مورد نیاز
باشد. قالب
مرجع پیام
بررسی
میشود و در
صورت
نامعتبر
بودن قالب
متوقف
میگردد.
این گزینه
تنها در
صورتی
پذیرفته
میشود که Exim
در حالت
قابل
اعتماد (trusted)
اجرا شود،
نه
بهعنوان
هر کاربر
عادی.
بهترین نمونه از مرجع پیام زمانی است که Exim یک پیام برگشتی ارسال میکند. مرجع پیام، همان شناسه پیام (message-id) پیام اصلی است که Exim برای آن پیام برگشتی را میفرستد.
- -oMr <protocol name>
- برای ملاحظات عمومی درباره گزینههای -oM به -oMa در بالا مراجعه کنید. گزینه -oMr مقدار پروتکل دریافتشده را که در $received_protocol ذخیره میشود تنظیم میکند. با این حال، هنگامی که -bh یا -bs استفاده میشود اعمال نمیگردد (و نادیده گرفته میشود). برای -bh، پروتکل به یکی از نامهای پروتکل استاندارد SMTP اجبار میشود. برای -bs، پروتکل همیشه "local-" و به دنبال آن یکی از همان نامها است. اما برای -bS (دستهای SMTP)، پروتکل میتواند توسط -oMr تنظیم شود. استفاده مکرر از این گزینه پشتیبانی نمیشود.
- -oMs <host name>
- برای ملاحظات عمومی درباره گزینههای -oM به -oMa در بالا مراجعه کنید. گزینه -oMs نام میزبان فرستنده را در $sender_host_name تنظیم میکند. هنگامی که این گزینه وجود داشته باشد، Exim تلاشی برای جستجوی نام میزبان از روی آدرس IP انجام نمیدهد؛ بلکه از نامی که به آن داده شده است استفاده میکند.
- -oMt <ident string>
- برای ملاحظات عمومی درباره گزینههای -oM به -oMa در بالا مراجعه کنید. گزینه -oMt مقدار هویت (ident) فرستنده را در $sender_ident تنظیم میکند. تنظیم پیشفرض برای فراخوانندگان محلی، شناسه ورود پردازش فراخواننده است، به جز زمانی که -bh استفاده شود که هیچ پیشفرضی ندارد.
- -om
- در Sendmail، این گزینه به معنای "me too" است و نشان میدهد که فرستنده پیام در صورتی که در یک گسترش نام مستعار ظاهر شود، باید یک رونوشت از پیام دریافت کند. اکسیم همیشه این کار را انجام میدهد، بنابراین این گزینه کاری انجام نمیدهد.
- -oo
- این گزینه نادیده گرفته میشود. در Sendmail هدرهای سبک قدیمی را مشخص میکند.
- -oP <path>
- این گزینه تنها در ترکیب با -bd یا -q به همراه یک مقدار زمانی مفید است. این گزینه فایلی را مشخص میکند که شناسه پردازش (PID) دیمن در آن نوشته میشود. هنگامی که -oX با -bd استفاده میشود، یا هنگامی که -q با یک زمان بدون -bd استفاده میشود، این تنها راهی است که باعث میشود Exim یک فایل pid بنویسد، زیرا در این موارد، از فایل pid معمولی استفاده نمیشود.
- -oPX
- این گزینه برای استفاده عمومی در نظر گرفته نشده است. دیمن هنگام خاتمه بر اثر SIGTERM، احتمالاً در ترکیب با -oP <path> از آن استفاده میکند. این گزینه باعث حذف فایل pid میشود.
- -or <time>
- این گزینه یک مقدار مهلت زمانی برای پیامهای ورودی غیر SMTP تعیین میکند. اگر تنظیم نشده باشد، Exim برای همیشه منتظر ورودی استاندارد میماند. این مقدار را میتوان با گزینه receive_timeout نیز تنظیم کرد.
- -os <time>
- این گزینه یک مقدار مهلت زمانی برای پیامهای ورودی SMTP تعیین میکند. مهلت زمانی برای هر دستور SMTP و بلوک داده اعمال میشود. این مقدار را میتوان با گزینه smtp_receive_timeout نیز تنظیم کرد؛ پیشفرض آن ۵ دقیقه است.
- -ov
- این گزینه دقیقاً همان اثر -v را دارد.
- -oX <number or string>
- این گزینه تنها زمانی مرتبط است که گزینه -bd (شروع دیمن شنونده) نیز داده شده باشد. این گزینه پورتها و رابطهایی را که دیمن استفاده میکند کنترل مینماید. هنگامی که از -oX برای راهاندازی دیمن استفاده میشود، هیچ فایل pid نوشته نمیشود مگر اینکه -oP نیز برای تعیین نام فایل pid وجود داشته باشد.
- -oY
- این گزینه
ایجاد یک
نقطه
پایانی
ارتباط بین
پردازشی (IPC)
را توسط
دیمن Exim
کنترل
میکند. این
گزینه تنها
زمانی
مرتبط است
که گزینه -bd
(شروع دیمن
شنونده) نیز
داده شده
باشد.
معمولاً
دیمن این
سوکت را
ایجاد
میکند،
مگر اینکه
گزینه -oX و
بدون -oP نیز
وجود داشته
باشد. اگر
این گزینه
داده شود،
سوکت ایجاد
نخواهد شد.
این امر در
صورتی لازم
است که
سیستم چند
دیمن را
اجرا کند،
که در این
صورت باید
روی همه
استفاده
شود.
ویژگیهای
پشتیبانیشده
توسط سوکت
در چنین
مواردی در
دسترس
نخواهند
بود.
این سوکت در حال حاضر برای موارد زیر استفاده میشود:
افزایش سریع پردازشهای اجراکننده صف
کش کردن عبارتهای منظم کامپایلشده
به دست آوردن اندازه فعلی صف
- -pd
- این گزینه زمانی اعمال میشود که یک مفسر تعبیهشده پرل با Exim پیوند خورده باشد. این گزینه تنظیم گزینه perl_at_start را لغو میکند و شروع مفسر را تا زمان نیاز به آن به تعویق میاندازد.
- -ps
- این گزینه زمانی اعمال میشود که یک مفسر تعبیهشده پرل با Exim پیوند خورده باشد. این گزینه تنظیم گزینه perl_at_start را بازنویسی میکند و شروع مفسر را بلافاصله پس از راهاندازی Exim اجباری میسازد.
- -p<rval>:<sval>
- جهت
سازگاری با
Sendmail، این
گزینه
معادل
موارد زیر
است:
-oMr <rval> -oMs <sval>این گزینه پروتکل ورودی و نام میزبان را تنظیم میکند (برای فراخوانندگان قابل اعتماد). نام میزبان و دونقطه آن میتوانند زمانی که فقط پروتکل باید تنظیم شود حذف گردند. توجه داشته باشید که Exim از قبل دو گزینه اختصاصی دارد، -pd و -ps، که به پرل تعبیهشده ارجاع دارند. بنابراین تنظیم مقدار پروتکل d یا s با استفاده از این گزینه غیرممکن است (اما این یک محدودیت واقعی به نظر نمیرسد). استفاده مکرر از این گزینه پشتیبانی نمیشود.
- -q
- این گزینه
معمولاً
محدود به
کاربران
مدیر است.
با این حال،
گزینه
پیکربندی
با نام prod_requires_admin
وجود دارد
که میتوان
آن را روی false
تنظیم کرد
تا این
محدودیت (و
همچنین
الزامی
مشابه برای
گزینههای
-M، -R و -S)
کاهش یابد.
اگر سایر گزینههای خط فرمان اقدامی را مشخص نکنند، گزینه -q یک پردازش اجراکننده صف را آغاز میکند. این پردازش صف پیامهای در انتظار را بررسی کرده و برای هر یک از آنها به نوبت یک پردازش تحویل را اجرا مینماید. این پردازش قبل از شروع پردازش بعدی، منتظر پایان یافتن هر پردازش تحویل میماند. اگر هنوز زمان تلاش مجدد برای آدرسها فرا نرسیده باشد، ممکن است یک پردازش تحویل در عمل هیچ تحویلی انجام ندهد. در صورت تمایل به لغو این حالت، از -qf (به زیر مراجعه کنید) استفاده نمایید.
اگر پردازش تحویل پردازشهای دیگری را برای تحویل پیامهای دیگر از طریق اتصالات منتقلشده SMTP ایجاد کند، اجراکننده صف قبل از ادامه کار منتظر اتمام آنها میماند.
هنگامی که تمام پیامهای موجود در صف بررسی شدند، پردازش اولیه اجراکننده صف خاتمه مییابد. به عبارت دیگر، یک بررسی منفرد روی نامههای در حال انتظار انجام میشود (یک پیام در هر زمان). اگر میخواهید این عملیات بهصورت دورهای تکرار شود، از -q به همراه یک مقدار زمانی (به پایین مراجعه کنید) استفاده کنید.
اگزیم پیامهای در انتظار را به ترتیبی غیرقابلپیشبینی پردازش میکند. این ترتیب کاملاً تصادفی نیست، اما به احتمال زیاد هر بار متفاوت خواهد بود که تمام نکته مهم همین است. اگر یک پیام خاص باعث اختلال در یک MTA دوردست شود، سایر پیامها برای همان MTA در صورتی که ابتدا امتحان شوند، شانس تحویل خواهند داشت.
میتوان ترتیبی داد که پیامها به ترتیب الفبایی شناسه پیام پردازش شوند (که اساساً همان ترتیب ورود آنهاست) و این کار با تنظیم گزینه queue_run_order انجام میشود، اما این کار برای استفاده عادی توصیه نمیگردد.
- -q<qflags>
- اجرای پردازش صف. گزینه -q میتواند با یک یا چند حرف پرچم دنبال شود که رفتار آن را تغییر میدهند. همگی اختیاری هستند، اما اگر بیش از یک پرچم وجود داشته باشد، باید به ترتیب صحیح ظاهر شوند. هر پرچم در یک مورد جداگانه در زیر شرح داده شده است.
- -qq...
- گزینهای
که با -qq
شروع
میشود،
اجرای دو
مرحلهای
صف را
درخواست
میکند. در
مرحله اول،
صف
بهگونهای
پویش
میشود که
گویی گزینه
queue_smtp_domains با هر
دامنهای
مطابقت
دارد.
آدرسها
مسیریابی
میشوند،
تحویلهای
محلی انجام
میگیرند،
اما هیچ
ترنسپورت
راه دوری
اجرا
نمیشود.
عملکرد زمانی به بهترین حد میرسد که گزینه queue_run_order تنظیم نشده باشد (یا روی "random" باشد). اگر چنین باشد و گزینه queue_fast_ramp مقدار true داشته باشد و سوکت اعلانکننده دیمن در دسترس باشد، در فاز اول اجرا، به محض اینکه تعداد پیامهای مسیریابیشده برای یک میزبان معین به حد آستانه برسد، یک پردازش تحویل بهصورت موازی با بقیه پویش به صورت انشعابی (fork) ایجاد میشود.
پایگاه داده راهنماها (hints) که به یاد دارد چه پیامهایی در انتظار میزبانهای خاص هستند، بهگونهای بهروزرسانی میشود که گویی تحویل به آن میزبانها به تعویق افتاده است.
پس از تکمیل اولین پویش صف، یک پویش دوم و عادی روی صف انجام میشود که در آن مسیریابی و تحویل طبق روال عادی صورت میگیرد. پیامهایی که به یک میزبان مشترک هدایت شدهاند باید به دلیل راهنماهایی که در طول اولین پویش صف ایجاد شدهاند، عمدتاً از طریق یک اتصال SMTP واحد تحویل داده شوند.
اجراهای دو مرحلهای صف باید روی سیستمهایی استفاده شوند که، حتی بهطور متناوب، صف بزرگی دارند (مانند گردانندگان لیستهای پستی). این گزینه همچنین ممکن است برای میزبانهایی که اتصال متناوب به اینترنت دارند مفید باشد.
- -q[q]i...
- اگر پرچم i وجود داشته باشد، اجراکننده صف پردازشهای تحویل را تنها برای پیامهایی اجرا میکند که قبلاً امتحان نشدهاند (i مخفف تحویل اولیه است). این امر زمانی میتواند مفید باشد که پیامها را با استفاده از -odq در صف قرار میدهید و میخواهید یک اجراکننده صف صرفاً پیامهای جدید را پردازش کند.
- -q[q][i]f...
- اگر یک پرچم f وجود داشته باشد، تلاش تحویل برای هر پیام غیرمنجمد اجباری میشود، در حالی که بدون f فقط آن دسته از آدرسهای غیرمنجمد که زمان تلاش مجدد آنها سپری شده است امتحان میشوند.
- -q[q][i]ff...
- اگر ff وجود داشته باشد، تلاش تحویل برای هر پیامی، چه منجمد باشد و چه نباشد، اجباری میشود.
- -q[q][i][f[f]]l
- پرچم l (حرف کوچک ال انگلیسی) مشخص میکند که فقط تحویلهای محلی باید انجام شوند. اگر پیامی به هرگونه تحویل راه دور نیاز داشته باشد، برای تحویل بعدی در صف باقی میماند.
- -q[q][i][f[f]][l][G<name>[/<time>]]]
- اگر پرچم G
و یک نام
وجود داشته
باشد،
اجراکننده
صف به جای
صف
پیشفرض،
روی صفی با
نام
دادهشده
عمل میکند.
نام نباید
حاوی نویسه
/ باشد.
برای اجرای
دورهای صف
(به زیر
مراجعه
کنید)، یک
اسلش و یک
مقدار
زمانی به
انتهای نام
اضافه کنید.
اگر سایر گزینههای خط فرمان اقدامی را مشخص کنند، یک گزینه -qG<name> صفی را برای کار روی آن مشخص خواهد کرد. برای مثال:
exim -bp -qGquarantine
mailq -qGquarantine
exim -qGoffpeak -Rf @special.domain.example - -q<qflags> <start id> <end id>
- هنگام
بررسی و
پویش صف،
میتوان Exim
را وادار
کرد با قرار
دادن یک
شناسه پیام
اولیه پس از
گزینه -q،
از
پیامهایی
که
شناسهشان
از نظر لغوی
کمتر از
مقدار
دادهشده
است
صرفنظر
کند. برای
مثال:
exim -q 0t5C6f-0000c8-00پیامهایی که زودتر از 0t5C6f-0000c8-00 رسیدهاند بررسی نمیشوند. اگر شناسه پیام دومی داده شود، پیامهایی که شناسه آنها از نظر لغوی بزرگتر از آن باشد نیز نادیده گرفته میشوند. اگر یک شناسه دو بار تکرار شود، برای مثال:
exim -q 0t5C6f-0000c8-00 0t5C6f-0000c8-00تنها یک پردازش تحویل برای آن پیام آغاز میشود. این حالت با -M از این جهت تفاوت دارد که دادههای تلاش مجدد رعایت میشوند، و همچنین با -Mc تفاوت دارد از این جهت که بهعنوان یک تحویل ناشی از اجرای صف شمرده میشود. توجه داشته باشید که سازوکار انتخاب بر ترتیبی که پیامها در آن بررسی میشوند تأثیری ندارد. روشهای دیگری نیز برای انتخاب مجموعههای خاصی از پیامها جهت تحویل در اجرای صف وجود دارد - گزینههای -R و -S را ببینید.
- -q<qflags><time>
- هنگامی که
یک مقدار
زمانی وجود
داشته
باشد،
گزینه -q
باعث
میشود Exim
بهعنوان
یک دیمن
اجرا شود و
پردازش
اجراکننده
صف را در
فواصل
زمانی
مشخصشده
با مقدار
زمان
ارائهشده
آغاز کند.
این شکل از
گزینه -q
معمولاً با
گزینه -bd
ترکیب
میشود که
در این حالت
یک پردازش
دیمن واحد
هر دو
کارکرد را
مدیریت
میکند. روش
معمول برای
راهاندازی
یک دیمن
ترکیبی در
زمان بوت
سیستم،
استفاده از
دستوری
مانند زیر
است:
/usr/exim/bin/exim -bd -q30mچنین دیمنی برای فراخوانیهای ورودی SMTP گوش میدهد، و همچنین یک پردازش اجراکننده صف را هر ۳۰ دقیقه آغاز مینماید.
امکان راهاندازی اجراکنندهها برای چندین صف نامگذاریشده در یک دیمن وجود دارد. برای مثال:
exim -qGhipri/2m -q10m -qqGmailinglist/1hهنگامی که یک دیمن با -q همراه با مقدار زمانی، اما بدون -bd راهاندازی میشود، هیچ فایل pid نوشته نمیشود مگر اینکه صریحاً توسط گزینه -oP درخواست شده باشد.
- -qR<rsflags> <string>
- این گزینه مترادف با -R است و برای سازگاری با Sendmail ارائه شده است.
- -qS<rsflags> <string>
- این گزینه مترادف با -S است.
- -R<rsflags> <string>
- مقدار <rsflags>
ممکن است
خالی باشد،
که در این
صورت فاصله
خالی قبل از
رشته
اختیاری
است، مگر
اینکه رشته
یکی از
مقادیر f،
ff، r، rf یا rff
باشد که
مقادیر
مجاز برای
<rsflags> هستند.
در صورتی که
<rsflags> خالی
نباشد،
فاصله خالی
الزامی است.
این گزینه شبیه به -q بدون مقدار زمانی است؛ یعنی باعث میشود Exim یک اجرای صف منفرد را انجام دهد، با این تفاوت که هنگام بررسی پیامهای درون صف، Exim فقط آنهایی را پردازش میکند که حداقل یک آدرس گیرنده تحویلدادهنشده حاوی رشته دادهشده داشته باشند (که این رشته بدون در نظر گرفتن بزرگی و کوچکی حروف بررسی میشود). اگر <rsflags> با r شروع شود، <string> بهعنوان یک عبارت باقاعده تفسیر میشود؛ در غیر این صورت یک رشته متنی است.
اگر میخواهید اجراهای دورهای صف را برای پیامهایی با گیرندگان خاص انجام دهید، میتوانید -R را با -q و یک مقدار زمانی ترکیب کنید. برای مثال:
exim -q25m -R @special.domain.exampleاین مثال یک اجرای صف را برای پیامهایی با گیرندگان در دامنه مشخصشده در هر ۲۵ دقیقه انجام میدهد. هر پرچم اضافی که با -q مشخص شده باشد روی هر اجرای صف اعمال میشود.
هنگامی که پیامی برای تحویل توسط این مکانیزم انتخاب شد، تمام آدرسهای آن پردازش میشوند. برای اولین پیام انتخابشده، Exim هرگونه اطلاعات تلاش مجدد را لغو کرده و یک تلاش تحویل را برای هر آدرس تحویلدادهنشده اجباری میسازد. این بدان معنی است که اگر تحویل هر آدرسی در اولین پیام موفقیتآمیز باشد، اطلاعات تلاش مجدد موجود حذف میشود و بنابراین تلاشهای تحویل برای آن آدرس در پیامهای بعدی انتخابشده (که بدون اجبار پردازش میشوند) اجرا خواهند شد. با این حال، اگر تحویل هر آدرسی موفق نشود، اطلاعات تلاش مجدد بهروزرسانی شده و در پیامهای بعدی انتخابشده، از آدرس ناموفق صرفنظر خواهد شد.
اگر <rsflags> حاوی f یا ff باشد، اجبار تحویل برای تمام پیامهای انتخابشده اعمال میشود، نه فقط اولین پیام؛ پیامهای منجمد زمانی گنجانده میشوند که ff وجود داشته باشد.
گزینه -R آغاز تحویل تمام پیامها به یک دامنه خاص را پس از اینکه میزبان مدتی از دسترس خارج بوده است ساده میکند. هنگامی که دستور ETRN در SMTP توسط ACL پذیرفته میشود، اثر پیشفرض آن اجرای Exim با گزینه -R است، اما میتوان آن را پیکربندی کرد تا دستوری دلخواه را به جای آن اجرا کند.
- -r
- این یک نام جایگزین منسوخشده و مستندسازیشده (برای Sendmail) به جای -f است.
- -S<rsflags> <string>
- این گزینه مانند -R عمل میکند، به جز اینکه رشته را به جای گیرندگان، با فرستنده هر پیام تطبیق میدهد. اگر -R نیز تنظیم شده باشد، هر دو شرط باید برآورده شوند تا پیامی انتخاب گردد. اگر هر یک از گزینهها دارای f یا ff در پرچمهای خود باشند، اقدام مربوطه انجام میشود.
- -Tqt <times>
- این گزینهای است که منحصراً برای استفاده توسط مجموعه آزمایشی Exim کاربرد دارد و هنگام اجرای عادی Exim شناخته نمیشود. این گزینه امکان تنظیم صریح «زمانهای صف» را فراهم میکند تا ویژگیهای مختلف هشدار/تلاش مجدد قابل آزمایش باشند.
- -t
- هنگامی که Exim
پیامی غیر SMTP
و تولیدشده
بهصورت
محلی را در
ورودی
استاندارد
خود دریافت
میکند،
گزینه -t
باعث
میشود
گیرندگان
پیام به جای
آرگومانهای
دستور، از
خطوط هدر
To:، Cc: و Bcc: در
پیام
استخراج
شوند.
آدرسها
قبل از
هرگونه
بازنویسی
استخراج
میشوند و
سپس خط هدر
Bcc: در صورت
وجود حذف
میگردد.
اگر دستور دارای آرگومانهایی باشد، آنها آدرسهایی را مشخص میکنند که پیام نباید به آنها تحویل داده شود؛ یعنی آدرسهای آرگومان از فهرست گیرندگان بهدستآمده از هدرها حذف میشوند. این رفتار با Smail 3 سازگار است و مطابق با رفتار مستندسازیشده در چندین نسخه از Sendmail (همانطور که در صفحات راهنمای سیستمعاملهای مختلف مانند Solaris 8، IRIX 6.5 و HP-UX 11 توصیف شده است) میباشد. با این حال، برخی از نسخههای Sendmail آدرسهای آرگومان را به آدرسهای استخراجشده از هدر اضافه میکنند و کتاب Sendmail انتشارات اورایلی (O'Reilly) آن را به این شیوه مستند کرده است. میتوان با تنظیم گزینه extract_addresses_remove_arguments روی false، اکسیم را طوری تنظیم کرد که به جای کسر کردن آدرسهای آرگومان، آنها را اضافه نماید.
اگر خطوط هدر Resent- در پیام وجود داشته باشند، Exim گیرندگان را به جای خطوط To:، Cc: و Bcc: از تمام خطوط هدر Resent-To:، Resent-Cc: و Resent-Bcc: استخراج میکند. این کار برای سازگاری با Sendmail و سایر MTAها است. (قبل از نسخه ۴.۲۰، Exim در صورت استفاده از -t در ترکیب با خطوط هدر Resent- خطا میداد).
سند RFC 2822 درباره مجموعههای مختلف خطوط هدر Resent- (زمانی که پیامی چندین بار مجدداً ارسال میشود) صحبت میکند. این RFC همچنین مشخص میکند که آنها باید در ابتدای پیام اضافه شوند و توسط خطوط Received: از یکدیگر تفکیک گردند. اصلاً مشخص نیست که -t چگونه باید در حضور چندین مجموعه عمل کند، و در واقع دقیقاً چه چیزی یک "مجموعه" را تشکیل میدهد. در عمل، به نظر میرسد که MUAها از RFC پیروی نمیکنند. خطوط Resent- اغلب در انتهای هدر اضافه میشوند، و اگر پیامی بیش از یکبار ارسال مجدد شود، معمول است که با اضافه شدن یک مجموعه جدید، مجموعه هدرهای اصلی Resent- به X-Resent- تغییر نام پیدا کنند. این کار هرگونه ابهام احتمالی را برطرف میسازد.
- -ti
- این گزینه دقیقاً معادل -t -i است و برای سازگاری با Sendmail ارائه شده است.
- -tls-on-connect
- این گزینه زمانی در دسترس است که Exim با پشتیبانی از TLS کامپایل شده باشد. این گزینه تمام اتصالات ورودی SMTP را وادار میکند تا طوری رفتار کنند که گویی پورت ورودی در گزینه tls_on_connect_ports فهرست شده است.
- -U
- برنامه Sendmail از این گزینه برای "ارسال اولیه پیام" استفاده میکند و مستندات آن بیان میکنند که در نسخههای بعدی، ممکن است در صورت تنظیم نبودن این پرچم، به جای رفع خطاهای نحوی پیامها، از آنها شکایت و جلوگیری کند. اکسیم این گزینه را نادیده میگیرد.
- -v
- این گزینه باعث میشود Exim اطلاعاتی را در جریان خطای استاندارد بنویسد که عملکرد و اقدامات آن را شرح میدهد. بهویژه، خطوط لاگ را برای دریافت و تحویل یک پیام نمایش میدهد، و در صورتی که اتصال SMTP برقرار شود، گفتگوی SMTP نمایش داده میشود. اگر تنظیم log_selector برخی از خطوط لاگ را نادیده بگیرد، ممکن است برخی از خطوط لاگ نمایش دادهشده در عمل در لاگ نوشته نشوند. هرگونه انتخابگر مربوطه به همراه هر خط لاگ نشان داده میشود. اگر هیچ موردی نشان داده نشود، ثبت لاگ بدون قید و شرط است.
- -x
- سیستمعامل AIX از -x برای مقاصد اختصاصی خود استفاده میکند ("ایمیل از یک برنامه ایمیل محلی دارای نویسههای توسعهیافته پشتیبانی زبان ملی در بدنه ایمیل است"). این سیستم هنگام فراخوانی MTA از دستور mail خود، گزینه -x را تنظیم میکند. اکسیم این گزینه را نادیده میگیرد.
- -X <logfile>
- این گزینه توسط Sendmail به این صورت تفسیر میشود که باعث ارسال اطلاعات اشکالزدایی به فایل مشخصشده میگردد. توسط Exim نادیده گرفته میشود.
- -z <log-line>
- این گزینه آرگومان خود را در فایل لاگ Exim مینویسد. استفاده از آن محدود به مدیران است؛ هدف آن ثبت یادداشتهای عملیاتی است. در بیشتر شلها، باید از نقلقول برای نگهداشتن یک عبارت چندکلمهای بهعنوان یک آرگومان منفرد استفاده شود.
همچنین ببینید (SEE ALSO)
مشخصات کامل اکسیم (Exim)، کتاب اکسیم، و پایگاه دانش (wiki) اکسیم.