NNTPSEND(8) InterNetNews Documentation NNTPSEND(8)

nntpsend - ارسال دسته‌های مقالات Usenet از طریق NNTP

nntpsend [-acDdlNnpr] [-P portnum] [-s size] [-T timelimit] [-t timeout] [-w delay] [sitename fqdn] ...

برنامه nntpsend یک رابط (front-end) است که برای ارسال مقالات Usenet به یک سایت دوردست NNTP، برنامه innxmit را فراخوانی می‌کند. سایت‌هایی که باید تغذیه شوند را می‌توان با مشخص کردن جفت‌های sitename fqdn در خط فرمان تعیین کرد. اگر چنین جفت‌هایی مشخص نشوند، nntpsend به صورت پیش‌فرض از اطلاعات موجود در فایل پیکربندی nntpsend.ctl استفاده می‌کند. مقدار sitename باید نام سایت به همان صورت مشخص‌شده در فایل newsfeeds باشد. مقدار fqdn باید نام میزبان (hostname) یا نشانی IP سایت دوردست باشد. برای سایت‌هایی که خبرهای صف‌بندی‌شده دارند، یک فرایند innxmit اجرا می‌شود. تمام فرایندهای innxmit در پس‌زمینه ایجاد می‌شوند و اسکریپت قبل از بازگشت، منتظر می‌ماند تا همگی آن‌ها به پایان برسند. خروجی به فایل nntpsend.log در pathlog ارسال می‌شود. برای جلوگیری از تحمیل بار بیش از حد به سیستم محلی، nntpsend قبل از ایجاد هر فرایند فرزند پنج ثانیه صبر می‌کند.

برنامه nntpsend انتظار دارد که فایل دسته (batch file) برای یک سایت، به نام sitename در pathoutgoing باشد. برای جلوگیری از خراب شدن فایل‌های دسته، از shlock برای «قفل کردن» این فایل‌ها استفاده می‌شود. هنگامی که جفت‌های sitename fqdn در خط فرمان مشخص شوند، هر پرچمی که در خط فرمان داده شود نحوه عملکرد innxmit و shrinkfile را به طور کامل مشخص می‌کند. هنگامی که چنین جفت‌هایی در خط فرمان داده نشوند، اطلاعات موجود در nntpsend.ctl به پرچم‌های پیش‌فرض برای آن سایت تبدیل می‌شوند. هر پرچمی که در خط فرمان داده شود، بر پرچم‌های پیش‌فرض سایت اولویت دارد و آن‌ها را بازنویسی می‌کند.

یک جایگزین برای nntpsend می‌تواند innduct باشد که در صفحه راهنمای innfeed(8) به آن اشاره شده است.

پرچم -D باعث می‌شود nntpsend خروجی را به جای فایل گزارش nntpsend.log در pathlog، به stdout بفرستد. پرچم -d نیز همین کار را انجام می‌دهد و علاوه بر آن، -d را به تمام فراخوانی‌های innxmit منتقل می‌کند که در نتیجه باعث می‌شود innxmit به حالت اشکال‌زدایی (debug mode) برود.
اگر از پرچم -n استفاده شود، nntpsend از shlock برای قفل کردن استفاده از nntpsend استفاده نمی‌کند. فایل‌های دسته همچنان قفل خواهند شد.
اگر از پرچم -s استفاده شود، برنامه shrinkfile فراخوانی خواهد شد تا یک برش از ابتدای فایل (head truncation) به اندازه size بایت روی فایل دسته انجام دهد و این پرچم به آن منتقل خواهد شد.
اگر از پرچم -w استفاده شود، nntpsend پس از تخلیه (flush) سایت، به مدت delay ثانیه قبل از اجرای innxmit منتظر می‌ماند.
پرچم‌های -a، -c، -l، -P portnum، -p، -r، -T timelimit و -t timeout به برنامه فرزند innxmit منتقل می‌شوند. پرچم -N به عنوان پرچم -s به برنامه فرزند innxmit پاس داده می‌شود. برای جزئیات بیشتر به innxmit(8) مراجعه کنید.

توجه داشته باشید که اگر از پرچم -p استفاده شود، هیچ اتصالی برقرار نمی‌شود و هیچ مقاله‌ای به سایت دوردست ارسال نمی‌گردد. این ویژگی زمانی مفید است که cron(8) برنامه nntpsend را با این پرچم اجرا کند تا در صورتی که ارتباط با یک سایت برای مدتی طولانی برقرار نشود، مشکلی پیش نیاید.

با فایل پیکربندی nntpsend.ctl زیر:

nsavax:erehwon.nsavax.gov::-t60
group70:group70.org::
walldrug:walldrug.com:4m-1m:-T1800 -t300
kremvax:kremvax.cis:2m:

دستور "nntpsend" منجر به موارد زیر خواهد شد:

Sitename        Truncation      innxmit flags
nsavax          (none)          -a -t60
group70         (none)          -a -t180
walldrug        1m if >4m       -T1800 -t300
kremvax         2m              -t180

دستور "nntpsend -d -T1200" منجر به موارد زیر خواهد شد:

Sitename        Truncation      innxmit flags
nsavax          (none)          -a -d -T1200 -t60
group70         (none)          -a -d -T1200 -t180
walldrug        1m if >4m       -d -T1200 -t300
kremvax         2m              -d -T1200 -t180

دستور "nntpsend -s 5m -T1200 nsavax erehwon.nsavax.gov group70 group70.org"; منجر به موارد زیر خواهد شد:

Sitename        Truncation      innxmit flags
nsavax          5m              -T1200 -t180
group70         5m              -T1200 -t180

به یاد داشته باشید که پرچم -a همیشه زمانی که هیچ محدودیت اندازه‌ای وجود ندارد اعمال می‌شود، و مقدار پیش‌فرض -t برابر با "180" است.

نوشته شده توسط Landon Curt Noll <chongo@toad.com> و Rich $alz <rsalz@uunet.uu.net> برای InterNetNews. تبدیل شده به POD توسط Julien Elie.

inn.conf(5), innxmit(8), newsfeeds(5), nntpsend.ctl(5), shlock(8), shrinkfile(1).

2025-05-09 INN 2.7.4