1IPMI-SEL(8)                     System Commands                    IPMI-SEL(8)
2
3
4

NAME

6       ipmi-sel - display SEL entries
7

SYNOPSIS

9       ipmi-sel [OPTION...]
10

DESCRIPTION

12       Ipmi-sel is used to view and manage System Event Log (SEL) entries. SEL
13       records store system event information and may be useful for  debugging
14       problems.
15
16       Ipmi-sel  does  not inform the user if an event is particularly good or
17       bad, just that the event occurred. Users may wish  to  use  the  --out‐
18       put-event-state option to output the analyzed state.
19
20       Listed  below  are general IPMI options, tool specific options, trouble
21       shooting  information,  workaround  information,  examples,  and  known
22       issues.  For a general introduction to FreeIPMI please see freeipmi(7).
23       To perform some advanced SEL management, please see bmc-device(8).
24

GENERAL OPTIONS

26       The following options are general options for configuring IPMI communi‐
27       cation and executing general tool commands.
28
29       -D IPMIDRIVER, --driver-type=IPMIDRIVER
30              Specify  the  driver type to use instead of doing an auto selec‐
31              tion.  The currently available outofband  drivers  are  LAN  and
32              LAN_2_0,  which  perform IPMI 1.5 and IPMI 2.0 respectively. The
33              currently available inband drivers are KCS, SSIF, OPENIPMI,  and
34              SUNBMC.
35
36       --disable-auto-probe
37              Do not probe in-band IPMI devices for default settings.
38
39       --driver-address=DRIVER-ADDRESS
40              Specify  the  in-band  driver  address to be used instead of the
41              probed value. DRIVER-ADDRESS should be prefixed with "0x" for  a
42              hex value and '0' for an octal value.
43
44       --driver-device=DEVICE
45              Specify the in-band driver device path to be used instead of the
46              probed path.
47
48       --register-spacing=REGISTER-SPACING
49              Specify the in-band  driver  register  spacing  instead  of  the
50              probed  value. Argument is in bytes (i.e. 32bit register spacing
51              = 4)
52
53       --target-channel-number=CHANNEL-NUMBER
54              Specify the in-band driver target channel number  to  send  IPMI
55              requests to.
56
57       --target-slave-address=SLAVE-ADDRESS
58              Specify  the  in-band  driver  target  slave number to send IPMI
59              requests to.
60
61       -h      IPMIHOST1,IPMIHOST2,...,      --hostname=IPMIHOST1[:PORT],IPMI‐
62       HOST2[:PORT],...
63              Specify  the  remote host(s) to communicate with. Multiple host‐
64              names may be separated by comma or may be specified in  a  range
65              format;  see  HOSTRANGED  SUPPORT below. An optional port can be
66              specified with each host, which may be useful in port forwarding
67              or similar situations.
68
69       -u USERNAME, --username=USERNAME
70              Specify  the username to use when authenticating with the remote
71              host.  If not specified, a null  (i.e.  anonymous)  username  is
72              assumed. The user must have atleast USER privileges in order for
73              this tool to operate fully.
74
75       -p PASSWORD, --password=PASSWORD
76              Specify the password to use when authenticationg with the remote
77              host.   If  not  specified,  a null password is assumed. Maximum
78              password length is 16 for IPMI 1.5 and 20 for IPMI 2.0.
79
80       -P, --password-prompt
81              Prompt for password  to  avoid  possibility  of  listing  it  in
82              process lists.
83
84       -k K_G, --k-g=K_G
85              Specify  the  K_g  BMC  key  to use when authenticating with the
86              remote host for IPMI 2.0.  If  not  specified,  a  null  key  is
87              assumed. To input the key in hexadecimal form, prefix the string
88              with '0x'. E.g., the key 'abc' can be entered  with  the  either
89              the string 'abc' or the string '0x616263'
90
91       -K, --k-g-prompt
92              Prompt  for  k-g  to  avoid possibility of listing it in process
93              lists.
94
95       --session-timeout=MILLISECONDS
96              Specify the session timeout in milliseconds. Defaults  to  20000
97              milliseconds (20 seconds) if not specified.
98
99       --retransmission-timeout=MILLISECONDS
100              Specify  the  packet  retransmission  timeout  in  milliseconds.
101              Defaults to 1000 milliseconds (1 second) if not  specified.  The
102              retransmission  timeout  cannot be larger than the session time‐
103              out.
104
105       -a AUTHENTICATION-TYPE, --authentication-type=AUTHENTICATION-TYPE
106              Specify the IPMI 1.5 authentication type to use.  The  currently
107              available  authentication types are NONE, STRAIGHT_PASSWORD_KEY,
108              MD2, and MD5. Defaults to MD5 if not specified.
109
110       -I CIPHER-SUITE-ID, --cipher-suite-id=CIPHER-SUITE-ID
111              Specify the IPMI 2.0 cipher suite ID to use. The Cipher Suite ID
112              identifies a set of authentication, integrity, and confidential‐
113              ity algorithms to use for IPMI 2.0 communication. The  authenti‐
114              cation  algorithm  identifies  the  algorithm to use for session
115              setup, the integrity algorithm identifies the algorithm  to  use
116              for session packet signatures, and the confidentiality algorithm
117              identifies the algorithm to use for payload encryption. Defaults
118              to  cipher  suite  ID  3  if not specified. The following cipher
119              suite ids are currently supported:
120
121              0 - Authentication Algorithm = None; Integrity Algorithm = None;
122              Confidentiality Algorithm = None
123
124              1  - Authentication Algorithm = HMAC-SHA1; Integrity Algorithm =
125              None; Confidentiality Algorithm = None
126
127              2 - Authentication Algorithm = HMAC-SHA1; Integrity Algorithm  =
128              HMAC-SHA1-96; Confidentiality Algorithm = None
129
130              3  - Authentication Algorithm = HMAC-SHA1; Integrity Algorithm =
131              HMAC-SHA1-96; Confidentiality Algorithm = AES-CBC-128
132
133              6 - Authentication Algorithm = HMAC-MD5; Integrity  Algorithm  =
134              None; Confidentiality Algorithm = None
135
136              7  -  Authentication Algorithm = HMAC-MD5; Integrity Algorithm =
137              HMAC-MD5-128; Confidentiality Algorithm = None
138
139              8 - Authentication Algorithm = HMAC-MD5; Integrity  Algorithm  =
140              HMAC-MD5-128; Confidentiality Algorithm = AES-CBC-128
141
142              11  - Authentication Algorithm = HMAC-MD5; Integrity Algorithm =
143              MD5-128; Confidentiality Algorithm = None
144
145              12 - Authentication Algorithm = HMAC-MD5; Integrity Algorithm  =
146              MD5-128; Confidentiality Algorithm = AES-CBC-128
147
148              15 - Authentication Algorithm = HMAC-SHA256; Integrity Algorithm
149              = None; Confidentiality Algorithm = None
150
151              16 - Authentication Algorithm = HMAC-SHA256; Integrity Algorithm
152              = HMAC_SHA256_128; Confidentiality Algorithm = None
153
154              17 - Authentication Algorithm = HMAC-SHA256; Integrity Algorithm
155              = HMAC_SHA256_128; Confidentiality Algorithm = AES-CBC-128
156
157       -l PRIVILEGE-LEVEL, --privilege-level=PRIVILEGE-LEVEL
158              Specify the privilege level to be used. The currently  available
159              privilege  levels  are  USER,  OPERATOR,  and ADMIN. Defaults to
160              OPERATOR if not specified.
161
162       --config-file=FILE
163              Specify an alternate configuration file.
164
165       -W WORKAROUNDS, --workaround-flags=WORKAROUNDS
166              Specify workarounds to vendor compliance issues. Multiple  work‐
167              arounds  can be specified separated by commas. A special command
168              line flag of "none", will indicate no workarounds (may be useful
169              for overriding configured defaults). See WORKAROUNDS below for a
170              list of available workarounds.
171
172       --debug
173              Turn on debugging.
174
175       -?, --help
176              Output a help list and exit.
177
178       --usage
179              Output a usage message and exit.
180
181       -V, --version
182              Output the program version and exit.
183

