ipmipower(8) دستورات مدیریتی سیستم ipmipower(8)

ipmipower - ابزار کنترل توان و مدیریت روشن/خاموش سیستم از طریق پروتکل IPMI

ipmipower [گزینه‌ها...]

ابزار Ipmipower به کاربران اجازه می‌دهد تا سیستم‌ها را از راه دور روشن کنند، خاموش نمایند، چرخه توان (خاموش و روشن مجدد) اجرا کنند، بازنشانی سخت‌افزاری (hard reset) انجام دهند، وضعیت توان را استعلام بگیرند، وقفه تشخیصی پالسی (pulse diagnostic interrupt) ارسال کنند، یا خاموش‌سازی نرم‌افزاری سیستم‌عامل را از طریق ACPI و با پروتکل IPMI over LAN آغاز نمایند.

هنگامی که یک دستور کنترلی توان (--on ،--off ،--cycle ،--reset ،--stat ،--pulse یا --soft) در خط فرمان مشخص شود، Ipmipower تلاش می‌کند تا دستور توان را روی تمام نام‌های میزبان فهرست‌شده در خط فرمان اجرا کرده و سپس خارج شود.

اگر هیچ دستور توانی در خط فرمان مشخص نشود، ipmipower در حالت تعاملی (interactive mode) اجرا خواهد شد. حالت تعاملی یک رابط خط فرمان در اختیار کاربر قرار می‌دهد تا دستورات مختلف را وارد کند. جزئیات مربوط به رابط خط فرمان تعاملی را می‌توانید در بخش «دستورات تعاملی (INTERACTIVE COMMANDS)» در زیر بیابید.

در زیر گزینه‌های عمومی IPMI، گزینه‌های اختصاصی ابزار، اطلاعات عیب‌یابی، راهکارهای دور زدن ناسازگاری‌ها، مثال‌ها و مشکلات شناخته‌شده فهرست شده‌اند. برای آشنایی عمومی با FreeIPMI لطفاً به freeipmi(7) مراجعه فرمایید.

گزینه‌های زیر گزینه‌های عمومی برای پیکربندی ارتباطات IPMI و اجرای دستورات کلی ابزار هستند.

تعیین نوع درایور برای استفاده به جای انتخاب خودکار. درایورهای خارج از باند (outofband) موجود در حال حاضر LAN و LAN_2_0 هستند که به ترتیب IPMI 1.5 و IPMI 2.0 را اجرا می‌کنند.
تعیین میزبان(های) دوردست برای برقراری ارتباط. چندین نام میزبان را می‌توان با کاما از یکدیگر جدا کرد یا در قالب یک بازه مشخص نمود؛ بخش «پشتیبانی از بازه میزبان (HOSTRANGED SUPPORT)» را در زیر ببینید. می‌توان یک پورت اختیاری را همراه با هر میزبان مشخص کرد که در شرایط هدایت پورت (port forwarding) یا موارد مشابه کاربرد دارد. در صورت تعیین نشانی و پورت IPv6، از قالب [ADDRESS]:PORT استفاده کنید.
تعیین نام کاربری برای احراز هویت در میزبان دوردست. در صورت عدم تعیین، نام کاربری تهی (ناشناس) در نظر گرفته می‌شود. کاربر برای اجرای دستورات کنترل توان --on ،--off ،--reset ،--cycle ،--pulse یا --soft باید دست‌کم دارای سطح دسترسی OPERATOR باشد. همچنین برای تعیین وضعیت توان دستگاه از طریق --stat، کاربر باید دست‌کم دسترسی USER داشته باشد.
تعیین گذرواژه برای احراز هویت در میزبان دوردست. در صورت عدم تعیین، گذرواژه تهی در نظر گرفته می‌شود. حداکثر طول گذرواژه برای IPMI 1.5 برابر با ۱۶ نویسه و برای IPMI 2.0 برابر با ۲۰ نویسه است.
درخواست ورود گذرواژه به صورت تعاملی برای جلوگیری از احتمال مشاهده آن در فهرست پردازش‌های سیستم.
تعیین کلید K_g کنترل‌کننده مدیریت برد اصلی (BMC) برای احراز هویت در میزبان دوردست در پروتکل IPMI 2.0. در صورت عدم تعیین، کلید تهی فرض می‌شود. برای وارد کردن کلید در قالب هگزادسیمال، پیشوند '0x' را به رشته اضافه کنید؛ برای مثال کلید 'abc' را می‌توان با رشته 'abc' یا '0x616263' وارد کرد.
درخواست ورود کلید k-g در خط فرمان برای جلوگیری از ثبت آن در فهرست پردازش‌های سیستم.
تعیین مهلت زمانی نشست (session timeout) بر حسب میلی‌ثانیه. در صورت عدم تعیین، پیش‌فرض ۲۰۰۰۰ میلی‌ثانیه (۲۰ ثانیه) است.
تعیین مهلت زمانی ارسال مجدد بسته بر حسب میلی‌ثانیه. در صورت عدم تعیین، پیش‌فرض ۴۰۰ میلی‌ثانیه (۰.۴ ثانیه) است.
تعیین نوع احراز هویت IPMI 1.5. انواع احراز هویت موجود عبارتند از NONE ،STRAIGHT_PASSWORD_KEY ،MD2 و MD5. در صورت عدم تعیین، مقدار پیش‌فرض MD5 است.
تعیین شناسه مجموعه رمزنگاری (Cipher Suite ID) در IPMI 2.0. شناسه مجموعه رمزنگاری مجموعه‌ای از الگوریتم‌های احراز هویت، یکپارچگی و محرمانگی را برای ارتباطات IPMI 2.0 مشخص می‌کند. الگوریتم احراز هویت برای برپایی نشست، الگوریتم یکپارچگی برای امضای بسته‌های نشست و الگوریتم محرمانگی برای رمزنگاری داده‌ها به کار می‌رود. در صورت عدم تعیین، پیش‌فرض شناسه ۳ است. شناسه‌های مجموعه‌های رمزنگاری زیر پشتیبانی می‌شوند:

0 - الگوریتم احراز هویت = None؛ الگوریتم یکپارچگی = None؛ الگوریتم محرمانگی = None

