天天看点

ipmi(debian和centos)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

<code>我的博客已迁移到xdoujiang.com请去那边和我交流</code>

<code>======================Debian===========================</code>

<code>一、Debian安装配置ipmi</code>

<code>1、版本</code>

<code>cat</code> <code>/etc/debian_version</code> 

<code>5.0.2</code>

<code>2、查询下ipmi安装包</code>

<code>apt-cache search ipmi</code>

<code>ipmitool - utility </code><code>for</code> <code>IPMI control with kernel driver or LAN interface</code>

<code>3、安装ipmitool</code>

<code>apt-get -y </code><code>install</code> <code>ipmitool --force-</code><code>yes</code>

<code>4、查看已安装的ipmi包</code>

<code>dpkg -l|</code><code>grep</code> <code>ipmi</code>

<code>ii  ipmitool  1.8.9-2 utility </code><code>for</code> <code>IPMI control with kernel driver or LAN interface</code>

<code>5、将ipmivd服务添加到启动项</code>

<code>update-rc.d ipmievd defaults</code>

<code>6、5.1和5.2二选一查看</code>

<code>5.1)、</code><code>ls</code> <code>/etc/rc2</code><code>.d</code><code>/S20ipmievd</code> 

<code>lrwxrwxrwx 1 root root 17 2014-12-28 11:32 </code><code>/etc/rc2</code><code>.d</code><code>/S20ipmievd</code> <code>-&gt; ..</code><code>/init</code><code>.d</code><code>/ipmievd</code>

<code>5.2)、sysv-rc-conf --list |</code><code>grep</code> <code>ipmi</code>

<code>ipmievd 0:off    1:off    2:on    3:on    4:on    5:on    6:off</code>

<code>7、查看相关信息</code>

<code>ll </code><code>/lib/modules/</code><code>`</code><code>uname</code> <code>-r`</code><code>/kernel/drivers/char/ipmi</code>

<code>total 232</code>

<code>-rw-r--r-- 1 root root 24164 2009-03-27 15:18 ipmi_devintf.ko</code>

<code>-rw-r--r-- 1 root root 59598 2009-03-27 15:18 ipmi_msghandler.ko</code>

<code>-rw-r--r-- 1 root root 21698 2009-03-27 15:18 ipmi_poweroff.ko</code>

<code>-rw-r--r-- 1 root root 75858 2009-03-27 15:18 ipmi_si.ko</code>

<code>-rw-r--r-- 1 root root 39538 2009-03-27 15:18 ipmi_watchdog.ko</code>

<code>8、加载ipmi模块</code>

<code>modprobe ipmi_si &amp;&amp; modprobe ipmi_devintf &amp;&amp; modprobe ipmi_msghandler</code>

<code>9、查看模块</code>

<code>lsmod |</code><code>grep</code> <code>ipmi</code>

<code>ipmi_si                43656  0 </code>

<code>ipmi_devintf           15632  0 </code>

<code>ipmi_msghandler        40308  2 ipmi_si,ipmi_devintf</code>

<code>10、相关模块说明</code>

<code>1)、ipmi_msghandler(为IPMI接口处理传入和传出的信息)</code>

<code>Incoming and outgoing message handler </code><code>for</code> <code>IPMI interfaces.</code>

<code>2)、ipmi_si(一个IPMI的系统消息处理程序接口的驱动程序。该模块支持各种IPMI的系统接口)</code>

<code>An IPMI system interface driver </code><code>for</code> <code>the message handler. This module supports various IPMI system interfaces such as KCS, BT, SMIC, and even SMBus </code><code>in</code> <code>2.6 kernels.</code>

<code>3)、ipmi_devintf(Linux字符的消息处理设备接口)</code>

<code>Linux character device interface </code><code>for</code> <code>the message handler.</code>

<code>11、设置grub参数方便查看Linux启动信息</code>

<code>cat</code> <code>/boot/grub/menu</code><code>.lst|</code><code>egrep</code> <code>-</code><code>v</code>  <code>"^#|^$"</code>

<code>default        2</code>

<code>timeout        5</code>

<code>color cyan</code><code>/blue</code> <code>white</code><code>/blue</code>

<code>title        Debian GNU</code><code>/Linux</code><code>, kernel 2.6.26-2-amd64</code>

<code>root        (hd0,0)</code>

