| ipmi_sim_cmd(5) | IPMI LAN Simulator commands | ipmi_sim_cmd(5) |
نام (NAME)
ipmi_sim_cmd - دستورهای شبیهساز شبکه محلی IPMI
توضیحات (DESCRIPTION)
شبیهساز ipmi_sim با استفاده از این دستورها پیکربندی و راهاندازی میشود. این دستورها را میتوان از یک فایل دستور خواند، از خط فرمان اجرا کرد، یا پس از راهاندازی شبیهساز در داخل محیط تعاملی آن اجرا نمود.
شاید در ابتدا کمی گیجکننده باشد، اما رابطهای شبکه توسط فایل پیکربندی ipmi_lan تنظیم میشوند، و کنترلکنندههای مختلف مدیریت (MC)، حسگرها و موارد دیگر با استفاده از این فایل مشخص میگردند. علاوه بر این، از این دستورها میتوان پس از راهاندازی شبیهساز برای پیکربندی آن، تنظیم مقادیر حسگرها، تزریق رویدادها و مواردی از این دست استفاده کرد.
دستورهای عمومی (GENERAL COMMANDS)
خطوط خالی و خطوطی که با '#' آغاز میشوند نادیده گرفته میشوند. خطوط طولانی را میتوان با قرار دادن یک '´ در انتهای خط شکست تا در خط بعدی ادامه یابند.
- ?Bquit?P
- خروج از شبیهساز.
- ?Binclude?P ?I"file"?P
- گنجاندن فایل مشخصشده.
- ?Bdefine?P ?Iname?P ?I"value"?P
- تعریف نام
دادهشده
به عنوان یک
متغیر با
مقدار مشخص.
از این
متغیر
میتوان
بعداً با
نوشتن ?I
استفاده
کرد. این
متغیر را
نمیتوان
داخل
نقلقولها
قرار داد،
اما
میتوان
نقلقولها
را تفکیک
کرده و
متغیر را
بین آنها
قرار داد.
برای
نمونه، اگر
بنویسید:
define MCNUM "40"
میتوانید بعداً به این صورت از آن استفاده کنید:
mc_add 1 no-device-sdrs 00 00 00 0xc9 0x009000 0x0002
یا
sensor_add 0 21 12 0x6f poll 1000 file "/sys/dev/sens1-""-1"
- ?Bsleep?P ?Itime?P
- متوقف کردن رابط دستوری به مدت تعداد ثانیههای مشخصشده. این کار بر اجرای کلی شبیهساز تأثیری نمیگذارد.
- ?Bdebug?P ?Ioptions?P
- تنظیم
خروجی
اشکالزدایی.
گزینههای
معتبر
عبارتند از:
msg تخلیه و نمایش پیامها.
raw تخلیه ورودی/خروجی خام.
وارد نکردن هیچ گزینهای اشکالزدایی را خاموش میکند.
- ?Bread_cmds?P ?Ifilename?P
- اجرای دستورهای موجود در فایل مشخصشده.
دستورهای کنترلکننده مدیریت (MC COMMANDS)
- ?Bmc_add?P ?IIPMBAddress?P ?IDeviceID?P ?IHasDeviceSDRs?P ?IDeviceRevision?P ?IMajorFWRev?P ?IMinorFWRev?P ?IDeviceSupport?P ?IManufacturerID?P ?IProductID?P
- افزودن یک
کنترلکننده
مدیریت (MC) به
شبیهساز.
تمام
مقادیر در
مبنای
شانزده
(هگزادسیمال)
هستند.
بیشتر
اینها
مقادیر
مربوط به
دستور «Get Device ID»
هستند؛
برای
جزئیات به
مشخصات فنی
مراجعه
کنید. توجه
داشته
باشید که MC
پس از
افزوده شدن
فعال
نمیشود و
باید
صراحتاً آن
را فعال
کنید.
توجه داشته باشید که برخی از این مقادیر، قابلیتهای MC را کنترل میکنند. برای نمونه، HasDeviceSDRs مشخص میکند که آیا دستورهای مخزن SDR دستگاه کار خواهند کرد یا خیر.
میتوانید از has-device-sdrs یا no-device-sdrs در فیلد HasDeviceSDRs استفاده کنید.
- ?Bmc_add_fru_data?P ?Imc-addr?P ?IDeviceID?P ?IFRUSize?P (data [?Ibyte1?P [?Ibyte2?P [...]]] | ?Ifile?P ?Ioffset?P ?Ifilename?P)
- تنظیم دادههای FRU برای یک MC و شناسه دستگاه مشخص. دادهها میتوانند مستقیماً در اینجا ارائه شوند یا در قالب یک فایل مشخص گردند. مقدار offset نقطه شروع نگهداری دادهها از ابتدای فایل است.
- ?Bmc_dump_fru_data?P ?Imc-addr?P ?IDeviceID?P
- تخلیه و نمایش دادههای FRU برای MC و شناسه دستگاه دادهشده.
- ?Bmc_delete?P ?Imc-addr?P
- حذف MC از سیستم.
- ?Bmc_disable?P ?Imc-addr?P
- غیرفعال کردن MC بدون حذف آن.
- ?Bmc_enable?P ?Imc-addr?P
- فعال کردن MC مشخصشده.
- ?Bmc_setbmc?P ?Imc-addr?P
- تنظیم نشانی BMC.
- ?Bmc_set_guid?P ?Imc-addr?P ?Iguid?P
- تنظیم مقدار شناسه یکتای سراسری (GUID). مقدار guid میتواند یک رشته (داخل نقلقول) یا یک رشته هگزادسیمال باشد.
- ?Bsel_enable?P ?Imc-addr?P ?Imax-entries?P ?Iflags?P
- فعال کردن لاگ رویداد سیستم (SEL) روی MC مشخصشده. پارامتر flags بایتی است که از دستور «Get SEL Info» بازگردانده میشود و جنبههای گوناگون SEL را کنترل میکند. برای جزئیات به مشخصات فنی مراجعه کنید.
- ?Bsel_add?P ?Imc-addr?P ?IRecordType?P ?Ibyte1?P ?Ibyte2?P ... ?Ibyte13?P
- افزودن یک مدخل به SEL مربوط به MC.
- ?Bmain_sdr_add?P ?Imc-addr?P ?Ibyte1?P [?Ibyte2?P [...]]
- افزودن یک مدخل به SDR اصلی کنترلکننده مدیریت.
- ?Bdevice_sdr_add?P ?Imc-addr?P ?ILUN?P ?Ibyte1?P [?Ibyte2?P [...]]
- افزودن یک مدخل به SDR دستگاه مربوط به MC.
دستورهای حسگر (SENSOR COMMANDS)
- ?Bsensor_add?P ?Imc-addr?P ?ILUN?P ?Isensor-num?P ?Isensor-type?P ?Ievent-reading-code?P [?Ipoll?P ?Ipoll_rate?P ?Ipoll_type?P ?Ipoll_type_options?P] [event-only]
- افزودن یک
حسگر به MC و LUN
دادهشده.
نوع حسگر بر
اساس کد
خواندن
رویداد
تنظیم
میشود.
اگر ?Ipoll?P مشخص شود، حسگر برای دریافت داده به صورت دورهای پیمایش (poll) میشود. در حال حاضر تنها نوع پیمایش ?Ifile?P پشتیبانی میشود. مقدار خواندهشده عددی از یک فایل است. گزینههای اختیاری آن عبارتند از:
div=val مقدار خواندهشده را بر عدد دادهشده تقسیم میکند. این عمل پس از ضرب انجام میشود.
mult=val مقدار خواندهشده را در عدد دادهشده ضرب میکند. این عمل پس از تفریق انجام میشود.
sub=val مقدار دادهشده را از مقدار خواندهشده کم میکند. این عمل پس از اعمال ماسک انجام میشود.
mask=val عملیات ماسک بیتی (AND بیتی) را با عدد دادهشده روی مقدار انجام میدهد.
base=value مبنای عددی مقدار خواندهشده از فایل را مشخص میکند. پیشفرض صفر است که یعنی از قراردادهای زبان C استفاده میشود.
initstate=value وضعیت اولیه رویداد را تنظیم میکند. این گزینه برای حسگرهای گسسته با بیتهایی که به طور عادی باید برابر با "1" باشند (مانند بیت حضور) کاربرد دارد تا از ارسال رویداد در هر بار راهاندازی برنامه جلوگیری شود.
raw مشخص میکند که داده خواندهشده از فایل یک مقدار خام است. تنها به تعداد ?Ilength?P بایت از موقعیت ?Ioffset?P خوانده میشود.
ascii مشخص میکند که داده فایل در قالب متنی ASCII است. این مقدار پیشفرض است. مقدار ?Ioffset?P استفاده میشود اما ?Ilength?P خیر.
length=val طول داده خواندهشده از فایل را مشخص میکند. حداکثر مقدار 4 است و فقط برای داده خام به کار میرود.
depends=<mc_addr>,<lun>,<sensor_number>,<bit> بیتی از یک حسگر گسسته را مشخص میکند که برای فعال بودن حسگر باید برابر با 1 باشد. معمولاً از بیت حضور یک حسگر برای تعیین حضور سایر حسگرها روی دستگاه استفاده میشود. سایر حسگرها به این بیت ارجاع میدهند.
event-only مشخص میکند که حسگر قابل خواندن نخواهد بود و تنها رویداد تولید میکند (با یک SDR از نوع 3 مشخص میشود).
- ?Bsensor_set_bit?P ?Imc-addr?P ?ILUN?P ?Isensor-num?P ?Ibit-to-set?P ?Ibit-value?P ?Igenerate-event?P
- تنظیم بیت مشخصشده روی bit-value (مقدار 0 یا 1) برای حسگر بر اساس شماره بیت، خواه آستانه برای حسگر آنالوگ باشد یا بیت حسگر گسسته. اگر generate-event غیرصفر باشد و حسگر رویدادها را برای آن بیت فعال کرده باشد، رویدادی تولید خواهد شد.
- ?Bsensor_set_bit_clr_rest?P ?Imc-addr?P ?ILUN?P ?Isensor-num?P ?Ibit-to-set?P ?Ibit-value?P ?Igenerate-event?P
- مانند sensor_set_bit عمل میکند اما سایر بیتها را به طور خودکار پاک میسازد.
- ?Bsensor_set_value?P ?Imc-addr?P ?ILUN?P ?Isensor-num?P ?Ivalue?P ?Igenerate-event?P
- تنظیم مقدار بایتی برای یک حسگر آنالوگ. اگر حسگر از مقدار آستانه عبور کند، رویدادهای حسگر فعال باشند و generate-event غیرصفر باشد، رویدادی برای این شرایط تولید میشود.
- ?Bsensor_set_hysteresis?P ?Imc-addr?P ?ILUN?P ?Isensor-num?P ?Isupport?P ?Ipositive?P ?Inegative?P
- تنظیم
قابلیتهای
پسماند (hysteresis)
حسگر. حسگر
باید از نوع
آنالوگ
باشد. مقدار
support
مشخصکننده
قابلیت
پسماند
است، مشابه
مقدار
پشتیبانی
پسماند در SDR
حسگر.
مقادیر
پسماند
مثبت و منفی
نیز با این
دستور
تنظیم
میشوند.
مقدار support میتواند به جای عدد، یکی از موارد none، readable، settable یا fixed باشد.
- ?Bsensor_set_threshold?P ?Imc-addr?P ?ILUN?P ?Isensor-num?P ?Ithreshold-support?P ?Ithreshold-enabled?P [?Ivalue5?P [?Ivalue4?P [... [?Ivalue0?P]]]]
- تنظیم
پشتیبانی
آستانه
برای حسگر.
حسگر باید
آنالوگ
باشد. مقدار
threshold-support مشابه
مقدار
پشتیبانی
دسترسی به
آستانه در SDR
حسگر است.
مقادیر threshold-enabled
رشتهای از
نویسههای
«0» و «1»
هستند که ۶
آستانه
متناظر را
فعال
میکنند؛
راستترین
مقدار
مربوط به
آستانه 0 و
چپترین
مقدار
مربوط به
آستانه 5
است. به
صورت
اختیاری،
مقادیر
آستانه را
میتوان به
عنوان
مقادیر
بایتی
آنها مشخص
کرد.
مقدار threshold-support میتواند none، readable، settable یا fixed باشد. آستانهها عبارتند از:
0 - حد پایین غیربحرانی (lower non critical)
1 - حد پایین بحرانی (lower critical)
2 - حد پایین غیرقابل بازیابی (lower non recoverable)
3 - حد بالا غیربحرانی (upper non critical)
4 - حد بالا بحرانی (upper critical)
5 - حد بالا غیرقابل بازیابی (upper non recoverable)
- ?Bsensor_set_event_support?P ?Imc-addr?P ?ILUN?P ?Isensor-num?P ?Ievents-enable?P ?Iscanning?P ?Ievent-support?P ?Iassert-support?P ?Ideassert-support?P ?Iassert-enabled?P ?Ideassert-enabled?P
- تنظیم
پشتیبانی
رویداد
برای حسگر.
پارامتر events-enable
در صورت
غیرصفر
بودن،
رویدادهای
سراسری
حسگر را
فعال
میکند، در
غیر این
صورت
غیرفعال
میشوند.
مقادیر scanning
نحوه پویش
حسگر را
تعیین
میکنند.
مقدار event-support
قابلیتهای
رویداد
حسگر را
تنظیم
میکند، که
مشابه
مقدار «sensor event message
control support» در SDR
حسگر است.
مقادیر assert-support،
deassert-support، assert-enabled و deassert-enabled
همگی ماسک
بیتی
(رشتهای از
نویسههای
«0» و «1»)
هستند که
قابلیت
تولید
رویداد
بیتهای
متناظر
حسگر (support) و
فعال بودن
فعلی آنها
(enabled) را مشخص
میکنند.
توجه داشته باشید که در تمام ماسکهای بیتی، راستترین رقم بیت صفرم و چپترین رقم پرارزشترین بیت است. توجه داشته باشید که باید ۱۵ بیت در اینجا مشخص شود، حتی اگر از همه آنها استفاده نکنید.
میتوانید از enable یا disable در فیلد events-enable و از scanning یا no-scanning در فیلد scanning استفاده کنید.
برای event-support میتوانید به جای عدد از per-state، entire-sensor، global یا none استفاده نمایید.
برای حسگر آستانه، مقادیر عبارتند از:
0 - حد پایین غیربحرانی رو به کاهش
1 - حد پایین غیربحرانی رو به افزایش
2 - حد پایین بحرانی رو به کاهش
3 - حد پایین بحرانی رو به افزایش
4 - حد پایین غیرقابل بازیابی رو به کاهش
5 - حد پایین غیرقابل بازیابی رو به افزایش
6 - حد بالا غیربحرانی رو به کاهش
7 - حد بالا غیربحرانی رو به افزایش
8 - حد بالا بحرانی رو به کاهش
9 - حد بالا بحرانی رو به افزایش
10 - حد بالا غیرقابل بازیابی رو به کاهش
11 - حد بالا غیرقابل بازیابی رو به افزایش
توجه داشته باشید که مقادیر «حد پایین رو به افزایش» و «حد بالا رو به کاهش» پشتیبانی نمیشوند زیرا کاربردی ندارند.
دستورهای سازنده تجهیزات اصلی ATCA (ATCA OEM COMMANDS)
این دستورها برای شبیهسازی قابلیتهای ویژه معماری محاسباتی پیشرفته مخابراتی (ATCA) هستند.
- ?Batca_enable?P
- سیستم را به
عنوان یک
سیستم ATCA
تعیین کرده
و
قابلیتهای
دیگر ATCA را
فعال
میسازد.
توجه داشته باشید که این کار باید *پیش از* ایجاد هرگونه MC انجام شود (در واقع باید اولین دستور باشد) زیرا MCها برای حالت ATCA اندکی متفاوت راهاندازی میشوند. این امر باعث میشود MCها بتوانند دستورهای PICMG را به درستی مدیریت کنند، ۲ عدد LED به طور پیشفرض پیکربندی شود و مدیریت صحیح اتصال گرم (hot-swap) از جمله LED آبی فعال گردد. به طور پیشفرض، LED آبی از کنترل محلی پشتیبانی میکند و سایر LEDها قرمز بوده و پشتیبانی نمیکنند.
در حالت ATCA، برای راهاندازی ماشین وضعیت تعویض گرم، باید از sensor_set_bit_clr_rest برای تنظیم وضعیت تعویض گرم استفاده کنید.
- ?Batca_set_site?P ?Ihardware-address?P ?Isite-type?P ?Isite-number?P
- تنظیم مقادیر دادهشده برای یک سیستم ATCA؛ مقادیری که توسط دستورهای دریافت نشانی بازگردانده میشوند.
- ?Bmc_set_num_leds?P ?Imc-addr?P ?Icount?P
- تنظیم تعداد LEDهای ATCA که MC داراست.
- ?Bmc_set_power?P ?Imc-addr?P ?Ipower?P ?Igen-event?P
- تنظیم مقدار عددی توان مصرفی ATCA برای MC. اگر gen-event غیرصفر باشد، رویدادی برای این تغییر صادر میشود.
فایلها (FILES)
/etc/ipmi/lan.conf
همچنین ببینید (SEE ALSO)
مشکلات شناختهشده (KNOWN PROBLEMS)
پروتکل IPMI به طور غیرضروری پیچیده است. انبوهی از قابلیتها هنوز پیادهسازی نشدهاند.
نویسنده (AUTHOR)
Corey Minyard <cminyard@mvista.com>
| 06/26/12 | OpenIPMI |