IPMI Management Utilities         SourceForge Logo


ipmiutil - Project Overview    

(formerly known as panicsel)

Manage and interpret IPMI systems with common software

Download Binary Packages
(Linux rpm/deb, Windows, Solaris, FreeBSD, MacOS)
Download IPMI Management Utilities

IPMIUTIL performs a series of common IPMI server management functions to allow administrators to perform management functions without a learning curve. It can gather FRU inventory data, SEL firmware log, sensors, watchdog, power control, health, monitoring, and has an SOL console. It can write sensor thresholds, FRU asset tags, and supports a full IPMI configuration save/restore. Ease-of-use examples with IPMIUTIL:

The IPMI Specification provides a standard way to do both simple and complex server management functions. Everything from remote reset/power-off to sending an SNMP alert from a sensor event even if the OS is down. Being able to perform these tasks in IPMI firmware on the Baseboard Management Controller (BMC) allows OS-independent management. What many administrators and integrators need, however, is a set of utilities, libraries, and/or sample code to perform these functions within their enterprise management subsystem without a learning curve.

The IPMI Management Utilities project provides a series of utilities that perform common IPMI server management functions, such as viewing the firmware log (ipmiutil sel), or configuring the IPMI LAN & PEF features (ipmiutil lan). The utilities are designed for end-users, so that they should not require intimate knowledge of how to build IPMI commands. Each of the utilities detects or reasonably assigns default values so that a working configuration can be easily obtained. More detailed options allow changes to these default values. These utilities can be used separately, or merged with a larger server management subsystem. The source license is BSD, which allows for this code to be re-used in open-source or proprietary software. These utilities support any IPMI 1.0, 1.5 or IPMI 2.0 compliant platform.

The ipmiutil software compiles under Linux (Makefile), Windows (buildwin.cmd), Solaris (Makefile), and Mac OSX (Makefile), and FreeBSD (Makefile).
See descriptions of each utility function below.

There are also corresponding standard HPI utilities that run with two different HPI implementations, including OpenHPI. These were the basis of the current openhpi/clients.

IPMI interfaces are available on the local system, or remotely with the IPMI LAN interface. If you are using the IPMI LAN interface with ipmiutil utilities (-N option), neither the local or remote system requires any IPMI driver. Note that the IPMI LAN session password is sent with either MD5 or MD2 encryption by default. If run locally (as superuser), the ipmiutil utilities will use any one of the supported drivers which it detects.
The supported IPMI drivers in Linux are:
    the MontaVista OpenIPMI driver (/dev/ipmi0 or /dev/ipmi/0),
    the Intel IMB IPMI driver (/dev/imb, via ipmidrvr rpm or 'ipmi_imb'),
    the GNU FreeIPMI library (libfreeipmi.so, disabled by default),
    the LANDesk ldipmi daemon (disabled by default),
    the valinux IPMI Driver (/dev/ipmikcs, disabled by default), or
    direct user-space I/Os to the IPMI KCS or SSIF/SMBus interfaces. (included with ipmiutil-1.7.5 and later)
The utilities are built to detect which IPMI driver is available and use it, or, if no driver is detected, will use direct user-space I/Os to the IPMI BMC for either the KCS or SSIF/SMBus interface.
The supported IPMI drivers in Windows are:
    the Intel IMB IPMI driver (imbdrv.sys) for any Windows Server OS,
    the Microsoft IPMI driver (ipmidrv.sys) for Win2003R2 or Win2008.
The supported IPMI drivers in Solaris are:
    the Sun BMC IPMI driver (/dev/bmc) for Solaris 10, etc.
The supported IPMI drivers in FreeBSD are:
    the FreeBSD 7.x OpenIPMI driver port (/dev/ipmi0),
    direct user-space I/Os to the IPMI KCS or SSIF/SMBus interfaces.

ipmiutil Project History