<code>kernel        </code><code>/boot/vmlinuz-2</code><code>.6.26-2-amd64 root=</code><code>/dev/sda1</code> <code>console=tty0 console=ttyS1,115200 ro </code>

<code>initrd        </code><code>/boot/initrd</code><code>.img-2.6.26-2-amd64</code>

<code>title        Debian GNU</code><code>/Linux</code><code>, kernel 2.6.26-2-amd64 (single-user mode)</code>

<code>kernel        </code><code>/boot/vmlinuz-2</code><code>.6.26-2-amd64 root=</code><code>/dev/sda1</code> <code>console=tty0 console=ttyS1,115200 ro single</code>

<code>PS:添加console=tty0 console=ttyS1,115200在这个配置文件里</code>

<code>console=tty0 console=ttyS1,115200参数传递到内核中,实现串口重定向</code>

<code>console=tty0 代表显示器输出  </code>

<code>console=ttyS0 代表定向到串口1 ,如果是ttyS1代表定向到串口2</code>

<code>115200则为串口通信采用的波特率,波特率和bios设置的一样</code>

<code>12、通过ipmitool命令还可以对ipmi进行配置</code>

<code>1)查看ipmi信息</code>

<code>ipmitool lan print 1</code>

<code>2)设置BMC ip,作为远程管理ip</code>

<code>ipmitool lan </code><code>set</code> <code>1 ipaddr 172.16.*.*</code>

<code>3)ip设置成静态</code>

<code>ipmitool lan </code><code>set</code> <code>1 ipsrc static </code>

<code>4)设置掩码</code>

<code>ipmitool lan </code><code>set</code> <code>1 netmask 255.255.255.0</code>

<code>5)设置网关</code>

<code>ipmitool lan </code><code>set</code> <code>1 defgw ipaddr 0.0.0.0</code>

<code>6)连接目标终端</code>

<code>ipmitool -I lanplus -H 172.16.1. -U root -P 123456 sol activate</code>

<code>7)结束目标终端</code>

<code>ipmitool -I lanplus -H 172.16.1. -U root -P 123456 sol deactivate</code>

<code>8)重启目标终端</code>

<code>ipmitool -Ilanplus -H 172.16.1. -U root -P 123456 power reset</code>

<code>9)查看电源情况</code>

<code>ipmitool -I lanplus -H 172.16.1. -U root -P 123456 power status</code>

<code>10)开机</code>

<code>ipmitool -I lanplus -H 172.16.1. -U root -P 123456 power on</code>

<code>11)关机</code>

<code>ipmitool -I lanplus -H 172.16.1. -U root -P 123456 power off</code>

<code>12)修改bios启动项为网络启动</code>

<code>ipmitool -I lanplus -H 172.16.1. -U root -P 123456 chassis bootdev pxe</code>

<code>13)设置channel 1允许访问</code>

<code>ipmitool -I </code><code>open</code> <code>lan </code><code>set</code> <code>1 access on</code>

<code>14)配置ipmi管理用户</code>

<code>ipmitool user </code><code>set</code> <code>name 2 root</code>

<code>ipmitool user </code><code>set</code> <code>password 2 </code><code>"123456"</code>

<code>15)获取传感器中的各种监测值和该值的监测阈值,包括(CPU温度,电压,风扇转速,电源调制模块温度,电源电压等信息) </code>

<code>ipmitool -I </code><code>open</code> <code>sdr list(ipmitool -I </code><code>open</code> <code>sensor)</code>

<code>16)显示温度</code>

<code>ipmitool sdr </code><code>type</code> <code>Temperature</code>

<code>Temp             | 01h | ok  |  3.1 | -56 degrees C</code>

<code>Temp             | 02h | ok  |  3.2 | 50 degrees C</code>

<code>Temp             | 05h | ok  | 10.1 | 42 degrees C</code>

<code>Temp             | 06h | ns  | 10.2 | Disabled</code>

<code>Ambient Temp     | 0Eh | ok  |  7.1 | 20 degrees C</code>

<code>Planar Temp      | 0Fh | ok  |  7.1 | 37 degrees C</code>

<code>CPU Temp IF      | 76h | ns  |  7.1 | Disabled</code>

<code>Temp             | 0Ah | ok  |  8.1 | 31 degrees C</code>

<code>Temp             | 0Bh | ns  |  8.1 | Disabled</code>