IPMI-SEL OPTIONS

185       The following options are specific to Ipmi-sel.
186
187       -v     Output verbose output. This option will output event  direction.
188              Event  direction may be useful to differentiate severity between
189              some events. For example, some motherboards may issue  an  event
190              both  when  a  temperature  exceeds a threshold and when it goes
191              back down below it.
192
193       -vv    Output very verbose output. This option will  output  additional
194              information  than  verbose  output.  Most notably it will output
195              additional hex codes  to  given  information  on  ambiguous  SEL
196              entries.  For example, it will output Generator ID hex codes for
197              sensors without names.
198
199       -i, --info
200              Show general information about the SEL.
201
202       --display=RECORD-IDS-LIST
203              Display SEL records by record id. Accepts space or  comma  sepa‐
204              rated lists.
205
206       --exclude-display=RECORD-IDS-LIST
207              Exclude  display  of  SEL records by record id. Accepts space or
208              comma separated lists.
209
210       --display-range=START-END
211              Display SEL records from record id START to END.
212
213       --exclude-display-range=START-END
214              Exclude display of SEL records from record id START to END.
215
216       --date-range=DATE-DATE
217              Display SEL records with events occurring in the specified  date
218              range.   Dates may be specified in MM/DD/YYYY or MM-DD-YYYY for‐
219              mat. The month may be specified as a numeral or its  abbreviated
220              string name. The current local system time can be specified with
221              "now". Note that non-timestamped records will not  be  displayed
222              automatically because they do not possess a timestamp.
223
224       --exclude-date-range=DATE-DATE
225              Exclude  display  of  SEL  records  with events occurring in the
226              specified date range. Dates may be specified  in  MM/DD/YYYY  or
227              MM-DD-YYYY  format.  The  month may be specified as a numeral or
228              its abbreviated string name. The current local system  time  can
229              be  specified with "now". Note that non-timestamped records will
230              be displayed automatically because they do not possess  a  time‐
231              stamp.
232
233       -t SENSOR-TYPE-LIST, --sensor-types=SENSOR-TYPE-LIST
234              Specify  sensor types to show SEL events for. Multiple types can
235              be separated by commas or spaces. A special command line type of
236              "all",  will  indicate  all types should be shown (may be useful
237              for overriding configured defaults). Users  may  specify  sensor
238              types  by  string  (see  --list-sensor-types below) or by number
239              (decimal or hex).
240
241       -T SENSOR-TYPE-LIST, --exclude-sensor-types=SENSOR-TYPE-LIST
242              Specify sensor types to not show SEL events for. Multiple  types
243              can  be  separated  by  commas or spaces. A special command line
244              type of "none", will indicate no types should be  excluded  (may
245              be useful for overriding configured defaults). Users may specify
246              sensor types by string (see  --list-sensor-types  below)  or  by
247              number (decimal or hex).
248
249       -L, --list-sensor-types
250              List sensor types.
251
252       --tail=count
253              Display  approximately  the  last count SEL records. The display
254              count is calculated by approximating the record ids of the  last
255              SEL  records.  It's correctness depends highly on the SEL imple‐
256              mentation by the vendor.
257
258       -c, --clear, --delete-all
259              Clear SEL.
260
261       --post-clear
262              Identical to --clear, except the SEL clearning will be performed
263              after SEL event records are displayed. This option is useful for
264              scripting if users intend to log SEL events to another log, then
265              immediately  clear SEL. Unlike calling --clear in another execu‐
266              tion of ipmi-sel, this  option  will  use  SEL  reservations  to
267              notify  the  user  if a SEL change has occurred while displaying
268              and clearing the SEL. This can protect users from a race,  where
269              a  new  SEL  event  is unknowingly generated before clearing the
270              SEL. Note that SEL reservations are  optionally  implemented  by
271              vendors and may not be available on all machines.
272
273       -d REC-LIST, --delete=RECORD-IDS-LIST
274              Delete  records  by record id in the SEL. Accepts space or comma
275              separated lists.
276
277       -R START-END, --delete-range=START-END
278              Delete record ids from START to END in the SEL.
279
280       --system-event-only
281              Output  only  system  event  records  (i.e.  don't  output   OEM
282              records).
283
284       --oem-event-only
285              Output  only  OEM  event records (i.e. don't output system event
286              records).
287
288       --output-manufacturer-id
289              For OEM SEL record types, output the manufacturer ID along  with
290              event data when available.
291
292       --output-event-state
293              Output event state in output. This will add an additional output
294              reporting if an event should be viewed as NOMINAL,  WARNING,  or
295              CRITICAL.   The event state is an interpreted value based on the
296              configuration  file  /etc//freeipmi_interpret_sel.conf  and  the
297              event  direction.   See  freeipmi_interpret_sel.conf(5) for more
298              information.
299
300       --event-state-config-file=FILE
301              Specify an alternate  event  state  configuration  file.  Option
302              ignored if --output-event-state not specified.
303
304       -x, --hex-dump
305              Hex-dump SEL entries.
306
307       --interpret-oem-data
308              Attempt  to interpret OEM data, such as event data, sensor read‐
309              ings, or general extra info, etc. If an  OEM  interpretation  is
310              not available, the default output will be generated. Correctness
311              of OEM interpretations cannot be  guaranteed  due  to  potential
312              changes OEM vendors may make in products, firmware, etc. See OEM
313              INTERPRETATION below for confirmed supported motherboard  inter‐
314              pretations.
315
316       --output-oem-event-strings
317              Some motherboards support an IPMI OEM extension that returns the
318              string output for a system event. Such string output may be ben‐
319              eficial  for determining the meaning behind OEM specific events.
320              This option will use the OEM event string to describe all system
321              events in the ipmi-sel output. This option differs from --inter‐
322              pret-oem-data option in that all system events will  output  the
323              vendor  supplied event string, not just events that are OEM spe‐
324              cific. The event string may be very different  from  the  normal
325              FreeIPMI  event  string  output.  If an OEM event strings is not
326              available, the default output will be output.   This  option  is
327              confirmed to work for Fujitsu iRMC S1 and iRMC S2 systems.
328
329       --entity-sensor-names
330              Output  sensor  names prefixed with their entity id and instance
331              number when appropriate. This may be necessary on  some  mother‐
332              boards  to help identify what sensors are referencing. For exam‐
333              ple, a motherboard may have multiple sensors named  'TEMP'.  The
334              entity  id  and  instance  number  may help clarify which sensor
335              refers to "Processor 1" vs. "Processor 2".
336
337       --no-sensor-type-output
338              Do not show sensor type output for each entry. On many  systems,
339              the sensor type is redundant to the name of the sensor. This can
340              especially be true if --entity-sensor-names  is  specified.   If
341              the  sensor  name  is sufficient, or if the sensor type is of no
342              interest to the user, this option can be specified  to  condense
343              output.
344
345       --comma-separated-output
346              Output fields in comma separated format.
347
348       --no-header-output
349              Do not output column headers. May be useful in scripting.
350
351       --non-abbreviated-units
352              Output  non-abbreviated  units (e.g. 'Amps' instead of 'A'). May
353              aid  in  disambiguation  of  units  (e.g.  'C'  for  Celsius  or
354              Coulombs).
355
356       --legacy-output
357              Output  in legacy format. Newer options may not be applicable to
358              legacy output.
359