In October 2001, this project started as part of the Carrier Grade Linux effort. It was then known as 'panicsel' and included a kernel patch to write a Linux panic event to the IPMI firmware log, as well as utilities.
In Dec 2001 (1.0.0), released with Intel Telecom Linux Technology project
In Jul 2002 (1.2.1), this code was first included in MontaVista CGE Linux 2.1. The panicsel functionality was included in OSDL CGL 1.0 and 2.0 requirements. The kernel panic functionality was included in the OpenIPMI driver for 2.6 Linux kernels, and in the Intel IMB Linux driver v28 and greater.
In Jan 2004 (1.4.1), added support for Windows 2000 & 2003
In Aug 2004 (1.4.8), the project was moved from panicsel.sf.net to ipmiutil.sf.net. The new name more clearly reflects the purpose of the project in its current state.
In Nov 2004 (1.5.0), support for IPMI LAN was added using FreeIPMI.
In May 2006 (1.7.0), built-in IPMI LAN support was added.
In Aug 2006 (1.7.5), driverless direct I/O support was added
In Jan 2007 (1.8.0), added ipmiutil meta-command, IPMI LAN 2.0 (lanplus) support
In Feb 2007 (1.9.2), added Linux Serial-Over-Lan console feature
In Oct 2007 (2.0.0), added Windows SOL console and remote soft-shutdown features
In Mar 2008 (2.1.0), the Windows SOL client application was completed.
In Aug 2008 (2.2.0), iconfig function was added to save/restore the BMC configuration parameters
In Sep 2008 (2.2.1), support for the Microsoft IPMI driver was added.
In Nov 2008 (2.3.0), support for the Sun Solaris bmc driver was added.
In Mar 2009 (2.3.5), support for the FreeBSD OS was added.
In Oct 2009 (2.5.0), added ANSI VT100 emulation for Windows SOL console
In Feb 2010 (2.6.0), new subcommand naming scheme (i+subcmd)
In Apr 2010 (2.6.2), ifruset was added to set all FRU Product Area fields
In Jun 2010 (2.6.5), added picmg and firewall functionality
In Aug 2010 (2.6.8), Fedora 14 version of ipmiutil submitted
In Sep 2010 (2.6.9), added fwum/hpm functionality, and OEM Fujitsu sensor/sel
In Sep 2010 (2.7.0), added sunoen, ekanalyzer, fru_picmg, oem_kontron
In Sep 2010 (2.7.1), added ppc64, mips64, sparc arch support
In Nov 2010 (2.7.2), added Debian package support
In Nov 2010 Fedora 14 released with ipmiutil-2.6.8
In Dec 2010 (2.7.3), added SuperMicro OEM functions
In Mar 2011 OpenSuSE 11.4 released with ipmiutil-2.7.2
In May 2011 (2.7.6), added VLAN support and WIN64 fixes
In Sep 2011 (2.7.8), added IPv6, systemd, Dell OEM functions, PICMG 2.3, tsol
In Oct 2011 (2.7.9), support Wind River and ARM cross-compile, Intel S2600
In Dec 2011 (2.8.0), added DCMI 1.1 commands, devel pkg, MSI package
In Feb 2012 (2.8.1), added Quanta S99Q functions, Dell fixes, Intel ME fixes
In Mar 2012 (2.8.2), added Intel Romley OEM support
In Jun 2012 (2.8.4), added support for HP-UX builds and DCMI 1.1 commands
In Oct 2012 (2.8.6), added pre-built Windows DLL for sample development apps
In Feb 2013 (2.8.8), added much more SuperMicro OEM support
In Apr 2013 (2.9.0), added iseltime to sync sys/RTC/SEL times
In May 2013 (2.9.1), added support for MacOSX client
In Dec 2016 (3.0.1), added support for Lenovo OEM sensors
In Feb 2017 (3.0.1), added support for ASUS OEM sensors
In Mar 2017 (3.0.3), added iuser to consolidate user functions
A Linux rpm and a Windows setup package for ipmiutil is included on the platform CD with Intel and Kontron carrier-grade servers.
The ipmiutil (or panicsel) rpm is known to be included in the following Linux distributions: Fedora 15 and later, SuSE SLES9, SLES10, OpenSuSE 11.4, MontaVista CGE 2.1, 3.0, 3.1, 4.0, Gentoo, RedFlag 5.0

Mailing List Discussion

This a community-based effort to add to existing efforts to improve or enhance the IPMI Utilities in Linux.   If you are interested in participating in or contributing to this project, please send mail to the mailing list found   here