<code>Temp             | 0Ch | unc |  8.1 | 45 degrees C</code>

<code>Ambient Temp     | 07h | ok  | 10.1 | 29 degrees C</code>

<code>Ambient Temp     | 08h | ns  | 10.2 | Disabled</code>

<code>当然也可以ipmitool sdr </code><code>type</code><code>直接回车</code>

<code>ipmitool sdr </code><code>type</code>

<code>Sensor Types:</code>

<code>    </code><code>Temperature                 Voltage                  </code>

<code>    </code><code>Current                     Fan                      </code>

<code>    </code><code>Physical Security           Platform Security        </code>

<code>    </code><code>Processor                   Power Supply             </code>

<code>    </code><code>Power Unit                  Cooling Device           </code>

<code>    </code><code>Other                       Memory                   </code>

<code>    </code><code>Drive Slot / Bay            POST Memory Resize       </code>

<code>    </code><code>System Firmwares            Event Logging Disabled   </code>

<code>    </code><code>Watchdog                    System Event             </code>

<code>    </code><code>Critical Interrupt          Button                   </code>

<code>    </code><code>Module / Board              Microcontroller          </code>

<code>    </code><code>Add-</code><code>in</code> <code>Card                 Chassis                  </code>

<code>    </code><code>Chip Set                    Other FRU                </code>

<code>    </code><code>Cable / Interconnect        Terminator               </code>

<code>    </code><code>System Boot Initiated       Boot Error               </code>

<code>    </code><code>OS Boot                     OS Critical Stop         </code>

<code>    </code><code>Slot / Connector            System ACPI Power State  </code>

<code>    </code><code>Watchdog                    Platform Alert           </code>

<code>    </code><code>Entity Presence             Monitor ASIC             </code>

<code>    </code><code>LAN                         Management Subsystem Health</code>

<code>    </code><code>Battery                     Session Audit            </code>

<code>    </code><code>Version Change              FRU State</code>

<code>17)退出ipmi</code>

<code>~.</code>

<code>18)保持</code><code>ssh</code><code>连接的退出ipmi</code>

<code>在使用ipmitool命令进行sol activate连接目标机器时加上-e选项</code>

<code>-e &lt;sol_escape_char&gt;</code>

<code>Use supplied character </code><code>for</code> <code>SOL session escape character.  </code>

<code>The default is to use ~ but this can conflict with </code><code>ssh</code> <code>sessions.</code>

<code>举例(这里的q是自定义 可以随意指定 这样就可以再退出ipmi时保持着</code><code>ssh</code> <code>sessions)</code>

<code>ipmitool -I lanplus -H 172.16.1. -U root -P 123456 -e </code><code>"q"</code> <code>sol activate</code>

<code>[SOL Session operational.  Use q? </code><code>for</code> <code>help]</code>

<code>10.1.1.1 login: q. [terminated ipmitool]</code>

<code>[email protected].:~</code><code># </code>

<code>这里实际按的就是q.</code>

<code>ipmitool命令参数说明</code>

<code>lan用于远程访问,电源管理等。 </code><code>open</code><code>用于本地访问。 lanplus用于sol。</code>

<code>13、inittab配置(因版本不同 配置有相应的变动)</code>

<code>1)配置如下</code>

<code>cat</code> <code>/etc/inittab</code><code>|</code><code>egrep</code> <code>-</code><code>v</code>  <code>"^#|^$"</code>

<code>T1:23:respawn:</code><code>/sbin/getty</code> <code>-L ttyS1 115200 vt100</code>

<code>ipmi必须需要注意 有的时候是ttyS1有的时候ttyS0  根据情况更改ttyS1还是ttyS0</code>

<code>2)使</code><code>/etc/inittab</code><code>配置生效</code>

<code>init q               (Q or q tell init to re-examine the </code><code>/etc/inittab</code> <code>file</code><code>. ) </code>

<code>3)查看</code>

<code>ps</code> <code>aux |</code><code>grep</code> <code>tty</code>

<code>root      1975  0.0  0.0   3788   548 ttyS1    Ss+  14:05   0:00 </code><code>/sbin/getty</code> <code>-L ttyS1 115200 vt100</code>

<code>======================Centos===========================</code>

<code>二、Centos安装配置ipmi</code>

<code>1、发行版本</code>

<code>cat</code> <code>/etc/redhat-release</code> 

