≡ Menu

Emergency Server Management With Intelligent Platform Management Interface (IPMI)

Intelligent Platform Management Interface (IPMI) is a hardware level interface specification that defines a common, abstracted, message-based interface to platform monitoring and control functions. Both IPMI and KVM over IP can be used in emergency situations.

You can use IPMI to:
a] Monitor system health
b] Manage the system
c] Access system when network is down
d] Install new os
e] Power on / off system
f] Retrieve hardware logs etc
g] Read sensors data such as CPU temperature, fan speed, and voltage
h] Serial over LAN etc

How do I access server using IPMI?

You need IPMI client. This is supplied by your server manufacturer such as HP, Dell, IBM etc. You can also use ipmitool command to manage Intelligent Platform Management Interface (IPMI) functions of either the local system, via a kernel device driver, or a remote system, using IPMI V1.5 and IPMI v2.0.

How do I login to remote server using ipmitool?

ipmitool command is included in most Linux distributions Use the syntax as follows:
$ ipmitool -U root -I lan -H Server-IP -E shell
$ ipmitool -U root -I lan -H -E shell

If you have a Windows server, you will have access to the Windows Special Administration Console (SAC). If you have a Linux / BSD / UNIX server, you will have access via a console login.

How do I login to remote server using server manufacturers client?

Supermicro provides IPMI command line client called ipmicli.x86. To use this client you must have Supermicro based server or use above generic client.
$ ./ipmicli.x86 ipmi-server-ip
$ ./ipmicli.x86

Sample output:

Welcome to Supermicro IPMI Command Line Interface Rev 2.13 (build 06072101)
Copyright(C) 2002-2006 Supermicro Computer Inc., All rights reserved
User Name: root
Password: *********
connect ok

Type help command to view supported commands:
Sample output:

 open [ip address]      (if ip is not specified in the command line)
 close                  (close the connection)
 powerdown              (power down the system)
 powerup                (power up the system)
 reset                  (reset the system)
 gshutdown              (graceful shutdown the system)
 greboot                (graceful reboot the system)
 gpowercycle            (graceful power cycle the system)
 user username password (set new user)
 password name password (change password)
 console                (Text Remote Console Redirection)
 sensor                 (read the sensors)
 sel                    (read the system event log)
 clearchassis           (clear chassis intrusion)
 log [filename]         (log msg, ipmi.log is default if no filename specified)
 ver                    (display version)
 help                   (display usage)
 quit                   (quit the program)

To view sensor data, use sensor command:
Sample output:

CPU Temp Temperature (C)=5.00      Min=0.00      Max=75.00    ok
Sys Temp Temperature (C)=29.00     Min=0.00      Max=75.00    ok
CPU Vcore Voltage (V)=1.24      Min=1.08      Max=1.61     ok
1.5V Voltage (V)     =1.52      Min=1.44      Max=1.64     ok
3.3V Voltage (V)     =3.34      Min=2.96      Max=3.63     ok
5V Voltage (V)       =4.99      Min=4.48      Max=5.49     ok
12V Voltage (V)      =11.90     Min=10.75     Max=13.24    ok
-12V Voltage (V)     =-12.30    Min=-13.20    Max=-10.80   ok
VDIMM Voltage (V)    =1.80      Min=1.68      Max=1.98     ok
5VSB Voltage (V)     =4.80      Min=4.48      Max=5.49     ok
Vfsb Voltage (V)     =1.20      Min=1.08      Max=1.32     ok
VBAT Voltage (V)     =3.21      Min=2.96      Max=3.63     ok
Fan1 Fan (RPM)       =11100.00  Min=600.00    Max=25500.00 ok
Fan2 Fan (RPM)       =11500.00  Min=600.00    Max=25500.00 ok
Fan3 Fan (RPM)       =10900.00  Min=600.00    Max=25500.00 ok
Fan4 Fan (RPM)       =0.00      Min=600.00    Max=25500.00 fail
Fan5 Fan (RPM)       =11000.00  Min=600.00    Max=25500.00 ok
Fan6 Fan (RPM)       =0.00      Min=600.00    Max=25500.00 fail
Chassis Intrusion = Intrusion Occurs
Power Supply = ok

Start text remote console redirection i.e. open login prompt. This is useful if server locked down because of wrong iptables / pf firewall settings. You can simply login using console and flush out all firewall rules. Type console at ipmi prompt:
Sample output:

You can press Ctrl-B to terminate Text Remote Console Redirection.
Press [Enter] to continue...

Just press [Enter] key and you can login to your Linux box remotely even if access is blocked via IPtables or network connectivity issue.

login: root
May  7 13:31:47 bull login: ROOT LOGIN (root) ON ttyd1
Last login: Tue May  6 16:46:13 from
Copyright (c) 1992-2008 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 7.0-RELEASE-p1 (bull) #1: Fri Apr 25 18:22:31 CDT 2008
Welcome to FreeBSD!
Before seeking technical support, please use the following resources:
o  Security advisories and updated errata information for all releases are
   at http://www.FreeBSD.org/releases/ - always consult the ERRATA section
   for your release first as it's updated frequently.
o  The Handbook and FAQ documents are at http://www.FreeBSD.org/ and,
   along with the mailing lists, can be searched by going to
   http://www.FreeBSD.org/search/.  If the doc distribution has
   been installed, they're also available formatted in /usr/share/doc.
If you still have a question or problem, please take the output of
`uname -a', along with any relevant error messages, and email it
as a question to the questions@FreeBSD.org mailing list.  If you are
unfamiliar with FreeBSD's directory layout, please refer to the hier(7)
manual page.  If you are not familiar with manual pages, type `man man'.
You may also use sysinstall(8) to re-enter the installation and
configuration utility.  Edit /etc/motd to change this login announcement.
You have new mail.

I can now stop my FreeBSD firewall by typing following command:
# /etc/rc.d/ipfw forcestop
If you are using Linux, enter:
# service iptables stop

Next, time I will write about setting up IPMI for Intel / AMD boxes under Linux.

Further readings:

Share this on:

This entry is 2 of 2 in the Infrastructure and Emergency Server Management Tutorial series. Keep reading the rest of the series:
  1. Remote Linux / UNIX / Windows Server Management With KVM over IP
  2. Emergency Server Management With Intelligent Platform Management Interface (IPMI)

{ 3 comments… add one }

  • Thomas Alexander May 12, 2009, 6:15 am

    Im using softlayer api (http://sldn.softlayer.com/wiki/index…_SoftLayer_API) to develop web application in php to view sensor data, temepratures etc, these things are ok with me i have almost found the functions.

    I want another feature to execute shell commands on the server through ipmi for example if i give command to execute power off in command line it should should power of the server, but i dont know how will the ipmi card will recognize the command that i given, should i look for api functions for that , or any other options , can you give some idea and also if ur familiar with softlayer api it will be helpful for me

  • Rahesh May 22, 2009, 5:25 am


    I tried to execute the “console” command but it didn’t work for me..
    Anybody please help me in this..

  • Alex Owen November 2, 2013, 5:16 pm

    If you have multiple servers and want to log your ipmi console sessions then check out

Leave a Comment

   Tagged with: , , , , , , , , , ,