1 - الگوریتم احراز هویت = HMAC-SHA1؛ الگوریتم یکپارچگی = None؛ الگوریتم محرمانگی = None

2 - الگوریتم احراز هویت = HMAC-SHA1؛ الگوریتم یکپارچگی = HMAC-SHA1-96؛ الگوریتم محرمانگی = None

3 - الگوریتم احراز هویت = HMAC-SHA1؛ الگوریتم یکپارچگی = HMAC-SHA1-96؛ الگوریتم محرمانگی = AES-CBC-128

6 - الگوریتم احراز هویت = HMAC-MD5؛ الگوریتم یکپارچگی = None؛ الگوریتم محرمانگی = None

7 - الگوریتم احراز هویت = HMAC-MD5؛ الگوریتم یکپارچگی = HMAC-MD5-128؛ الگوریتم محرمانگی = None

8 - الگوریتم احراز هویت = HMAC-MD5؛ الگوریتم یکپارچگی = HMAC-MD5-128؛ الگوریتم محرمانگی = AES-CBC-128

11 - الگوریتم احراز هویت = HMAC-MD5؛ الگوریتم یکپارچگی = MD5-128؛ الگوریتم محرمانگی = None

12 - الگوریتم احراز هویت = HMAC-MD5؛ الگوریتم یکپارچگی = MD5-128؛ الگوریتم محرمانگی = AES-CBC-128

15 - الگوریتم احراز هویت = HMAC-SHA256؛ الگوریتم یکپارچگی = None؛ الگوریتم محرمانگی = None

16 - الگوریتم احراز هویت = HMAC-SHA256؛ الگوریتم یکپارچگی = HMAC_SHA256_128؛ الگوریتم محرمانگی = None

17 - الگوریتم احراز هویت = HMAC-SHA256؛ الگوریتم یکپارچگی = HMAC_SHA256_128؛ الگوریتم محرمانگی = AES-CBC-128

تعیین سطح دسترسی مورد استفاده. سطوح دسترسی موجود عبارتند از USER ،OPERATOR و ADMIN. در صورت عدم تعیین، مقدار پیش‌فرض OPERATOR است.
تعیین یک فایل پیکربندی جایگزین.
تعیین پرچم‌های دور زدن مشکلات عدم انطباق با استاندارد در سخت‌افزار سازندگان مختلف. چندین پرچم را می‌توان با کاما از یکدیگر جدا کرد. پرچم ویژه "none" نشان‌دهنده عدم استفاده از هرگونه راهکار دور زدن است (برای نادیده گرفتن مقادیر پیش‌فرض پیکربندی مفید است). برای مشاهده فهرست پرچم‌ها به بخش «راهکارهای دور زدن ناسازگاری‌ها (WORKAROUNDS)» در زیر مراجعه فرمایید.
فعال‌سازی حالت اشکال‌زدایی.
-?, --help
نمایش فهرست راهنما و خروج.
نمایش پیام خلاصه نحوه استفاده و خروج.
نمایش نسخه برنامه و خروج.

گزینه‌های زیر مختص ipmipower هستند.

روشن کردن میزبان‌های هدف.
خاموش کردن میزبان‌های هدف.
چرخه توان (خاموش و روشن کردن مجدد) میزبان‌های هدف.
بازنشانی سخت‌افزاری (ریست) میزبان‌های هدف.
دریافت وضعیت توان میزبان‌های هدف.
ارسال وقفه تشخیصی توان به میزبان‌های هدف.
آغاز خاموش‌سازی نرم‌افزاری سیستم‌عامل از طریق ACPI.
مشخصات IPMI الزام نمی‌کند که دستورات چرخه توان یا بازنشانی سخت‌افزاری، سیستمی را که در حال حاضر خاموش است روشن کنند. این گزینه ipmipower را وادار می‌کند که در صورت خاموش بودن سیستم دوردست، به جای چرخه توان یا ریست سخت‌افزاری، یک دستور روشن کردن صادر کند.
مشخصات IPMI به دستورات روشن کردن اجازه می‌دهد پیش از آنکه دستگاه واقعاً روشن شود وضعیت بازگشتی را اعلام کنند. این گزینه ipmipower را ملزم می‌کند تا به طور منظم وضعیت BMC دوردست را استعلام کرده و تنها پس از روشن شدن کامل دستگاه بازگردد.
مشخصات IPMI به دستورات خاموش کردن اجازه می‌دهد پیش از خاموش شدن واقعی دستگاه بازگردند. این گزینه ipmipower را ملزم می‌کند تا به طور منظم وضعیت BMC دوردست را استعلام کرده و تنها پس از خاموش شدن کامل دستگاه بازگردد.
این گزینه به ipmipower دستور می‌دهد عملیات کنترل توان را از طریق افزونه کنترل توان اختصاصی سازنده (OEM) اجرا کند. مقادیر موجود در حال حاضر عبارتند از NONE و C410X. لطفاً برای اطلاعات بیشتر بخش «افزونه‌های کنترل توان سازندگان (OEM POWER EXTENSIONS)» را در زیر ببینید.

گزینه‌های زیر برای تغییر رفتار شبکه در ipmipower به کار می‌روند.