<code>CentOS release 6.2 (Final)</code>

<code>yum list |</code><code>grep</code> <code>-i </code><code>"ipmi"</code>

<code>OpenIPMI.x86_64                         2.0.16-14.el6                    @base  </code>

<code>OpenIPMI-libs.x86_64                    2.0.16-14.el6                    @base  </code>

<code>ipmitool.x86_64                         1.8.11-21.el6                    @updates</code>

<code>OpenIPMI-devel.i686                     2.0.16-14.el6                    base   </code>

<code>OpenIPMI-devel.x86_64                   2.0.16-14.el6                    base   </code>

<code>OpenIPMI-libs.i686                      2.0.16-14.el6                    base   </code>

<code>OpenIPMI-perl.x86_64                    2.0.16-14.el6                    base   </code>

<code>OpenIPMI-python.x86_64                  2.0.16-14.el6                    base   </code>

<code>freeipmi.i686                           1.2.1-6.el6_5                    base   </code>

<code>freeipmi.x86_64                         1.2.1-6.el6_5                    base   </code>

<code>freeipmi-bmc-watchdog.x86_64            1.2.1-6.el6_5                    base   </code>

<code>freeipmi-devel.i686                     1.2.1-6.el6_5                    base   </code>

<code>freeipmi-devel.x86_64                   1.2.1-6.el6_5                    base   </code>

<code>freeipmi-ipmidetectd.x86_64             1.2.1-6.el6_5                    base </code>

<code>3、安装ipmitool OpenIPMI</code>

<code>yum -y </code><code>install</code> <code>ipmitool OpenIPMI</code>

<code>rpm -qa |</code><code>grep</code> <code>-i </code><code>"ipmi"</code>

<code>OpenIPMI-2.0.16-14.el6.x86_64</code>

<code>OpenIPMI-libs-2.0.16-14.el6.x86_64</code>

<code>ipmitool-1.8.11-21.el6.x86_64</code>

<code>5、将ipmi服务添加到启动项</code>

<code>chkconfig ipmi on</code>

<code>6、5.1和5.2 2选1方式查看是否开机启动</code>

<code>1)</code><code>ls</code> <code>/etc/rc3</code><code>.d</code><code>/S13ipmi</code> 

<code>lrwxrwxrwx 1 root root 14 May  6 16:26 </code><code>/etc/rc3</code><code>.d</code><code>/S13ipmi</code> <code>-&gt; ..</code><code>/init</code><code>.d</code><code>/ipmi</code>

<code>2)chkconfig --list|</code><code>grep</code> <code>ipmi</code>

<code>ipmi 0:off    1:off    2:on    3:on    4:on    5:on    6:off</code>

<code>7、启动ipmi服务等于是加载ipmi驱动模块</code>

<code>1)</code><code>/etc/init</code><code>.d</code><code>/ipmi</code> <code>start</code>

<code>Starting ipmi drivers:                                     [  OK  ]</code>

<code>2)用服务方式查看模块加载</code>

<code>/etc/init</code><code>.d</code><code>/ipmi</code> <code>status</code>

<code>ipmi_msghandler module </code><code>in</code> <code>kernel.</code>

<code>ipmi_si module </code><code>in</code> <code>kernel.</code>

<code>ipmi_devintf module loaded.</code>

<code>/dev/ipmi0</code> <code>exists.</code>

<code>3)查看模块加载情况</code>

<code>ipmi_devintf            8049  0 </code>

<code>4)查看相关信息</code>

<code>total 84</code>

<code>-rwxr--r--. 1 root root 24024 Nov 22  2013 ipmi_devintf.ko</code>

<code>-rwxr--r--. 1 root root 19592 Nov 22  2013 ipmi_poweroff.ko</code>

<code>-rwxr--r--. 1 root root 40440 Nov 22  2013 ipmi_watchdog.ko</code>

<code>8、或直接用modprobe加载上ipmi驱动模块</code>

<code>modprobe ipmi_devintf</code>

<code>9、相关模块说明</code>

<code>1)、ipmi_devintf</code>

<code>10、设置grub参数方便查看Linux启动信息</code>

<code>cat</code> <code>/boot/grub/grub</code><code>.conf|</code><code>egrep</code> <code>-</code><code>v</code> <code>"^#|^$"</code>

<code>default=0</code>