SDR CACHE OPTIONS

361       This tool requires access to the sensor data repository (SDR) cache for
362       general  operation.  By default, SDR data will be downloaded and cached
363       on the local machine. The following options apply to the SDR cache.
364
365       -f, --flush-cache
366              Flush a cached version  of  the  sensor  data  repository  (SDR)
367              cache. The SDR is typically cached for faster subsequent access.
368              However, it may need to be flushed and re-generated if  the  SDR
369              has been updated on a system.
370
371       -Q, --quiet-cache
372              Do  not output information about cache creation/deletion. May be
373              useful in scripting.
374
375       --sdr-cache-recreate
376              If the SDR cache is out of date or invalid, automatically recre‐
377              ate  the  sensor data repository (SDR) cache. This option may be
378              useful for scripting purposes.
379
380       --sdr-cache-file=FILE
381              Specify a specific sensor data repository (SDR) cache file to be
382              stored  or read from. If this option is used when multiple hosts
383              are specified, the same SDR cache file  will  be  used  for  all
384              hosts.
385
386       --sdr-cache-directory=DIRECTORY
387              Specify  an alternate directory for sensor data repository (SDR)
388              caches to be stored or read from. Defaults to the home directory
389              if not specified.
390
391       --ignore-sdr-cache
392              Ignore  SDR  cache related processing. May lead to incomplete or
393              less useful information being  output,  however  it  will  allow
394              functionality  for  systems without SDRs or when the correct SDR
395              cannot be loaded.
396