تعیین طول مهلت زمانی انتظار ارسال مجدد بر حسب میلی‌ثانیه. این مهلت زمانی شبیه به مهلت زمانی ارسال مجدد در بالا است، اما منحصراً برای تأیید تکمیل توان با گزینه‌های --wait-until-on و --wait-until-off استفاده می‌شود. پیش‌فرض ۵۰۰ میلی‌ثانیه (۰.۵ ثانیه) است.
تعیین تعداد عقب‌نشینی ارسال مجدد (backoff count). پس از هر COUNT بار ارسال مجدد، طول مهلت زمانی ارسال مجدد با یک ضریب افزایش می‌یابد. پیش‌فرض ۸ است.
تعیین بازه زمانی پینگ بر حسب میلی‌ثانیه. هنگام اجرا در حالت تعاملی، پیام‌های کشف RMCP (پروتکل کنترل مدیریت از راه دور) به تمام میزبان‌های دوردست پیکربندی‌شده هر MILLISECONDS ارسال می‌شود تا پشتیبانی آنها از IPMI تأیید گردد. دستورات توان را نمی‌توان به میزبانی فرستاد مگر اینکه شناسایی شده باشد (یا در صورت قطعی مجدداً شناسایی شود). پیش‌فرض ۵۰۰۰ میلی‌ثانیه (۵ ثانیه) است. با تنظیم این مقدار روی ۰ می‌توان پیام‌های پینگ را غیرفعال کرد. در حالت غیرتعاملی، پیام‌های پینگ RMCP به طور خودکار غیرفعال می‌شوند.
تعیین طول مهلت زمانی پینگ بر حسب میلی‌ثانیه. هنگام اجرا در حالت تعاملی، پیام‌های کشف RMCP به میزبان‌های پیکربندی‌شده ارسال می‌شود. اگر میزبان در مدت MILLISECONDS پاسخ ندهد، شناسایی‌نشده در نظر گرفته می‌شود. پیش‌فرض ۳۰۰۰۰ میلی‌ثانیه (۳۰ ثانیه) است. مهلت زمانی پینگ نمی‌تواند بزرگ‌تر از بازه پینگ باشد.
تعیین تعداد بسته‌های پینگ. پیش‌فرض ۱۰ است. برای اطلاعات بیشتر گزینه --ping-percent را در زیر ببینید.
تعیین درصد موفقیت پینگ. پیش‌فرض ۵۰ است. از آنجا که پروتکل IPMI مبتنی بر UDP است، برای ipmipower دشوار است که در حالت تعاملی تفاوت میان یک سیستم خاموش یا خارج از دسترس را از یک اتصال شبکه خراب (یا با ترافیک بسیار سنگین) تشخیص دهد. به عنوان مثال فرض کنید لینکی به طور مداوم ۸۰٪ بسته‌های ارسالی به یک سیستم را گم می‌کند. ممکن است عملیات کنترل توان نتواند به پایان برسد، اگرچه دریافت یک پاسخ pong اخیر از RMCP به ipmipower نشان می‌دهد که سیستم فعال است و به درستی کار می‌کند. گزینه‌های تعداد بسته و درصد پینگ برای تخفیف این مشکل به کار می‌روند. Ipmipower بسته‌های پینگ RMCP را در بسته‌های COUNT تایی بررسی می‌کند. اگر ipmipower پاسخی بیشتر از درصد تعیین‌شده (ping percent) دریافت نکند، فرض را بر این می‌گذارد که اتصال این گره نامناسب است و تا زمانی که اتصال قابل اعتماد نشود، دستورات کنترل توان به آن ارسال نخواهد کرد. با تنظیم تعداد بسته یا درصد روی ۰ می‌توان این الگوریتم را غیرفعال کرد. در صورتی که بازه پینگ روی ۰ تنظیم شده باشد، این قابلیت استفاده نمی‌شود.
تعیین تعداد پینگ‌های متوالی معتبر. این ابتکار دیگری برای تشخیص فعال بودن یا قطعی اتصال گره است. اگر پاسخ معتبر RMCP pong برای COUNT بسته آخر دریافت شده باشد، گره صرف نظر از سایر معیارهای بالا به عنوان گره فعال و شناسایی‌شده در نظر گرفته می‌شود. پیش‌فرض ۵ است. با تعیین مقدار ۰ می‌توان این قابلیت را غیرفعال کرد.

گزینه‌های زیر خروجی حاصل از دامنه‌ها و بازه‌های میزبانی را مدیریت می‌کنند. برای اطلاعات بیشتر در مورد بازه‌های میزبان، بخش «پشتیبانی از بازه میزبان (HOSTRANGED SUPPORT)» را در زیر ببینید.

بافر کردن خروجی دامنه‌های میزبان. برای هر گره، خروجی استاندارد تا زمانی که عملیات IPMI آن به پایان برسد بافر می‌شود. هنگام استفاده از این گزینه، ممکن است داده‌ها کندتر نمایش داده شوند زیرا باید تمام عملیات IPMI به پایان برسد تا داده‌ها چاپ گردند.
یکپارچه‌سازی و ادغام خروجی بازه میزبان‌ها. خروجی استاندارد کامل تمام گره‌ها یکپارچه می‌شود تا گره‌هایی که خروجی یکسانی دارند دو بار چاپ نشوند. یک سرآیند گره‌های دارای خروجی یکپارچه را فهرست می‌کند. با تعیین این گزینه، تا پایان تمام عملیات‌ها هیچ خروجی دیده نمی‌شود.
تعیین انشعاب همزمان چند میزبانی (fanout). حداکثر تعداد عملیات‌های کنترل توان که می‌توانند به طور موازی اجرا شوند را مشخص می‌کند.
حذف میزبان‌هایی که توسط ipmidetect شناسایی‌نشده اعلام شده‌اند. این گزینه تلاش می‌کند مشکل رایج وقفه زمانی (timeout) را که به دلیل خارج شدن چندین گره از سرویس در یک کلاستر بزرگ رخ می‌دهد برطرف کند. دیمن ipmidetectd باید روی گره اجراکننده دستور در حال اجرا باشد.
همیشه نام میزبان را پیشوند خطوط خروجی قرار بده، حتی اگر تنها یک میزبان مشخص شده باشد یا ارتباط درون‌باندی باشد. این گزینه در درجه اول برای اسکریپت‌نویسی کاربرد دارد. در صورت تعیین همراه با گزینه -C نادیده گرفته می‌شود.

ابزار Ipmipower دستورات تعاملی زیر را در اعلان <ipmipower فراهم می‌آورد. پیش از آنکه هر یک از دستورات توان (on ،off ،cycle ،reset ،stat ،pulse یا soft) بتوانند استفاده شوند، نام‌های میزبان باید از طریق خط فرمان یا دستور hostname در زیر در ipmipower پیکربندی شده باشند. پارامترها و گزینه‌های دستورات زیر منعکس‌کننده گزینه‌های خط فرمان مربوطه هستند.