<code>timeout=5</code>

<code>title CentOS (2.6.32-220.el6.x86_64)</code>

<code>    </code><code>root (hd0,0)</code>

<code>    </code><code>kernel </code><code>/boot/vmlinuz-2</code><code>.6.32-220.el6.x86_64 ro root=</code><code>/dev/sda1</code> <code>selinux=0 console=tty0 console=ttyS1,115200 ro</code>

<code>    </code><code>initrd </code><code>/boot/initramfs-2</code><code>.6.32-220.el6.x86_64.img</code>

<code>11、</code><code>/etc/init/ttyS1</code><code>.conf配置(因版本不同 配置有相应的变动)</code>

<code>cat</code> <code>/etc/init/ttyS1</code><code>.conf </code>

<code>stop on runlevel [S016]</code>

<code>respawn</code>

<code>exec</code> <code>/sbin/agetty</code> <code>/dev/ttyS0</code> <code>115200 vt100</code>

<code>2)使配置生效</code>

<code>start ttyS1</code>

<code>ttyS1 start</code><code>/running</code><code>, process 27985</code>

<code>root      2384  0.0  0.0   4132   604 ttyS0    Ss+  Mar23   0:00 </code><code>/sbin/agetty</code> <code>/dev/ttyS0</code> <code>115200 vt100</code>

<code>4)错误信息解决:</code>

<code>WARNING: Could not </code><code>open</code> <code>'kernel/drivers/char/ipmi/ipmi_msghandler.ko'</code><code>: No such </code><code>file</code> <code>or directory</code>

<code>FATAL: Could not </code><code>open</code> <code>'kernel/drivers/char/ipmi/ipmi_si.ko'</code><code>: No such </code><code>file</code> <code>or directory</code>

<code>如果手动使用modprobe命令出错的话 就先使用depmod解决模块依赖关系 </code>

<code>之后再手动加载模块就行了depmod(可检测模块的相依性,供modprobe在安装模块时使用)</code>

<code>Linux  kernel modules can provide services (called </code><code>"symbols"</code><code>) </code><code>for</code> <code>other modules to use (using EXPORT_SYMBOL </code><code>in</code> <code>the code). </code>

<code>If a second module uses this symbol, that second module clearly depends on the first module.  These dependencies can get quite complex.</code>

<code>三、ipmi的键盘映射</code>

<code>Terminate connection          </code><code>#~+.</code>

<code>Suspend IPMItool              </code><code>#~+^+Z</code>

<code>Send </code><code>break</code>                      <code>#~+B</code>

<code>Print escape sequence help      </code><code>#~+?</code>

<code>F1                            </code><code>#Esc+1</code>

<code>F2                            </code><code>#Esc+2</code>

<code>F3                            </code><code>#Esc+3</code>

<code>F9                            </code><code>#Esc+9</code>

<code>F10                           </code><code>#Esc+0</code>

<code>F11                           </code><code>#Esc+!</code>

<code>F12                           </code><code>#Esc+@</code>

<code>Home                          </code><code>#Esc+h</code>

<code>End                           </code><code>#Esc+k</code>

<code>Insert                        </code><code>#Esc++</code>

<code>Delete                        </code><code>#Esc+-</code>

<code>Page Up                       </code><code>#Esc+?</code>

<code>Page Down                     </code><code>#Esc+/</code>

<code>Ctrl+M                        </code><code>#Esc+Ctrl+M</code>

<code>Ctrl+H                        </code><code>#Esc+Ctrl+H</code>

<code>Ctrl+I                        </code><code>#Esc+Ctrl+I</code>

<code>Ctrl+J                        </code><code>#Esc+Ctrl+J</code>

<code>Alt+x (where x is any letter) </code><code>#Esc+X+x</code>

<code>Ctrl+Alt+Del                  </code><code>#Esc+R+Esc+r+Esc+R</code>

<code>四、参考文章</code>

<code>http:</code><code>//blog</code><code>.chinaunix.net</code><code>/uid-28705339-id-3513250</code><code>.html</code>

<code>http:</code><code>//www</code><code>.ibm.com</code><code>/developerworks/cn/linux/l-ipmi/index</code><code>.html</code>

本文转自 xdoujiang 51CTO博客,原文链接:http://blog.51cto.com/7938217/1643532,如需转载请自行联系原作者

继续阅读