BELKINUNV(8) NUT Manual BELKINUNV(8)

belkinunv - درایور برای «Universal UPS» بلکین و دستگاه‌های سازگار

belkinunv -h

belkinunv -a UPS_NAME [OPTIONS]


نکته

این صفحه راهنما تنها ویژگی‌های مختص سخت‌افزار درایور belkin را مستند می‌کند. برای اطلاعات بیشتر درباره درایور اصلی، nutupsdrv(8) را ببینید.


نکته

این درایور تنها از اتصالات سریال پشتیبانی می‌کند. اگر UPS شما دارای درگاه USB است، لطفاً به فهرست سازگاری سخت‌افزار (HCL) مراجعه کنید تا ببینید کدام‌یک از درایورهای USB را باید استفاده کنید.

درایور belkinunv برای کارکرد با مدل‌های F6C800-UNV و F6C120-UNV از Belkin Universal UPS شناخته شده است و انتظار می‌رود با سایر مدل‌های Belkin Universal UPS نیز کار کند. این درایور تنها از ارتباط سریال پشتیبانی می‌کند، نه USB.

مدل‌های Trust UPS و دستگاه‌های قدیمی‌تر Belkin توسط این درایور پشتیبانی نمی‌شوند، و همچنین مدل‌های Belkin Home Office (مانند F6H500-SER و غیره) نیز پشتیبانی نمی‌شوند. با این حال، برخی از مدل‌های Belkin مانند Regulator Pro توسط درایور belkin(8) پشتیبانی می‌شوند، و مدل‌های Home Office با استفاده از درایور genericups(8) با upstype=7 پشتیبانی می‌شوند.

یک مشکل در Belkin Universal UPS این است که نمی‌تواند وارد وضعیت خاموش‌سازی نرم (قطع بار خروجی تا زمان بازگشت برق شهر AC) شود، مگر اینکه باتری‌ها کاملاً خالی شده باشند. از این رو، نمی‌توان پس از خاموش شدن سیستم‌عامل صرفاً UPS را خاموش کرد؛ زیرا با وصل مجدد برق، روشن نخواهد شد. بنابراین، درایور belkinunv هرگز نباید با گزینه -k استفاده شود. در عوض، گزینه -x wait به عنوان یک راهکار ارائه شده است.

هنگامی که با گزینه -x wait فراخوانی شود، belkinunv به عنوان یک برنامه مستقل عمل می‌کند (یعنی به پس‌زمینه فورک نمی‌شود). این برنامه یک وظیفه ساده را انجام می‌دهد: به UPS متصل می‌شود، تا زمان بازگشت برق شهر AC منتظر می‌ماند، و سپس با وضعیت 0 خارج می‌شود.

هدف این است که این گزینه در اسکریپت خاموش‌سازی به این شکل استفاده شود: در طول فرآیند خاموش شدن سیستم، پس از آنکه تمام فایل‌سیستم‌ها به صورت فقط‌خواندنی مجدداً مانت شدند و درست پیش از متوقف شدن عادی سیستم: فایل /etc/killpower (یا مشابه آن) را بررسی کنید تا ببینید آیا این خاموش‌سازی توسط upsmon(8) ایجاد شده است یا خیر، و در صورت مثبت بودن، belkinunv -x wait را فراخوانی کنید. اگر برق شهر AC وصل شود، belkinunv خارج می‌شود و ساختار باید طوری ترتیب داده شود که در این حالت سیستم مجدداً راه‌اندازی (reboot) شود. اگر برق شهر AC وصل نشود، شارژ باتری UPS در نهایت به پایان می‌رسد، منبع تغذیه رایانه قطع می‌شود و UPS به حالت خاموش‌سازی نرم می‌رود؛ به این معنی که پس از وصل مجدد برق، همه چیز به درستی راه‌اندازی مجدد خواهد شد. در هر دو حالت، از بروز بن‌بست (deadlock) جلوگیری می‌شود.