تعیین مجموعه جدیدی از میزبان‌ها. بدون ورودی تمام میزبان‌ها لغو پیکربندی می‌شوند.
تعیین نام کاربری جدید. بدون ورودی نام کاربری تهی منظور می‌شود.
تعیین گذرواژه جدید. بدون ورودی گذرواژه تهی در نظر گرفته می‌شود.
تعیین کلید K_g BMC جدید. بدون ورودی کلید تهی منظور می‌شود. برای ورود هگزادسیمال از پیشوند '0x' استفاده کنید.
تعیین نسخه IPMI مورد استفاده.
تعیین طول مهلت زمانی جدید نشست.
تعیین طول مهلت زمانی جدید ارسال مجدد.
تعیین نوع احراز هویت مورد استفاده.
تعیین شناسه مجموعه رمزنگاری مورد استفاده.
تعیین سطح دسترسی مورد استفاده.
تعیین پرچم‌های دور زدن ناسازگاری‌ها.
تغییر وضعیت خروجی اشکال‌زدایی.
روشن کردن تمام میزبان‌های پیکربندی‌شده یا میزبان‌های مشخص‌شده.
خاموش کردن تمام میزبان‌های پیکربندی‌شده یا میزبان‌های مشخص‌شده.
چرخه توان (خاموش و روشن کردن) تمام میزبان‌های پیکربندی‌شده یا میزبان‌های مشخص‌شده.
بازنشانی (ریست سخت‌افزاری) تمام میزبان‌های پیکربندی‌شده یا میزبان‌های مشخص‌شده.
استعلام وضعیت توان تمام میزبان‌های پیکربندی‌شده یا میزبان‌های مشخص‌شده.
ارسال وقفه تشخیصی پالسی به تمام میزبان‌های پیکربندی‌شده یا میزبان‌های مشخص‌شده.
آغاز خاموش‌سازی نرم‌افزاری برای تمام میزبان‌های پیکربندی‌شده یا میزبان‌های مشخص‌شده.
روشن کردن چراغ شناسایی فیزیکی سیستم.
خاموش کردن چراغ شناسایی فیزیکی سیستم.
استعلام وضعیت چراغ شناسایی فیزیکی سیستم.
تغییر وضعیت قابلیت روشن‌سازی در صورت خاموش بودن (on-if-off).
تغییر وضعیت قابلیت انتظار تا روشن شدن کامل (wait-until-on).
تغییر وضعیت قابلیت انتظار تا خاموش شدن کامل (wait-until-off).
تعیین طول مهلت زمانی انتظار ارسال مجدد جدید.
تعیین تعداد عقب‌نشینی ارسال مجدد جدید.
تعیین بازه زمانی پینگ جدید.
تعیین طول مهلت زمانی پینگ جدید.
تعیین تعداد بسته‌های پینگ جدید.
تعیین درصد موفقیت پینگ جدید.
تعیین تعداد پینگ‌های متوالی معتبر جدید.
تغییر وضعیت بافر کردن خروجی.
تغییر وضعیت یکپارچه‌سازی خروجی.
تعیین تعداد انشعاب همزمان (fanout).
تغییر وضعیت پیشوندگذاری دائمی نام میزبان.
نمایش منوی راهنما.
نمایش نسخه برنامه.
نمایش پیکربندی جاری.
خروج از برنامه.

برخی از بردهای اصلی شامل افزونه‌های اختصاصی سازندگان (IPMI OEM) برای مکانیزم‌های جایگزین کنترل توان هستند. به عنوان مثال، این مکانیزم‌ها ممکن است به شما اجازه دهند تا به جای کل سیستم، توان یک زیردستگاه درون سیستم را کنترل نمایید.

با تعیین نوع توان OEM از طریق گزینه --oem-power-type در خط فرمان یا فایل freeipmi.conf(5)، می‌توانید به ipmipower دستور دهید تا پیاده‌سازی‌های جایگزین کنترل توان را به جای روش‌های استاندارد اجرا کند. بسته به افزونه سازنده، ممکن است برخی دستورات کنترل توان دیگر در دسترس نباشند؛ برای مثال یک افزونه ممکن است از on پشتیبانی کند اما از cycle پشتیبانی ننماید. همچنین گزینه‌های خاصی از ipmipower ممکن است دیگر عمل نکنند.

برخی از افزونه‌های OEM ممکن است به آرگومان‌های اضافی برای عملیات کنترل توان نیاز داشته باشند، مانند شناسه یک زیردستگاه. آرگومان‌های اضافی را می‌توان با افزودن علامت مثبت ('+') و اطلاعات اضافی به انتهای نام میزبان ارائه داد. این کار را می‌توان در خط فرمان یا در حالت تعاملی انجام داد. برای مثال، نام میزبان mynode+18 نشان می‌دهد که عملیات کنترل توان باید به میزبان mynode فرستاده شود و 18 شناسه یک زیردستگاه احتمالی برای کنترل توان است. هنگام استفاده از کنترل توان سازنده که به آرگومان‌های اضافی نیاز دارد، معمولاً گزینه --consolidate-output غیرفعال می‌شود.

از آنجا که کنترل توان OEM ممکن است شامل زیرنوع‌ها باشد، ممکن است کاربر بخواهد چندین زیردستگاه را روی یک میزبان کنترل کند. به عنوان مثال، شما ممکن است میزبان‌های mynode+1,mynode+2 را مشخص کنید که نشان‌دهنده کنترل توان زیردستگاه‌های ۱ و ۲ در mynode است. از آنجا که بسیاری از BMCها توانایی مدیریت چندین نشست IPMI به صورت همزمان را ندارند، عملیات کنترل توان به یک میزبان به صورت داخلی در ipmipower سریال‌سازی و پشت سر هم اجرا خواهد شد.

انواع کنترل توان OEM موجود در حال حاضر، همراه با اطلاعات سیستم‌های سازگار و عملیات مجاز، به شرح زیر است:

این نوع توان OEM از کنترل توان اسلات‌های PCIe در سیستم‌های Dell Poweredge C410x پشتیبانی می‌کند. این افزونه از on ،off و stat پشتیبانی می‌نماید. شماره اسلات PCIe بین ۱ تا ۱۶ است و همیشه باید هنگام کنترل توان با این افزونه مشخص شود. برای مثال، نام میزبان mynode+2 به ipmipower دستور می‌دهد تا روی اسلات شماره 2 در mynode عمل کند. به نظر می‌رسد سرور C410x در رسیدگی به درخواست‌های کنترل توان اسلات‌های جدید تا زمان اتمام درخواست‌های قبلی با مشکل مواجه می‌شود. در صورتی که چندین اسلات به صورت متوالی و با فاصله کم کنترل می‌شوند، کاربران بهتر است استفاده از گزینه‌های --wait-until-on و --wait-until-off را مد نظر قرار دهند.
این گزینه به ipmipower اعلام می‌کند که هیچ افزونه کنترل توان سازنده‌ای نباید استفاده شود و کنترل توان استاندارد IPMI به کار گرفته شود. این مقدار پیش‌فرض است.