HOSTRANGED OPTIONS

398       The following options manipulate hostranged output. See HOSTRANGED SUP‐
399       PORT below for additional information on hostranges.
400
401       -B, --buffer-output
402              Buffer  hostranged output. For each node, buffer standard output
403              until the node has completed its IPMI operation. When specifying
404              this  option, data may appear to output slower to the user since
405              the the entire IPMI operation must complete before any data  can
406              be output.  See HOSTRANGED SUPPORT below for additional informa‐
407              tion.
408
409       -C, --consolidate-output
410              Consolidate hostranged output. The complete standard output from
411              every  node  specified  will  be consolidated so that nodes with
412              identical output are not output twice. A header will list  those
413              nodes  with  the consolidated output. When this option is speci‐
414              fied, no output can be seen until the  IPMI  operations  to  all
415              nodes  has  completed.  If  the  user  breaks out of the program
416              early, all currently consolidated output  will  be  dumped.  See
417              HOSTRANGED SUPPORT below for additional information.
418
419       -F NUM, --fanout=NUM
420              Specify  multiple  host  fanout.  A "sliding window" (or fanout)
421              algorithm is used for parallel IPMI communication so that slower
422              nodes or timed out nodes will not impede parallel communication.
423              The maximum number of threads available at the same time is lim‐
424              ited by the fanout. The default is 64.
425
426       -E, --eliminate
427              Eliminate  hosts  determined  as undetected by ipmidetect.  This
428              attempts to remove the common issue of hostranged execution tim‐
429              ing  out  due  to  several nodes being removed from service in a
430              large cluster. The ipmidetectd daemon must  be  running  on  the
431              node executing the command.
432
433       --always-prefix
434              Always prefix output, even if only one host is specified or com‐
435              municating in-band. This option is primarily useful for  script‐
436              ing  purposes.  Option  will be ignored if specified with the -C
437              option.
438

HOSTRANGED SUPPORT