علاوه بر این، اگر یک آرگومان عدد صحیح اختیاری به گزینه -x wait داده شود، این کار باعث می‌شود belkinunv نه‌تنها منتظر وصل بودن برق شهر AC، بلکه منتظر رسیدن شارژ باتری به سطح تعیین‌شده نیز بماند. من از این به عنوان بخشی از اسکریپت‌های راه‌اندازی خود استفاده می‌کنم تا اطمینان یابم که باتری‌ها پیش از ادامه بوت رایانه به میزان کافی شارژ شده‌اند. این باید در بخش‌های بسیار ابتدایی اسکریپت راه‌اندازی قرار گیرد، پیش از آنکه هر فایل‌سیستمی به صورت خواندن/نوشتن مانت شود و پیش از آنکه هرگونه بررسی فایل‌سیستم انجام گیرد.

چندین گزینه -x دیگر برای تنظیم دقیق این رفتار فراهم شده است. برای توضیحات دقیق به گزینه‌های زیر مراجعه کنید. برای نمونه‌هایی از نحوه استفاده از belkinunv در اسکریپت‌های خاموش‌سازی و راه‌اندازی، به بخش مثال‌ها در ادامه مراجعه کنید.

همچنین برای گزینه‌های عمومی nutupsdrv(8) را ببینید. هرگز از گزینه -k با این درایور استفاده نکنید؛ زیرا به درستی کار نمی‌کند.

-x wait[=level]

هنگامی که این گزینه استفاده می‌شود، belkinunv به پس‌زمینه فورک نمی‌شود، بلکه به عنوان یک برنامه مستقل رفتار می‌کند. به UPS متصل می‌شود و تا زمان وصل شدن برق شهر AC منتظر می‌ماند. اگر level مشخص شده باشد، همچنین تا رسیدن شارژ باتری حداقل به سطح ارائه‌شده بر حسب درصد منتظر می‌ماند. سپس، و تنها در این صورت، belkinunv خارج می‌شود. علاوه بر این، در حالی که belkinunv در این حالت اجرا می‌شود، یک خط وضعیت همراه با اطلاعاتی از وضعیت UPS و سطح باتری نمایش می‌دهد. این برای استفاده در اسکریپت‌های خاموش‌سازی و راه‌اندازی رایانه طراحی شده است، همان‌طور که در بخش راهکار خاموش‌سازی نرم در بالا شرح داده شد.

-x nohang

این گزینه تنها زمانی اثرگذار است که در ترکیب با گزینه -x wait استفاده شود. این گزینه سبب می‌شود که اگر ارتباط با UPS برقرار نشود یا قطع گردد، belkinunv خارج شود، به جای آنکه به طور مداوم و همیشگی تلاش مجدد کند که رفتار پیش‌فرض است. گزینه -x nohang باید در اسکریپت راه‌اندازی استفاده شود تا اطمینان حاصل شود که رایانه حتی در صورت جدا شدن UPS در حین قطعی برق (برای مثال متصل کردن رایانه به ژنراتور، انتقال آن به خانه همسایه یا موارد دیگر)، همچنان قابلیت بوت شدن را حفظ می‌کند.

-x flash

این گزینه تنها زمانی اثرگذار است که در ترکیب با گزینه -x wait استفاده شود. این گزینه باعث می‌شود بار خروجی UPS برای مدت کوتاهی («فلش») درست پس از بازگشت برق شهر AC و دستیابی به سطح باتری درخواستی (در صورت تعیین) قطع شود. این کار در صورتی مفید است که دستگاه‌های ثانویه (slaves) به این UPS متصل باشند؛ عمل فلش باعث راه‌اندازی مجدد همه آنها خواهد شد. توجه داشته باشید که با توجه به طراحی سخت‌افزار Belkin UPS، قطع بار خروجی حدود ۱ تا ۲ دقیقه طول می‌کشد؛ فلش کوتاه‌تر به صورت قابل‌اطمینان انجام‌پذیر نیست. همچنین، رایانه‌ها در زمان تعیین‌شده مجدداً راه‌اندازی می‌شوند، در صورت لزوم روی توان باتری، حتی اگر برق شهر AC در این بین دوباره قطع شود. این نباید مشکلی ایجاد کند، زیرا اسکریپت‌های راه‌اندازی شما می‌توانند این وضعیت را مدیریت کنند.