می‌توان چندین میزبان را به صورت فهرستی از میزبان‌ها با کاما یا به صورت بازه‌ای از نام‌های میزبان در قالب کلی prefix[n-m,l-k,...] وارد کرد که در آن n < m و l < k و غیره است. این قالب اخیر نباید با کلاس‌های کاراکتری عبارات باقاعده (که با [] نشان داده می‌شوند) اشتباه گرفته شود؛ برای مثال foo[19] نمایانگر foo1 یا foo9 نیست، بلکه نشان‌دهنده یک بازه منفرد یعنی foo19 است.

این نحو بازه‌ای صرفاً برای راحتی کار در کلاسترهایی با شیوه نام‌گذاری prefixNN در نظر گرفته شده است و مشخص کردن بازه‌ها ضروری نیست؛ فهرست foo1,foo9 را می‌توان دقیقاً به همان صورت یا با بازه foo[1,9] مشخص نمود.

چند نمونه از کاربرد بازه‌ها در زیر آورده شده است:

foo[01-05] به جای foo01,foo02,foo03,foo04,foo05
foo[7,9-10] به جای foo7,foo9,foo10
foo[0-3] به جای foo0,foo1,foo2,foo3

به عنوان یادآوری، برخی از پوسته‌ها براکت‌ها ([ و ]) را برای تطبیق الگو تفسیر می‌کنند. بسته به پوسته مورد استفاده شما، ممکن است لازم باشد فهرست‌های بازه‌ای را داخل نقل‌قول قرار دهید.

هنگامی که چندین میزبان توسط کاربر مشخص می‌شود، یک سوکت برای هر میزبان ایجاد شده و تحت پایش قرار می‌گیرد که عملاً ارتباط موازی با تمام میزبان‌ها را امکان‌پذیر می‌سازد. این کار امکان ارتباط با تعداد زیادی از گره‌ها را بسیار سریع‌تر از حالت ترتیبی فراهم می‌آورد. گزینه -F می‌تواند تعداد گره‌هایی را که می‌توانند به طور همزمان و موازی مورد ارتباط قرار گیرند تنظیم کند.

به طور پیش‌فرض، خروجی استاندارد از هر گره مشخص‌شده با درج نام میزبان در ابتدای هر خط نمایش داده می‌شود. اگرچه این خروجی در بسیاری از موقعیت‌ها خواناست، اما در شرایط دیگر ممکن است خواندن آن دشوار باشد؛ به عنوان مثال خروجی گره‌های مختلف ممکن است با یکدیگر درآمیزد. گزینه‌های -B و -C می‌توانند این رفتار پیش‌فرض را تغییر دهند.

تعیین وضعیت توان گره‌های foo[0-2] با نام کاربری و گذرواژه تهی:
ipmipower -h foo[0-2] --stat

تعیین وضعیت توان گره‌های foo[0-2] با نام کاربری و گذرواژه مشخص:
ipmipower -h foo[0-2] -u foo -p bar --stat

بازنشانی سخت‌افزاری گره‌های foo[0-2] با نام کاربری و گذرواژه مشخص:
ipmipower -h foo[0-2] -u foo -p bar --reset

در اغلب موارد، مشکلات IPMI ناشی از تنظیمات نادرست پیکربندی است.

مشکلات پروتکل IPMI over LAN ناشی از پیکربندی نادرست BMC در ماشین دوردست است. مجدداً بررسی کنید تا مطمئن شوید موارد زیر به درستی در BMC ماشین دوردست پیکربندی شده‌اند: نشانی IP، نشانی MAC، ماسک زیرشبکه، نام کاربری، فعال بودن کاربر، دسترسی کاربر، گذرواژه، دسترسی LAN، فعال بودن LAN و نوع (انواع) احراز هویت مجاز. برای اتصالات IPMI 2.0، مجدداً بررسی کنید که دسترسی‌های مجموعه رمزنگاری و کلید K_g به درستی تنظیم شده باشند. از ابزار ipmi-config(8) می‌توان برای بررسی و تغییر این تنظیمات پیکربندی استفاده کرد.

علاوه بر نکات عیب‌یابی زیر، لطفاً به بخش «راهکارهای دور زدن ناسازگاری‌ها (WORKAROUNDS)» در زیر مراجعه فرمایید تا ببینید آیا باگ‌های شناخته‌شده‌ای از سوی سازندگان کشف و برطرف شده است یا خیر.

در زیر بسیاری از مشکلات رایج پیام‌های خطا فهرست شده است. برای پشتیبانی بیشتر لطفاً با فهرست پستی <freeipmi-users@gnu.org> مکاتبه فرمایید.

"username invalid" - نام کاربری وارد شده (یا نام کاربری تهی در صورت عدم ورود نام کاربری) در ماشین دوردست موجود نیست. همچنین ممکن است پیکربندی نام کاربری در BMC دوردست نادرست باشد.

"password invalid" - گذرواژه وارد شده (یا گذرواژه تهی در صورت عدم ورود گذرواژه) صحیح نیست. همچنین ممکن است گذرواژه کاربر در BMC دوردست به درستی پیکربندی نشده باشد.

"password verification timeout" - مهلت تأیید گذرواژه به پایان رسیده است. خطای "password invalid" (توضیح داده شده در بالا) یا خطای عمومی "session timeout" (توضیح داده شده در زیر) رخ داده است. در این نقطه از پروتکل نمی‌توان تشخیص داد کدام مورد رخ داده است.

"k_g invalid" - کلید K_g وارد شده (یا کلید تهی در صورت عدم ورود کلید) صحیح نیست. همچنین ممکن است کلید K_g در BMC دوردست به درستی پیکربندی نشده باشد.