440       Multiple hosts can be input either as an explicit comma separated lists
441       of  hosts  or  a  range of hostnames in the general form: prefix[n-m,l-
442       k,...], where n < m and l < k, etc. The later form should not  be  con‐
443       fused  with  regular expression character classes (also denoted by []).
444       For example, foo[19] does not represent foo1 or foo9, but rather repre‐
445       sents a degenerate range: foo19.
446
447       This  range  syntax  is  meant only as a convenience on clusters with a
448       prefixNN naming convention and specification of ranges  should  not  be
449       considered  necessary -- the list foo1,foo9 could be specified as such,
450       or by the range foo[1,9].
451
452       Some examples of range usage follow:
453           foo[01-05] instead of foo01,foo02,foo03,foo04,foo05
454           foo[7,9-10] instead of foo7,foo9,foo10
455           foo[0-3] instead of foo0,foo1,foo2,foo3
456
457       As a reminder to the reader, some shells will interpret brackets ([ and
458       ])  for  pattern matching. Depending on your shell, it may be necessary
459       to enclose ranged lists within quotes.
460
461       When multiple hosts are specified by the user, a thread  will  be  exe‐
462       cuted  for each host in parallel up to the configured fanout (which can
463       be adjusted via the -F option). This will allow communication to  large
464       numbers of nodes far more quickly than if done in serial.
465
466       By  default,  standard  output  from each node specified will be output
467       with the hostname prepended to each line. Although this output is read‐
468       able  in  many  situations, it may be difficult to read in other situa‐
469       tions. For example, output from multiple nodes may be  mixed  together.
470       The -B and -C options can be used to change this default.
471
472       In-band  IPMI  Communication  will be used when the host "localhost" is
473       specified. This allows the user to add  the  localhost  into  the  hos‐
474       tranged output.
475

GENERAL TROUBLESHOOTING

477       Most often, IPMI problems are due to configuration problems.
478
479       IPMI  over  LAN  problems  involve  a  misconfiguration  of  the remote
480       machine's BMC.  Double check to make sure the following are  configured
481       properly  in  the remote machine's BMC: IP address, MAC address, subnet
482       mask, username, user enablement, user privilege, password,  LAN  privi‐
483       lege,  LAN enablement, and allowed authentication type(s). For IPMI 2.0
484       connections, double check to make sure the  cipher  suite  privilege(s)
485       and K_g key are configured properly. The bmc-config(8) tool can be used
486       to check and/or change these configuration settings.
487
488       Inband IPMI problems are  typically  caused  by  improperly  configured
489       drivers or non-standard BMCs.
490
491       In  addition  to the troubleshooting tips below, please see WORKAROUNDS
492       below to also if there are any vendor specific bugs that have been dis‐
493       covered and worked around.
494
495       Listed  below  are  many  of the common issues for error messages.  For
496       additional support, please e-mail the <freeipmi-users@gnu.org>  mailing
497       list.
498
499       "username  invalid"  - The username entered (or a NULL username if none
500       was entered) is not available on the remote machine.  It  may  also  be
501       possible the remote BMC's username configuration is incorrect.
502
503       "password  invalid"  - The password entered (or a NULL password if none
504       was entered) is not correct. It may also be possible the  password  for
505       the user is not correctly configured on the remote BMC.
506
507       "password  verification timeout" - Password verification has timed out.
508       A "password invalid" error (described  above)  or  a  generic  "session
509       timeout" (described below) occurred.  During this point in the protocol
510       it cannot be differentiated which occurred.
511
512       "k_g invalid" - The K_g key entered (or a NULL  K_g  key  if  none  was
513       entered)  is  not  correct.  It may also be possible the K_g key is not
514       correctly configured on the remote BMC.
515
516       "privilege level insufficient" - An IPMI command requires a higher user
517       privilege  than  the one authenticated with. Please try to authenticate
518       with a higher privilege. This may require authenticating to a different
519       user which has a higher maximum privilege.
520
521       "privilege  level  cannot  be  obtained  for this user" - The privilege
522       level you are attempting to authenticate with is higher than the  maxi‐
523       mum  allowed for this user. Please try again with a lower privilege. It
524       may also be possible the maximum privilege level allowed for a user  is
525       not configured properly on the remote BMC.
526
527       "authentication  type  unavailable for attempted privilege level" - The
528       authentication type you wish to authenticate with is not available  for
529       this privilege level. Please try again with an alternate authentication
530       type or alternate privilege level. It may also be possible  the  avail‐
531       able  authentication  types you can authenticate with are not correctly
532       configured on the remote BMC.
533
534       "cipher suite id unavailable" - The cipher suite id you wish to authen‐
535       ticate  with  is not available on the remote BMC. Please try again with
536       an alternate cipher suite id. It may also  be  possible  the  available
537       cipher suite ids are not correctly configured on the remote BMC.
538
539       "ipmi  2.0  unavailable"  -  IPMI  2.0 was not discovered on the remote
540       machine. Please try to use IPMI 1.5 instead.
541
542       "connection timeout" - Initial IPMI communication failed. A  number  of
543       potential errors are possible, including an invalid hostname specified,
544       an IPMI IP address cannot be resolved,  IPMI  is  not  enabled  on  the
545       remote  server,  the network connection is bad, etc. Please verify con‐
546       figuration and connectivity.
547
548       "session timeout" - The IPMI session has timed out.  Please  reconnect.
549       If this error occurs often, you may wish to increase the retransmission
550       timeout. Some remote BMCs are considerably slower than others.
551
552       "device not found" - The specified device could not  be  found.  Please
553       check configuration or inputs and try again.
554
555       "driver  timeout"  -  Communication with the driver or device has timed
556       out. Please try again.
557
558       "message timeout" - Communication with the driver or device  has  timed
559       out. Please try again.
560
561       "BMC  busy"  - The BMC is currently busy. It may be processing informa‐
562       tion or have too many simultaneous sessions to manage. Please wait  and
563       try again.
564
565       "could  not  find inband device" - An inband device could not be found.
566       Please check configuration or specify specific device or driver on  the
567       command line.
568
569       "driver timeout" - The inband driver has timed out communicating to the
570       local BMC or service processor. The BMC or  service  processor  may  be
571       busy or (worst case) possibly non-functioning.
572