-x silent

این گزینه تنها زمانی اثرگذار است که در ترکیب با گزینه -x wait استفاده شود. این گزینه خط وضعیتی را که belkinunv به طور معمول چاپ می‌کند پنهان می‌سازد.

-x dumbterm

این گزینه تنها زمانی اثرگذار است که در ترکیب با گزینه -x wait استفاده شود. این گزینه شیوه چاپ خط وضعیت توسط belkinunv را تغییر می‌دهد. در حالت عادی، از دنباله‌های کنترلی ترمینال برای بازنویسی همان سطر با اطلاعات وضعیت جدید در هر بار به‌روزرسانی وضعیت استفاده می‌شود. این ممکن است در تمام ترمینال‌ها کار نکند. اگر گزینه -x dumbterm داده شود، هر به‌روزرسانی وضعیت در یک خط جدید نوشته می‌شود.

battery.charge, battery.runtime

توسط همه سخت‌افزارها پشتیبانی نمی‌شود.

battery.voltage, battery.voltage.nominal, input.frequency, input.frequency.nominal

برای مثال 60 برای 60Hz

input.sensitivity

قابل نوشتن: normal/medium/low

input.transfer.high

قابل نوشتن: نقطه ولتاژ انتقال بالا بر حسب ولت (V)

input.transfer.low

قابل نوشتن: نقطه ولتاژ انتقال پایین بر حسب ولت (V)

input.voltage, input.voltage.maximum, input.voltage.minimum, input.voltage.nominal, output.frequency, output.voltage, ups.beeper.status

قابل نوشتن. مقادیر: enabled/disabled/muted. این متغیر وضعیت بوق هشدار پنل را کنترل می‌کند. مقدار enabled یعنی هنگام وجود هشدار صدا پخش شود، disabled به معنی هرگز صدا پخش نشدن است، و muted یعنی صدا موقتاً قطع شود تا زمانی که هشدار به طور معمول متوقف گردد. در وضعیت muted، بوق هشدار در رخداد بعدی (قطعی برق AC، آزمایش باتری و غیره) به طور خودکار دوباره فعال می‌شود. همچنین، بوق هشدار در طول یک رخداد بحرانی (باتری ضعیف) نمی‌تواند خاموش شود. توجه داشته باشید که همه مدل‌های UPS از حالت «disabled» پشتیبانی نمی‌کنند.

ups.firmware, ups.load, ups.model, ups.power.nominal

برای مثال 800 برای یک سیستم 800VA

ups.status

فهرستی از پرچم‌ها؛ بخش پرچم‌های وضعیت در ادامه را ببینید.

ups.temperature

توسط همه سخت‌افزارها پشتیبانی نمی‌شود.

ups.test.result, ups.delay.restart

زمان تا راه‌اندازی مجدد (فقط‌خواندنی)

ups.delay.shutdown

زمان تا خاموش‌سازی (فقط‌خواندنی). این مقدار همیشه مضربی از ۶۰ ثانیه است.

ups.type

ONLINE/OFFLINE/LINEINT. این مقدار ساختار کلی این UPS را توصیف می‌کند (برای برنامه‌های مشتری دارای رابط گرافیکی که مایل به رسم تصویر متحرک از جریان برق هستند). یک UPS آفلاین اتصالی مستقیم از ورودی AC به خروجی AC دارد، و همچنین اتصالی از ورودی AC به باتری، و از باتری به خروجی AC دارد. یک UPS آنلاین فاقد اتصال مستقیم از ورودی AC به خروجی AC است، در حالی که یک UPS لاین‌اینتراکتیو فاقد اتصال از ورودی AC به باتری است.

beeper.enable, beeper.disable, beeper.mute

فعال‌سازی، غیرفعال‌سازی یا بی‌صدا کردن بوق هشدار پنل. توجه داشته باشید که اگر بوق هشدار بی‌صدا (muted) شود، در رخداد بعدی (قطعی برق AC، آزمایش باتری و غیره) به طور خودکار دوباره روشن می‌شود. همچنین، بوق هشدار در طول یک رخداد بحرانی (باتری ضعیف) نمی‌تواند بی‌صدا شود.