"privilege level insufficient" - یک دستور IPMI نیازمند سطح دسترسی کاربری بالاتری نسبت به دسترسی احراز هویت شده است. لطفاً تلاش کنید با سطح دسترسی بالاتری احراز هویت نمایید. این کار ممکن است مستلزم ورود با کاربری متفاوت دارای حداکثر دسترسی بالاتر باشد.

"privilege level cannot be obtained for this user" - سطح دسترسی که تلاش می‌کنید با آن احراز هویت نمایید بالاتر از حداکثر مجاز برای این کاربر است. لطفاً دوباره با دسترسی پایین‌تر امتحان کنید. همچنین ممکن است حداکثر سطح دسترسی مجاز برای کاربر در BMC دوردست به درستی پیکربندی نشده باشد.

"authentication type unavailable for attempted privilege level" - نوع احراز هویتی که می‌خواهید با آن وارد شوید برای این سطح دسترسی موجود نیست. لطفاً مجدداً با نوع احراز هویت جایگزین یا سطح دسترسی متفاوتی تلاش کنید. همچنین ممکن است انواع احراز هویت در دسترس به درستی در BMC دوردست تنظیم نشده باشند.

"cipher suite id unavailable" - شناسه مجموعه رمزنگاری که می‌خواهید با آن احراز هویت کنید در BMC دوردست در دسترس نیست. لطفاً مجدداً با شناسه مجموعه رمزنگاری دیگری تلاش کنید. همچنین ممکن است شناسه‌های مجموعه رمزنگاری در BMC دوردست به درستی پیکربندی نشده باشند.

"ipmi 2.0 unavailable" - پروتکل IPMI 2.0 در ماشین دوردست شناسایی نشد. لطفاً به جای آن از IPMI 1.5 استفاده کنید.

"connection timeout" - ارتباط اولیه IPMI با شکست مواجه شد. تعدادی خطای احتمالی ممکن است رخ داده باشد، از جمله تعیین نام میزبان نامعتبر، عدم امکان تفکیک نشانی IP مربوط به IPMI، فعال نبودن IPMI در سرور دوردست، نامناسب بودن اتصال شبکه و غیره. لطفاً پیکربندی و اتصال شبکه را بررسی نمایید.

"session timeout" - مهلت نشست IPMI به پایان رسیده است. لطفاً مجدداً متصل شوید. اگر این خطا مکرراً رخ می‌دهد، ممکن است لازم باشد مهلت زمانی ارسال مجدد را افزایش دهید. برخی BMCهای دوردست به طور قابل توجهی کندتر از بقیه هستند.

"internal IPMI error" - خطای داخلی IPMI رخ داده است که FreeIPMI نحوه مدیریت آن را نمی‌داند. لطفاً به <freeipmi-users@gnu.org> ایمیل بزنید تا مشکل را گزارش کنید.

هنگام روشن کردن سیستمی که خاموش است، کلاینت باید روشی داشته باشد که از طریق آن نشانی MAC کارت شبکه اترنت ماشین دوردست را تفکیک کند. در حالی که بیشتر راهکارهای مدرن IPMI از قابلیت ARP و تفکیک نشانی در حالت خاموش بودن سیستم پشتیبانی می‌کنند، برخی ماشین‌های قدیمی‌تر این قابلیت را ندارند. این مشکل معمولاً به یکی از دو روش زیر حل می‌شود:

۱) فعال‌سازی بسته‌های ARP غیرمنتظره (Gratuitous ARP) در ماشین دوردست: ماشین دوردست یک بسته ARP ارسال می‌کند که نشانی IP و MAC اترنت آن را اعلان می‌نماید تا سایر ماشین‌های روی شبکه این اطلاعات را در کش ARP محلی خود ذخیره کنند. برای کلاسترهای بزرگ این روش پیشنهاد نمی‌شود زیرا بسته‌های Gratuitous ARP می‌توانند شبکه را با ترافیک غیرضروری پر کنند.

۲) ذخیره دائمی نشانی MAC ماشین دوردست در کش ARP محلی: این رویکرد در کلاسترهای بزرگ متداول‌تر است.

روش‌های دیگر در مشخصات استاندارد IPMI ذکر شده‌اند.

با توجه به اینکه سازندگان متعددی راهکارهای IPMI اختصاصی خود را پیاده‌سازی می‌کنند، ممکن است سازندگان مختلف پروتکل‌های IPMI را به صورت نادرست پیاده‌سازی کرده باشند. موارد زیر تعدادی از راهکارهای دور زدن موجود را برای مدیریت مشکلات عدم انطباق استاندارد شرح می‌دهد. تا حد امکان این راهکارها به گونه‌ای پیاده‌سازی شده‌اند که برای کاربر شفاف باشند؛ با این حال برخی موارد کاربر را ملزم می‌کنند تا استفاده از یک راهکار را از طریق گزینه W- مشخص کند.

سخت‌افزارهای فهرست‌شده در زیر ممکن است تنها نشان‌دهنده سخت‌افزاری باشند که مشکل روی آن کشف شده است. نسخه‌های جدیدتر سخت‌افزار ممکن است مشکلات ذکر شده را برطرف کرده باشند. دستگاه‌های مشابه از سازندگان ممکن است این مشکلات را نشان دهند یا ندهند. سازندگان مختلف ممکن است سفت‌افزار خود را از یک توسعه‌دهنده سفت‌افزار IPMI مشترک خریداری کنند، بنابراین ارزش دارد که راهکارهای فهرست‌شده را امتحان کنید حتی اگر مادربرد شما در فهرست نباشد.

اگر تصور می‌کنید سخت‌افزار شما مشکل انطباق دیگری دارد که نیازمند پیاده‌سازی یک راهکار دور زدن است، لطفاً با نگهدارندگان FreeIPMI از طریق <freeipmi-users@gnu.org> یا <freeipmi-devel@gnu.org> تماس بگیرید.