IPMI-SEL TROUBLESHOOTING

574       Some  timestamps  in the SEL may report a date of 1-Jan-1970, the epoch
575       for SEL timestamps. This timestamp is  not  necessarily  incorrect.  It
576       usually  indicates a hardware event that occurred before a timestamp in
577       firmware has been initialized. For example, certain hardware components
578       will have their internal clocks reset during a power cycle.
579
580       However,  if  the  internal  clock  of  the SEL appears to be regularly
581       incorrect, you may need to set the SEL time. This  can  be  done  using
582       bmc-device(8).
583
584       The following are common SEL related messages.
585
586       "sel  config  file  parse  error"  - A parse error was found in the sel
587       event interpretation configuration  file.  Please  see  freeipmi_inter‐
588       pret_sel.conf(5).
589

WORKAROUNDS

591       With  so  many different vendors implementing their own IPMI solutions,
592       different vendors may implement their IPMI protocols  incorrectly.  The
593       following describes a number of workarounds currently available to han‐
594       dle discovered compliance issues. When possible, workarounds have  been
595       implemented so they will be transparent to the user. However, some will
596       require the user to specify a workaround be used via the -W option.
597
598       The hardware listed below may only indicate the hardware that a problem
599       was  discovered  on.  Newer  versions  of hardware may fix the problems
600       indicated below. Similar machines from vendors may or may  not  exhibit
601       the  same  problems.  Different vendors may license their firmware from
602       the same IPMI firmware developer, so it may be worthwhile to try  work‐
603       arounds listed below even if your motherboard is not listed.
604
605       If  you  believe  your hardware has an additional compliance issue that
606       needs a workaround to be implemented, please contact the FreeIPMI main‐
607       tainers on <freeipmi-users@gnu.org> or <freeipmi-devel@gnu.org>.
608
609       assumeio  - This workaround flag will assume inband interfaces communi‐
610       cate with system I/O rather than being memory-mapped.  This  will  work
611       around  systems  that report invalid base addresses. Those hitting this
612       issue may see "device not supported" or "could not find inband  device"
613       errors.  Issue observed on HP ProLiant DL145 G1.
614
615       spinpoll  -  This workaround flag will inform some inband drivers (most
616       notably the KCS driver) to spin while polling rather than  putting  the
617       process to sleep. This may significantly improve the wall clock running
618       time of tools because an operating system scheduler's  granularity  may
619       be  much larger than the time it takes to perform a single IPMI message
620       transaction. However, by spinning, your system may be  performing  less
621       useful work by not contexting out the tool for a more useful task.
622
623       authcap  -  This  workaround  flag  will skip early checks for username
624       capabilities, authentication capabilities, and K_g  support  and  allow
625       IPMI  authentication  to  succeed.  It  works around multiple issues in
626       which the remote system does not properly report username capabilities,
627       authentication  capabilities,  or  K_g status. Those hitting this issue
628       may  see  "username  invalid",  "authentication  type  unavailable  for
629       attempted privilege level", or "k_g invalid" errors.  Issue observed on
630       Asus  P5M2/P5MT-R/RS162-E4/RX4,  Intel  SR1520ML/X38ML,  and  Sun  Fire
631       2200/4150/4450 with ELOM.
632
633       idzero  -  This  workaround  flag  will  allow  empty session IDs to be
634       accepted by the client. It works around IPMI sessions that report empty
635       session  IDs  to  the client. Those hitting this issue may see "session
636       timeout" errors. Issue observed on Tyan S2882 with M3289 BMC.
637
638       unexpectedauth - This workaround flag will  allow  unexpected  non-null
639       authcodes  to  be checked as though they were expected. It works around
640       an issue when packets contain non-null authentication  data  when  they
641       should  be  null due to disabled per-message authentication. Those hit‐
642       ting this issue may see "session timeout"  errors.  Issue  observed  on
643       Dell PowerEdge 2850,SC1425. Confirmed fixed on newer firmware.
644
645       forcepermsg  -  This workaround flag will force per-message authentica‐
646       tion to be used no matter what is advertised by the remote  system.  It
647       works  around an issue when per-message authentication is advertised as
648       disabled on the remote system, but it is actually required for the pro‐
649       tocol.  Those  hitting  this  issue  may  see "session timeout" errors.
650       Issue observed on IBM eServer 325.
651
652       endianseq - This workaround flag will flip the endian  of  the  session
653       sequence  numbers  to  allow the session to continue properly. It works
654       around IPMI 1.5 session sequence numbers that  are  the  wrong  endian.
655       Those  hitting  this  issue  may  see  "session  timeout" errors. Issue
656       observed on  some  Sun  ILOM  1.0/2.0  (depends  on  service  processor
657       endian).
658
659       noauthcodecheck  - This workaround flag will tell FreeIPMI to not check
660       the authentication codes returned from IPMI 1.5 command  responses.  It
661       works  around  systems  to  return  invalid authentication codes due to
662       hashing or implementation errors. Users are cautioned  on  the  use  of
663       this option, as it removes an authentication check verifying the valid‐
664       ity of a packet. However, in most organizations, this is unlikely to be
665       a  security  issue.  Those hitting this issue may see "connection time‐
666       out", "session timeout", or  "password  verification  timeout"  errors.
667       Issue observed on Xyratex FB-H8-SRAY.
668
669       intel20  - This workaround flag will work around several Intel IPMI 2.0
670       authentication issues. The issues covered include padding of usernames,
671       and  password  truncation  if  the  authentication  algorithm  is HMAC-
672       MD5-128. Those hitting this issue may see "username invalid", "password
673       invalid",  or  "k_g  invalid" errors. Issue observed on Intel SE7520AF2
674       with Intel Server Management Module (Professional Edition).
675
676       supermicro20 - This workaround flag will work around several Supermicro
677       IPMI  2.0  authentication  issues  on  motherboards  w/  Peppercon IPMI
678       firmware. The issues covered include handling invalid length  authenti‐
679       cation  codes.  Those  hitting  this  issue  may see "password invalid"
680       errors.  Issue observed on Supermicro H8QME with SIMSO  daughter  card.
681       Confirmed fixed on newerver firmware.
682
683       sun20 - This workaround flag will work work around several Sun IPMI 2.0
684       authentication issues. The issues covered include invalid lengthed hash
685       keys,  improperly  hashed keys, and invalid cipher suite records. Those
686       hitting this issue may see "password invalid" or  "bmc  error"  errors.
687       Issue  observed  on Sun Fire 4100/4200/4500 with ILOM.  This workaround
688       automatically includes the "opensesspriv" workaround.
689
690       opensesspriv - This workaround flag will slightly alter FreeIPMI's IPMI
691       2.0 connection protocol to workaround an invalid hashing algorithm used
692       by the remote system. The privilege level sent during the Open  Session
693       stage of an IPMI 2.0 connection is used for hashing keys instead of the
694       privilege level sent during the RAKP1 connection stage.  Those  hitting
695       this  issue may see "password invalid", "k_g invalid", or "bad rmcpplus
696       status code" errors.  Issue observed on Sun  Fire  4100/4200/4500  with
697       ILOM, Inventec 5441/Dell Xanadu II, Supermicro X8DTH, Supermicro X8DTG,
698       Intel S5500WBV/Penguin Relion 700, Intel S2600JF/Appro 512X, and Quanta
699       QSSC-S4R//Appro  GB812X-CN.  This workaround is automatically triggered
700       with the "sun20" workaround.
701
702       integritycheckvalue - This workaround flag will work around an  invalid
703       integrity  check  value  during  an IPMI 2.0 session establishment when
704       using Cipher Suite ID 0. The integrity check value should be 0  length,
705       however  the  remote motherboard responds with a non-empty field. Those
706       hitting this issue may see "k_g  invalid"  errors.  Issue  observed  on
707       Supermicro  X8DTG,  Supermicro X8DTU, and Intel S5500WBV/Penguin Relion
708       700, and Intel S2600JF/Appro 512X.
709
710       assumemaxsdrrecordcount - This workaround will inform  SDR  reading  to
711       stop reading after a known maximum numer of SDR records have been read.
712       This will work around systems that  have  mis-implemented  SDR  reading
713       functions  that.  Those  hitting  this  issue may see "SDR record count
714       invalid" errors. Issue observed on unspecified Inspur motherboard.
715
716       assumesystemevent - This workaround  option  will  assume  invalid  SEL
717       record  types  are  system event records. Records may be formatted cor‐
718       rectly but report invalid record types. Those hitting  this  issue  may
719       see  "Unknown  SEL Record Type" errors. Output may be unknown, pray for
720       the best. This option is confirmed to work around compliances issues on
721       HP DL 380 G5 motherboards.
722
723       No IPMI 1.5 Support - Some motherboards that support IPMI 2.0 have been
724       found to not support IPMI 1.5. Those hitting this issue may  see  "ipmi
725       2.0  unavailable"  or  "connection  timeout"  errors. This issue can be
726       worked around by using IPMI 2.0  instead  of  IPMI  1.5  by  specifying
727       --driver-address=LAN_2_0. Issue observed on HP Proliant DL 145.
728

