home | help
FREEIPMI(7)			    Overview			     FREEIPMI(7)

NAME
     FreeIPMI - FreeIPMI overview

Introduction
     FreeIPMI  provides  in-band and out-of-band IPMI software based on the IPMI
     v1.5/2.0 specification.

What is IPMI?
     The IPMI specification defines a set of interfaces for platform  management
     and  is implemented by a number vendors for system management. The features
     of IPMI that most users will be interested in are sensor monitoring, system
     event monitoring, power control, and serial-over-LAN  (SOL).  The	FreeIPMI
     tools  and  libraries listed below should provide users with the ability to
     access and utilize these and many other features of IPMI.

Getting Started with IPMI
     IPMI can be used in-band (i.e. running on a machine locally) or out-of-band
     (i.e. connecting remotely).

     Most FreeIPMI tools can operate in-band by using one of the in-band drivers
     included. These in-band drivers include a userspace KCS interface driver, a
     SSIF driver through the Linux SSIF device (i.e. /dev/i2c-0),  the	OpenIPMI
     Linux  kernel  driver  (i.e.  /dev/ipmi0), the Sun/Solaris BMC driver (i.e.
     /dev/bmc), and the Intel DCMI/MEI driver (i.e. /dev/dcmi). If  your  system
     requires  the  use  of installed drivers, those appropriate modules must be
     installed ahead of time.  However, most systems should  automatically  load
     these drivers when appropriate.

     Under  most  scenarios,  the  FreeIPMI  tools should automatically discover
     which in-band interface to use and the proper settings to	use.  Users  may
     execute  the  tools  on  the command line to begin using them. Some mother-
     boards may require you to determine driver type, addresses, paths, etc.  on
     your  own	and  pass them as command line options to the tools. You may use
     ipmi-locate(8) to help determine this  information.  Other  tools	such  as
     dmidecode(8) may also provide this information.

     To use IPMI out-of-band with tools such as ipmipower(8) or ipmi-sensors(8),
     the  remote machine's BMC must first be configured for out of band communi-
     cation. Typically, this involves setting a username, password, IP	address,
     MAC  address,  and  a few other parameters. This can be done using the tool
     ipmi-config(8).  Additional information on how to configure with  ipmi-con-
     fig(8)  can  be  found in the ipmi-config.conf(5) manpage. Some vendors may
     pre-configure their motherboards with default values so that ipmi-config(8)
     can be used remotely to configure the machine. However, most of  the  time,
     the BMC must be configured in-band before out-of-band access can be allowed
     (for example, the correct IP address and MAC address must be configured).

     In  order	to remotely connect to a machine, you typically must specify the
     host, username, and password for the tool in order to  connect.   Depending
     on configuration settings, a K_g key, privilege level, authentication type,
     cipher suite id, or protocol version may need to be specified.

     Some  vendors  may have not implemented IPMI properly and a workaround must
     be specified into FreeIPMI to ensure the tool can execute properly. For ex-
     ample, a fair number of vendors have populated their FRU records  with  in-
     valid  checksums.	To  properly  ignore these set of checksums a skipchecks
     workaround has been added to ipmi-fru(8).	Please see each of the tool man-
     pages to see a list of available workarounds.

     Additional information, examples, and general trouble-shooting can be found
     in each of the tool manpages.

General Use
     The primary tools that most users of FreeIPMI will  be  interested  in  for
     system management are the following:

     ipmi-sensors

     A tool to read IPMI sensor readings to aid in system monitoring.

     ipmi-sel

     A	tool  to  read	and manage IPMI System Event Log (SEL) records to aid in
     system debugging.

     ipmipower

     A tool for remote power control.

     ipmiconsole

     A tool for Serial-over-Lan (SOL) console access.

     Many other tools and libraries are listed below that cover additional  fea-
     tures and areas of IPMI.

     Additional information, examples, and general trouble-shooting can be found
     in each of the tool manpages.

Configuration
     In  order to avoid typing in a long list of command line options to specify
     IPMI communication requirements every time a command is executed (e.g. dri-
     ver paths, usernames, passwords, etc.), an alternate set of default  values
     can  be set for most FreeIPMI tools in the FreeIPMI configuration file. See
     freeipmi.conf(5) for more information.

HPC Support
     Much of FreeIPMI was written with	HPC  support  in  mind.   Ipmi-config(8)
     comes  with  file	input/output support so that configuration can be copied
     and verified across nodes in a cluster. Most tools (like  ipmipower(8)  and
     ipmi-sensors(8)  )  come  with  hostrange	support so multiple hosts can be
     specified on the command line at the same time and  IPMI  can  be	executed
     against  the  hosts  in  parallel.  See tool manpages for more information.
     Also see the document freeipmi-hostrange.txt for detailed usage and  expla-
     nation.   Ipmi-sensors(8)	and the libipmimonitoring(3) library support the
     ability to interpret sensor readings as well as  just  reporting  them.  By
     mapping sensor readings into NOMINAL, WARNING, or CRITICAL states, it makes
     monitoring sensors easier across large numbers of nodes.