authcap - این پرچم دور زدن، بررسی‌های اولیه برای قابلیت‌های نام کاربری، قابلیت‌های احراز هویت و پشتیبانی از K_g را نادیده می‌گیرد و اجازه می‌دهد احراز هویت IPMI موفق شود. این گزینه چندین مشکل را که در آنها سیستم دوردست قابلیت‌های نام کاربری، احراز هویت یا وضعیت K_g را به درستی گزارش نمی‌کند دور می‌زند. کسانی که با این مشکل مواجه می‌شوند ممکن است خطاهای "username invalid" یا "authentication type unavailable for attempted privilege level" یا "k_g invalid" را مشاهده کنند. این مشکل در سرورهای Asus P5M2/P5MT-R/RS162-E4/RX4، سرورهای Intel SR1520ML/X38ML و Sun Fire 2200/4150/4450 با ELOM مشاهده شده است.

nochecksumcheck - این پرچم دور زدن به FreeIPMI دستور می‌دهد که چکسام‌های (checksum) بازگردانده شده از پاسخ‌های دستورات IPMI را بررسی نکند. این پرچم سیستم‌هایی را که به دلیل خطای پیاده‌سازی چکسام نامعتبر بازمی‌گردانند ولی بسته در سایر موارد معتبر است مدیریت می‌کند. به کاربران در خصوص استفاده از این گزینه هشدار داده می‌شود، زیرا اعتبارسنجی یکپارچگی بسته را در شرایط مختلف حذف می‌کند؛ با این حال در بیشتر شرایط بعید است مشکلی ایجاد کند. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطاهای "connection timeout" یا "session timeout" یا "password verification timeout" را ببینند. در اتصالات IPMI 1.5، ممکن است راهکار "noauthcodecheck" نیز مورد نیاز باشد. این مشکل در Supermicro X9SCM-iiF ،Supermicro X9DRi-F و Supermicro X9DRFR مشاهده شده است.

idzero - این پرچم دور زدن به کلاینت اجازه می‌دهد شناسه‌های نشست تهی را بپذیرد. این گزینه نشست‌های IPMI را که شناسه نشست خالی به کلاینت گزارش می‌دهند مدیریت می‌کند. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطای "session timeout" را مشاهده کنند. مشکل در Tyan S2882 با BMC مدل M3289 مشاهده شده است.

unexpectedauth - این پرچم دور زدن اجازه می‌دهد تا کدهای احراز هویت غیرتهی غیرمنتظره به گونه‌ای بررسی شوند که گویی مورد انتظار بوده‌اند. این گزینه مشکلی را دور می‌زند که در آن بسته‌ها حاوی داده‌های احراز هویت غیرتهی هستند در حالی که به دلیل غیرفعال بودن احراز هویت به ازای پیام، باید تهی باشند. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطای "session timeout" را ببینند. مشکل در Dell PowerEdge 2850,SC1425 مشاهده شده و رفع آن در سفت‌افزارهای جدیدتر تأیید شده است.

forcepermsg - این پرچم دور زدن استفاده از احراز هویت به ازای هر پیام را بدون توجه به آنچه سیستم دوردست اعلان می‌کند اجباری می‌سازد. این گزینه مشکلی را حل می‌کند که در آن احراز هویت به ازای پیام در سیستم دوردست به عنوان غیرفعال اعلان شده اما در عمل برای پروتکل مورد نیاز است. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطای "session timeout" را مشاهده کنند. این مشکل در IBM eServer 325 مشاهده شده است.

endianseq - این پرچم دور زدن ترتیب بایت‌ها (اندیان) را در شماره‌های توالی نشست وارونه می‌کند تا نشست بتواند به درستی ادامه یابد. این پرچم شماره‌های توالی نشست IPMI 1.5 را که دارای اندیان اشتباه هستند مدیریت می‌کند. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطای "session timeout" را ببینند. این مشکل در برخی نسخه‌های Sun ILOM 1.0/2.0 مشاهده شده است.

noauthcodecheck - این پرچم دور زدن به FreeIPMI دستور می‌دهد که کدهای احراز هویت بازگردانده شده از پاسخ‌های دستورات IPMI 1.5 را بررسی نکند. این گزینه سیستم‌هایی را که به دلیل خطاهای درهم‌سازی یا پیاده‌سازی کدهای احراز هویت نامعتبر برمی‌گردانند دور می‌زند. به کاربران در مورد استفاده از این گزینه هشدار داده می‌شود زیرا بررسی احراز هویت بسته‌ها را غیرفعال می‌سازد. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطاهای "connection timeout" یا "session timeout" یا "password verification timeout" را ببینند. این مشکل در Xyratex FB-H8-SRAY ،Intel Windmill ،Quanta Winterfell و Wiwynn Windmill مشاهده شده است.

intel20 - این پرچم دور زدن چندین مشکل احراز هویت در Intel IPMI 2.0 را برطرف می‌کند. مشکلات تحت پوشش شامل فاصله‌گذاری نام‌های کاربری و برش گذرواژه در صورت استفاده از الگوریتم احراز هویت HMAC-MD5-128 است. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطاهای "username invalid" یا "password invalid" یا "k_g invalid" را مشاهده کنند. این مشکل در Intel SE7520AF2 با ماژول مدیریت سرور اینتل (نسخه حرفه‌ای) دیده شده است.

supermicro20 - این پرچم دور زدن چندین مشکل احراز هویت Supermicro IPMI 2.0 را در بردهای اصلی با سفت‌افزار Peppercon IPMI برطرف می‌کند. مشکلات تحت پوشش شامل مدیریت کدهای احراز هویت با طول نامعتبر است. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطای "password invalid" را ببینند. این مشکل در Supermicro H8QME با کارت دختر SIMSO مشاهده شده است. رفع مشکل در سفت‌افزارهای جدیدتر تأیید شده است.

sun20 - این پرچم دور زدن چندین مشکل احراز هویت Sun IPMI 2.0 را دور می‌زند. مشکلات تحت پوشش شامل کلیدهای هش با طول نامعتبر، کلیدهای درهم‌سازی‌شده نادرست و رکوردهای مجموعه رمزنگاری نامعتبر است. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطاهای "password invalid" یا "bmc error" را مشاهده کنند. این مشکل در Sun Fire 4100/4200/4500 با ILOM مشاهده شده است. این پرچم به طور خودکار شامل راهکار "opensesspriv" نیز می‌شود.