OEM INTERPRETATION

730       The  following  motherboards are confirmed to have atleast some support
731       by the --interpret-oem-data option. While highly probable the OEM  data
732       interpretations  would work across other motherboards by the same manu‐
733       facturer, there are no guarantees. Some of the motherboards  below  may
734       be rebranded by vendors/distributors.
735
736       Dell  Poweredge  2900,  Dell  Poweredge 2950, Dell Poweredge R610, Dell
737       Poweredge R710, Fujitsu iRMC S1 and iRMC S2 systems, Intel S5500WB/Pen‐
738       guin  Computing  Relion  700, Intel S2600JF/Appro 512X, Intel S5000PAL,
739       Inventec 5441/Dell Xanadu II, Inventec  5442/Dell  Xanadu  III,  Quanta
740       S99Q/Dell FS12-TY, Quanta QSSC-S4R/Approp GB812X-CN, Sun X4140 Supermi‐
741       cro X7DBR-3, Supermicro X7DB8, Supermicro X8DTN, Supermicro  X7SBI-LN4,
742       Supermicro   X8DTH,  Supermicro  X8DTG,  Supermicro  X8DTU,  Supermicro
743       X8DT3-LN4F, Supermicro X8DTU-6+, Supermicro X8DTL, Supermicro X8DTL-3F,
744       Supermicro  X8SIL-F,  Supermicro  X9SCL,  Supermicro  X9SCM, Supermicro
745       X8DTN+-F, Supermicro X8SIE, Supermicro X9SCA-F-O,  Supermicro  H8DGU-F,
746       Supermicro X9DRi-F, Wistron/Dell Poweredge C6220.
747