reset.input.minmax

بازنشانی متغیرهای input.voltage.minimum و input.voltage.maximum.

shutdown.reboot

قطع فوری بار خروجی برای حدود ۱ تا ۲ دقیقه.

shutdown.reboot.graceful

پس از ۴۰ ثانیه تاخیر، بار خروجی برای حدود ۱ تا ۲ دقیقه قطع می‌شود.

shutdown.stayoff

قطع فوری بار خروجی و خاموش ماندن. تنها راه روشن کردن مجدد آن فشردن دستی دکمه پنل جلویی است.

test.battery.start, test.battery.stop

شروع/توقف آزمایش ۱۰ ثانیه‌ای باتری.

test.failure.start, test.failure.stop

شروع/توقف آزمایش باتری «عمیق».

OB

بار روی باتری است، از جمله در طول آزمایش‌ها

OFF

بار خروجی خاموش است

OL

بار برخط (آنلاین) است

ACFAIL

قطعی برق شهر AC. توجه داشته باشید که این به ورودی AC اشاره دارد، بنابراین با «OB» یکسان نیست. قطعی برق AC می‌تواند در هر زمانی رخ دهد، برای مثال در طول آزمایش باتری، یا زمانی که بار UPS خاموش است.

OVER

اضافه‌بار

OVERHEAT

داغ شدن بیش از حد

COMMFAULT

خطای UPS

LB

باتری ضعیف (low battery)

CHRG

در حال شارژ

DEPLETED

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

RB

تعویض باتری

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

# NEAR END OF SHUTDOWN SCRIPT:
# if shutdown was caused by UPS, perform Belkin UPS workaround.
if [ -f /etc/killpower ] || /usr/sbin/upsmon -K ; then
   echo "Waiting for AC power, or for UPS batteries to run out..."
   /usr/bin/belkinunv -x wait /dev/ttyS1
   # we get here if the power came back on. Reboot.
   echo "Power is back. Rebooting..."
   reboot
fi

و در اینجا مثالی از نحوه استفاده از belkinunv در اسکریپت راه‌اندازی آورده شده است. این دستورات باید نزدیک به ابتدای اسکریپت راه‌اندازی، پیش از آنکه هر فایل‌سیستمی به صورت خواندن/نوشتن مانت شود، و پیش از آنکه هرگونه بررسی صحت فایل‌سیستم انجام گیرد، قرار داده شوند.

# NEAR BEGINNING OF STARTUP SCRIPT:
# if we are recovering from a power failure, wait for the UPS to
# charge to a comfortable level before writing anything to disk
if [ -f /etc/killpower ] || /usr/sbin/upsmon -K ; then
   echo "Waiting for UPS battery charge to reach 60%..."
   /usr/bin/belkinunv -x wait=60 -x nohang /dev/ttyS1
fi

هنگامی که به طور عادی استفاده شود، belkinunv به پس‌زمینه فورک می‌شود و پیام‌های تشخیصی آن همانند تمام درایورهای NUT است؛ nutupsdrv(8) را ببینید.

هنگامی که با گزینه -x wait استفاده شود، وضعیت خروج معمولاً 0 است. اگر گزینه -x nohang نیز مشخص شده باشد، وضعیت خروج 1 نشان‌دهنده از دست رفتن ارتباط با UPS است. اگر گزینه -x flash مشخص شده باشد، وضعیت خروج 2 نشان‌دهنده ناموفق بودن خاموش‌سازی زمان‌بندی‌شده است.

این درایور از هیچ تنظیمات اضافی در ups.conf(5) پشتیبانی نمی‌کند.

Peter Selinger <selinger@users.sourceforge.net>

nutupsdrv(8)

belkinunv(8), blazer_ser(8), blazer_usb(8), usbhid-ups(8)

•صفحه خانگی NUT (Network UPS Tools): https://www.networkupstools.org/historic/v2.8.5
•مستندات پروتکل مورد استفاده توسط این UPS: belkin-universal-ups.html (نسخه بازتولیدشده در وب‌گاه NUT)
06/21/2026 Network UPS Tools 2.8.5