Development
     For  information on the libraries that can be used to program IPMI applica-
     tions with, please see libfreeipmi(3),  libipmiconsole(3),  libipmimonitor-
     ing(3), and libipmidetect(3).  Or see the document freeipmi-libraries.txt.

Project Tools
     The following tools are distributed and supported by FreeIPMI.

     bmc-info

     A	tool to read information about a BMC such as device version numbers, de-
     vice support, and globally unique IDs (guids).

     bmc-watchdog

     A tool/daemon to manage a BMC Watchdog. This tool	is  typically  used  for
     system  timeout  management and automatic system restarts in the event of a
     system crash.

     ipmi-chassis

     A tool to manage/monitor a chassis, such as chassis  power,  identification
     (i.e. LED control), and status.

     ipmi-fru

     A	tool  to  read	field  replaceable unit (FRU) information from a mother-
     board/machine.

     ipmi-sel

     A tool to read and manage IPMI System Event Log (SEL) records. SEL  records
     store system event information and may be useful for debugging problems.

     ipmi-sensors

     A tool to read IPMI sensor readings and sensor data repository (SDR) infor-
     mation.

     ipmipower

     A tool for remote power control.

     ipmiconsole

     A tool for Serial-over-Lan (SOL) console access.

     ipmi-config

     A	tool to configure BMC and IPMI information. In can be used to configured
     usernames, passwords,  networking	information,  security,  Serial-over-LAN
     (SOL), Platform Event Filtering (PEF), boot devices, power restoration pol-
     icy, sensor thresholds, sensor events, and many more configuration options.

     ipmi-raw

     A tool that provides hex input/output of IPMI commands.

     ipmi-locate

     A	tool  that can probe for information about the location of a BMC device,
     such as device addresses.

     ipmi-pet

     A tool to parse and interpret Platform Event Traps (PET).

     ipmi-dcmi

     A tool to perform Data Center Manageability Interface (DCMI) IPMI extension
     commands. Supports extensions for asset management and power usage  manage-
     ment.

     bmc-device

     A tool to perform advanced BMC commands, such as resetting the BMC, config-
     uring ACPI, configuring SDR/SEL time, manually generating events, re-arming
     sensors, and configuring manufacturer settings.

     ipmiping

     An IPMI ping tool for debugging.

     rmcpping

     A RMCP ping tool for debugging.

     ipmi-oem

     An IPMI tool for OEM specific commands.

     ipmidetect/ipmidetectd

     A tool and daemon for IPMI node detection.

     ipmiseld

     A	daemon	that  regularly polls the SEL and stores the events to the local
     syslog.

     Additional information, examples, and general trouble-shooting can be found
     in each of the tool manpages.

Project Libraries
     The following libraries are distributed and supported by FreeIPMI.

     libfreeipmi

     A C library that includes KCS, SSIF, and OpenIPMI Linux,  and  Solaris  BMC
     drivers,  IPMI  1.5  and IPMI 2.0 LAN communication interfaces, IPMI packet
     building utilities, IPMI command utilities, and utilities	for  reading/in-
     terpreting/managing IPMI. This library is for programmers intimately famil-
     iar  with the IPMI protocol and IPMI specification.  Most users may wish to
     use the libraries listed below.

     libipmiconsole

     A library for Serial-over-Lan (SOL) console access. SOL console  access  is
     abstracted  into  a  file descriptor interface, so users may read and write
     console data through a file descriptor.

     libipmimonitoring

     A library for sensor and system event log (SEL) monitoring  that  abstracts
     away  most  IPMI details. Interpretation of those sensors and events is ab-
     stracted into an API with an iterator interface.

     libipmidetect

     A library for IPMI node detection.

REPORTING BUGS
     Report bugs to <freeipmi-users@gnu.org> or <freeipmi-devel@gnu.org>.

COPYRIGHT
     Copyright (C) 2003-2015 FreeIPMI Core Team.

     FreeIPMI is free software; you can redistribute it and/or modify  it  under
     the  terms of the GNU General Public License as published by the Free Soft-
     ware Foundation; either version 3 of the License, or (at your  option)  any
     later version.

SEE ALSO
     libfreeipmi(3),  libipmiconsole(3), libipmidetect(3), libipmimonitoring(3),
     freeipmi.conf(5), bmc-device(8), bmc-info(8),  bmc-watchdog(8),  ipmi-chas-
     sis(8),  ipmi-config(8),  ipmi-fru(8),  ipmi-locate(8),  ipmi-oem(8), ipmi-
     pet(8), ipmi-raw(8), ipmi-sel(8), ipmi-sensors(8), ipmiconsole(8),  ipmide-
     tect(8), ipmiping(8), ipmipower(8), rmcpping(8)

     http://www.gnu.org/software/freeipmi/

FreeIPMI 1.6.18 		   2026-06-02			     FREEIPMI(7)

home | help