EXAMPLES

749       # ipmi-sel
750
751       Show all SEL records on the local machine.
752
753       # ipmi-sel -h ahost -u myusername -p mypassword
754
755       Show all SEL records of a remote machine using IPMI over LAN.
756
757       # ipmi-sel -h mycluster[0-127] -u myusername -p mypassword
758
759       Show all SEL records across a cluster using IPMI over LAN.
760
761       # ipmi-sel --delete=44,82
762
763       Delete SEL records 44 and 82 on the local machine.
764
765       # ipmi-sel --delete-all
766
767       Delete all SEL entries on the local machine.
768
769       # ipmi-sel --delete-range=12-42
770
771       Delete SEL entries in the range 12 to 42 on the local machine.
772

DIAGNOSTICS

774       Upon  successful  execution, exit status is 0. On error, exit status is
775       1.
776
777       If multiple hosts are specified for communication, the exit status is 0
778       if  and  only  if  all targets successfully execute. Otherwise the exit
779       status is 1.
780

KNOWN ISSUES

782       On older operating systems, if you input your username,  password,  and
783       other  potentially  security  relevant information on the command line,
784       this information may be discovered by other users when using tools like
785       the  ps(1) command or looking in the /proc file system. It is generally
786       more secure to input password information with options like the  -P  or
787       -K  options.  Configuring security relevant information in the FreeIPMI
788       configuration file would also be an appropriate way to hide this infor‐
789       mation.
790
791       In  order  to  prevent  brute force attacks, some BMCs will temporarily
792       "lock up" after a number of remote authentication errors. You may  need
793       to  wait awhile in order to this temporary "lock up" to pass before you
794       may authenticate again.
795

REPORTING BUGS

797       Report bugs to <freeipmi-users@gnu.org> or <freeipmi-devel@gnu.org>.
798
800       Copyright © 2003-2012 FreeIPMI Core Team.
801
802       This program is free software; you can redistribute it and/or modify it
803       under  the  terms of the GNU General Public License as published by the
804       Free Software Foundation; either version 3 of the License, or (at  your
805       option) any later version.
806

SEE ALSO

808       freeipmi(7), ipmiseld(8), bmc-config(8), bmc-device(8), freeipmi_inter‐
809       pret_sel.conf(5)
810
811       http://www.gnu.org/software/freeipmi/
812
813
814
815ipmi-sel 1.2.1                    2017-03-22                       IPMI-SEL(8)
Impressum