1IGETEVENT(8) System Manager's Manual IGETEVENT(8)
2
3
4
6 ipmiutil_getevt - wait for IPMI events
7
9 ipmiutil getevt [-abosx -t secs -N node -U user -P/-R pswd -EFJTVY]
10
11
13 ipmiutil getevt is a program that uses IPMI commands to wait for IPMI
14 events sent from the BMC firmware. These events are also sent to the
15 IPMI System Event Log (SEL). This utility can use either the
16 /dev/ipmi0 driver from OpenIPMI, the /dev/imb driver from Intel, the
17 /dev/ipmikcs driver from valinux, direct user-space IOs, or the IPMI
18 LAN interface if -N.
19
20 Some server management functions want to trigger custom actions or
21 alerts when IPMI hardware-related events occur, but do not want to
22 track all events, just newly occurring events. This utility waits a
23 specified timeout period for any events, and returns interpreted output
24 for each event. It is designed as a scriptable command-line utility,
25 but if the timeout is infinite (-t 0), then this code could be used for
26 a sample service as well.
27
28 There are several methods to do this which are implemented here.
29
30 The SEL method:
31 This method polls the SEL once a second, keeps track of the last SEL
32 event read, and only new events are processed. This ensures that in a
33 series of rapid events, all events are received in order, however, some
34 transition-to-OK events may not be configured to write to the SEL on
35 certain platforms. This method is used if getevent -s is specified.
36 This is the only method supported over IPMI LAN, i.e. with -N.
37
38 The ReadEventMessageBuffer method:
39 This uses an IPMI Message Buffer in the BMC firmware to read each new
40 event. This receives any event, but if two events occur nearly simul‐
41 taneously, only the most recent of the two will be returned with this
42 method. An example of simultaneous events might be, if a fan
43 stops/fails, both the non-critical and critical fan threshold events
44 would occur at that time. This is the default method for getevent.
45
46 The OpenIPMI custom method:
47 Different IPMI drivers may have varying behavior. For instance, the
48 OpenIPMI driver uses the IPMI GetMessage commands internally and does
49 not allow client programs to use those commands. It has its own custom
50 mechanism, see getevent_mv(). This method is used if the OpenIPMI
51 driver is detected, and no other method is specified.
52
53 The Async Event method:
54 This only gets certain Asynchronous requests from the BMC to an SMS OS
55 service, like a remote OS shutdown, and get_software_id. This method
56 is disabled by default and only turned on if the getevent -a option is
57 specified. This method is only supported via the Intel IMB and
58 OpenIPMI driver interfaces. There is an init script provided with
59 ipmiutil to automate the task of starting this async event daemon.
60 # chkconfig --add ipmiutil_asy (skip this if no chkconfig)
61 # /etc/init.d/ipmiutil_asy start
62 This listens for IPMI LAN requests for soft-shutdown, and logs the out‐
63 put to /var/log/ipmiutil_asy.log
64
65
67 Command line options are described below.
68
69
70 -a Use the Async request method, which receives SMS OS requests
71 from the BMC using the IMB or OpenIPMI driver interface. This
72 services remote SMS bridge agent requests, like remote OS shut‐
73 down and get software_id.
74
75 -b Run in Background as a daemon. If this option is specified,
76 normal output will be redirected to /var/log/ipmiu‐
77 til_getevt.log. The default is to run in foreground.
78
79 -c Show output in a canonical format, with a delimiter of '|'.
80
81 -e N Wait for a specific event sensor type N. The parameter can be
82 in hex (0x23) or decimal (35). The default is 0xFF which means
83 wait for any event.
84
85 -r F Run script file F when an event occurs. The filename can
86 include a full path. The script will be passed the event
87 description as a parameter. A sample evt.sh script is included
88 with the ipmiutil package.
89
90 -o Only run one pass to wait for the first event. Default is to
91 loop for multiple events for the timeout period.
92
93 -s Use the SEL method to get events. This polls the SEL once a
94 second for new events. The last SEL record read is saved in
95 /usr/share/ipmiutil/evt.idx. Otherwise, the default is to use
96 the ReadEventMessageBuffer method to get new events.
97
98 -t N Set the timeout period to N seconds. Default is 120 seconds. A
99 timeout of 0 means an infinite period.
100
101 -x Causes extra debug messages to be displayed.
102
103 -N nodename
104 Nodename or IP address of the remote target system. If a node‐
105 name is specified, IPMI LAN interface is used. Otherwise the
106 local system management interface is used.
107
108 -P/-R rmt_pswd
109 Remote password for the nodename given. The default is a null
110 password.
111
112 -U rmt_user
113 Remote username for the nodename given. The default is a null
114 username.
115
116 -E Use the remote password from Environment variable IPMI_PASSWORD.
117
118 -F drv_t
119 Force the driver type to one of the followng: imb, va, open,
120 gnu, landesk, lan, lan2, lan2i, kcs, smb. Note that lan2i means
121 lan2 with intelplus. The default is to detect any available
122 driver type and use it.
123
124 -J Use the specified LanPlus cipher suite (0 thru 17):
125 0=none/none/none, 1=sha1/none/none, 2=sha1/sha1/none,
126 3=sha1/sha1/cbc128, 4=sha1/sha1/xrc4_128, 5=sha1/sha1/xrc4_40,
127 6=md5/none/none, ... 14=md5/md5/xrc4_40. Default is 3.
128
129 -T Use a specified IPMI LAN Authentication Type: 0=None, 1=MD2,
130 2=MD5, 4=Straight Password, 5=OEM.
131
132 -V Use a specified IPMI LAN privilege level. 1=Callback level,
133 2=User level, 3=Operator level, 4=Administrator level (default),
134 5=OEM level.
135
136 -Y Yes, do prompt the user for the IPMI LAN remote password.
137 Alternatives for the password are -E or -P.
138
139
140
142 ipmiutil(8) ialarms(8) iconfig(8) icmd(8) idiscover(8) ievents(8)
143 ifru(8) ihealth(8) ilan(8) ireset(8) isel(8) isensor(8) iserial(8)
144 isol(8) iwdt(8)
145
146
148 See http://ipmiutil.sourceforge.net/ for the latest version of ipmiutil
149 and any bug fix list.
150
151
153 Copyright (C) 2009 Kontron America, Inc.
154
155 See the file COPYING in the distribution for more details regarding
156 redistribution.
157
158 This utility is distributed in the hope that it will be useful, but
159 WITHOUT ANY WARRANTY.
160
161
163 Andy Cress <arcress at users.sourceforge.net>
164
165
166
167
168 Version 1.2: 17 Feb 2010 IGETEVENT(8)