opensesspriv - این پرچم دور زدن پروتکل برقراری اتصال IPMI 2.0 در FreeIPMI را کمی تغییر می‌دهد تا الگوریتم درهم‌سازی نامعتبر استفاده شده توسط سیستم دوردست را دور بزند. سطح دسترسی ارسالی در مرحله Open Session از اتصال IPMI 2.0 به جای سطح دسترسی ارسالی در مرحله RAKP1 برای درهم‌سازی کلیدها استفاده می‌شود. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطاهای "password invalid" یا "k_g invalid" یا "bad rmcpplus status code" یا "privilege level cannot be obtained for this user" را ببینند. این مشکل در Sun Fire 4100/4200/4500 با ILOM، سرورهای Inventec 5441/Dell Xanadu II ،Supermicro X8DTH ،Supermicro X8DTG ،Intel S5500WBV/Penguin Relion 700 ،Intel S2600JF/Appro 512X ،Quanta QSSC-S4R/Appro GB812X-CN ،Dell C5220 و OpenIPMI نرم‌افزاری BMC مشاهده شده است. این راهکار به طور خودکار با راهکار "sun20" فعال می‌شود.

integritycheckvalue - این پرچم دور زدن مقدار بررسی یکپارچگی نامعتبر را در زمان برپایی نشست IPMI 2.0 هنگام استفاده از شناسه مجموعه رمزنگاری ۰ برطرف می‌کند. مقدار بررسی یکپارچگی باید دارای طول ۰ باشد، اما مادربرد دوردست با یک فیلد غیرخالی پاسخ می‌دهد. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطای "k_g invalid" را مشاهده کنند. این مشکل در Supermicro X8DTG ،Supermicro X8DTU ،Intel S5500WBV/Penguin Relion 700 و Intel S2600JF/Appro 512X مشاهده شده است.

ipmiping - این گزینه دور زدن به ipmipower اعلام می‌کند که به جای بسته‌های پینگ RMCP از بسته‌های پینگ مبتنی بر IPMI استفاده کند. مشاهده شده است که برخی مادربردها علی‌رغم الزام استاندارد IPMI، از پینگ/پونگ RMCP پشتیبانی نمی‌کنند. کسانی که با این مشکل روبرو می‌شوند ممکن است خطای "not discovered" را در حالت پوسته تعاملی مشاهده کنند. این مشکل در Intel M50FCP ،Intel Windmill ،Quanta Winterfell و Wiwynn Windmill دیده شده است.

عدم پشتیبانی از IPMI 1.5 - مشخص شده است برخی مادربردهایی که از IPMI 2.0 پشتیبانی می‌کنند، از IPMI 1.5 پشتیبانی نمی‌نمایند. کاربرانی که با این مشکل مواجه می‌شوند ممکن است خطاهای "ipmi 2.0 unavailable" یا "connection timeout" را مشاهده کنند. این مشکل را می‌توان با استفاده از IPMI 2.0 به جای IPMI 1.5 از طریق تعیین --driver-type=LAN_2_0 دور زد. این مشکل در تعدادی از مادربردهای HP و Supermicro دیده شده است.

در صورت اجرای موفقیت‌آمیز، وضعیت خروج ۰ است. در صورت بروز خطا، وضعیت خروج ۱ خواهد بود.

اگر چندین میزبان برای برقراری ارتباط مشخص شده باشند، وضعیت خروج تنها در صورتی ۰ خواهد بود که تمام اهداف با موفقیت اجرا شوند؛ در غیر این صورت وضعیت خروج ۱ است.

هنگام کار در حالت تعاملی، مقدار خروج بر اساس آخرین عملیات توان اجراشده تعیین خواهد شد.

در سیستم‌عامل‌های قدیمی‌تر، اگر نام کاربری، گذرواژه و سایر اطلاعات بالقوه حساس امنیتی خود را در خط فرمان وارد کنید، این اطلاعات ممکن است توسط سایر کاربران با ابزارهایی مانند دستور ps(1) یا بررسی در فایل‌سیستم proc/ کشف شود. به طور کلی امن‌تر است که اطلاعات گذرواژه را با گزینه‌هایی مانند P- یا K- وارد نمایید. همچنین پیکربندی اطلاعات حساس در فایل پیکربندی FreeIPMI روش مناسبی برای پنهان کردن این اطلاعات خواهد بود.

به منظور جلوگیری از حملات جستجوی فراگیر (brute force)، برخی از BMCها پس از چندین خطای متوالی احراز هویت از راه دور، به طور موقت «قفل» می‌شوند. ممکن است لازم باشد مدتی صبر کنید تا این قفل موقت برطرف شود و بتوانید دوباره احراز هویت نمایید.

مشخصات استاندارد IPMI نیازی ندارد که BMCها پیش از بازگرداندن کد تکمیل عملیات به فراخواننده، عملیات کنترل توان را اجرا کرده باشند. بنابراین این امکان وجود دارد که ipmipower استعلام وضعیت توان را برعکس آنچه انتظار دارید برگرداند. برای مثال، اگر عملیات خاموش کردن اجرا شود، یک BMC ممکن است پیش از خاموش شدن واقعی سیستم، کد تکمیل موفقیت‌آمیز را به ipmipower بازگرداند. استعلام‌های بعدی وضعیت توان ممکن است برای چند ثانیه "on" را نشان دهند تا زمانی که BMC واقعاً عملیات خاموش‌سازی را انجام دهد.

باگ‌ها را به <freeipmi-users@gnu.org> یا <freeipmi-devel@gnu.org> گزارش دهید.

Copyright (C) 2007-2015 Lawrence Livermore National Security, LLC.
Copyright (C) 2003-2007 The Regents of the University of California.

این برنامه یک نرم‌افزار آزاد است؛ شما می‌توانید آن را تحت شرایط پروانه عمومی همگانی گنو (GPL) که توسط بنیاد نرم‌افزار آزاد منتشر شده است، چه نسخه ۳ پروانه و چه (به انتخاب خودتان) هر نسخه بالاتر دیگری، مجدداً توزیع کرده و/یا تغییر دهید.

freeipmi.conf(5), freeipmi(7), ipmi-config(8), ipmi-oem(8)

http://www.gnu.org/software/freeipmi

2026-08-27 ipmipower 1.6.19