IPMI 简介
IPMI (Intelligent Platform Management Interface) 是一套开放的、标准的硬件管理接口规范,允许远程管理服务器。ipmitool 是一个常用的命令行工具,用于与支持 IPMI 的 BMC (Baseboard Management Controller) 进行交互。
1. 系统信息和状态
获取 BMC 版本信息:
1
ipmitool mc info
- 说明: 显示 BMC 的固件版本、IPMI 规范版本、制造商 ID 等基本信息。
- 示例输出:
1
2
3
4
5
6Device ID : 32
Device Revision : 1
Firmware Revision : 2.14
IPMI Version : 2.0
Manufacturer ID : 47488 (Dell)
...
获取底盘状态:
1
ipmitool chassis status
- 说明: 显示底盘的电源状态、功率利用率、重启计数等。
- 示例输出:
1
2
3
4
5System Power State : S0/G0 (working)
Power Interlock : inactive
Power Fault : no fault
Power Control Fault : no fault
...
2. 传感器监控
- 列出所有传感器及其当前读数:
1
ipmitool sensor
- 说明: 这是最常用的命令之一,用于查看所有硬件传感器的实时数据,如温度、风扇速度、电压等。
3. 系统事件日志 (System Event Log - SEL)
列出所有 SEL 事件:
1
ipmitool sel elist
- 说明: 显示 BMC 记录的所有系统事件,包括硬件故障、电源事件、传感器阈值警报等。这是诊断硬件问题的重要工具。
- 示例输出 (部分):
1
21 | 12/26/2025 | 01:06:26 | Event Logging Disabled SEL | Log area reset/cleared | Asserted
2 | 12/26/2025 | 01:10:30 | CPU Temp | Upper Non-critical - assertion | Reading 85 > Threshold 80 degrees C
获取 SEL 信息:
1
ipmitool sel info
- 说明: 显示 SEL 的状态,包括条目数量、可用空间、上次添加/删除时间、是否溢出等。
- 示例输出:
1
2
3
4
5
6
7
8
9SEL Information
Version : 1.5 (v1.5, v2 compliant)
Entries : 2
Free Space : 16352 bytes
Percent Used : 0%
Last Add Time : 12/26/2025 01:10:30
Last Del Time : 12/26/2025 01:06:26
Overflow : false
Supported Cmds : 'Reserve
清除 SEL 日志:
1
ipmitool sel clear
- 说明: 清除 SEL 中的所有事件。请谨慎使用,因为这是不可逆的操作。
- 提示: 清除前最好先备份日志(如果 BMC 支持导出)。
4. 电源控制
获取电源状态:
1
ipmitool chassis power status
- 说明: 检查服务器的当前电源状态(开机、关机、重启等)。
- 示例输出:
1
Chassis Power is on
开机:
1
ipmitool chassis power on
- 说明: 开启服务器电源。
关机:
1
ipmitool chassis power off
- 说明: 强制关闭服务器电源(类似于拔掉电源线,可能导致数据丢失,慎用)。
软关机 (操作系统关机):
1
ipmitool chassis power soft
- 说明: 向操作系统发送关机信号,允许其正常关闭(如果操作系统响应)。
重启:
1
ipmitool chassis power cycle
- 说明: 执行一次完整的电源循环(关机再开机)。
重置:
1
ipmitool chassis power reset
- 说明: 执行一次热重启,不切断电源。
5. 远程控制台 (SOL - Serial Over LAN)
- 启动 SOL 会话:
1
ipmitool -I lanplus -H <BMC_IP_ADDRESS> -U <USERNAME> -P <PASSWORD> sol activate
- 说明: 通过网络建立一个串行控制台连接,允许您访问服务器的文本控制台,即使服务器没有操作系统或操作系统崩溃。
-I lanplus: 指定接口类型为lanplus,通常用于 IPMI 2.0。-H <BMC_IP_ADDRESS>: BMC 的 IP 地址。-U <USERNAME>: 登录 BMC 的用户名。-P <PASSWORD>: 登录 BMC 的密码。
6. 网络配置
查看网络配置:
1
ipmitool lan print 1
- 说明: 查看指定 LAN 通道(通常为
1)的网络配置,包括 IP 地址、MAC 地址、网关等。 - 示例输出 (部分):
1
2
3
4
5
6
7
8
9Set in Progress : Set Complete
Auth Type Support : NONE MD2 MD5 PASSWORD OEM
Auth Type Enable : Callback : MD2 MD5 PASSWORD
User : MD2 MD5 PASSWORD
...
IP Address Source : Static Address
IP Address : 192.168.1.100
Subnet Mask : 255.255.255.0
MAC Address : 00:11:22:33:44:55
- 说明: 查看指定 LAN 通道(通常为
设置静态 IP 地址 (示例):
1
2
3
4ipmitool lan set 1 ipsrc static
ipmitool lan set 1 ipaddr 192.168.1.101
ipmitool lan set 1 netmask 255.255.255.0
ipmitool lan set 1 defgw ipaddr 192.168.1.1- 说明: 配置指定 LAN 通道的静态 IP 地址、子网掩码和默认网关。
7. 用户管理
列出 IPMI 用户:
1
ipmitool user list 1
- 说明: 显示 BMC 上配置的用户列表及其权限。
设置用户密码 (示例):
1
ipmitool user set password <user_id> <new_password>
- 说明: 为指定用户 ID 设置新密码。
8. 其他实用命令
- 获取 DMI (Desktop Management Interface) 信息:
1
2
3
4dmidecode -t memory # 查看内存信息 (如您之前所用)
dmidecode -t system # 查看系统信息
dmidecode -t processor # 查看处理器信息
# 等等...- 说明:
dmidecode不是 IPMI 命令,但它是一个非常有用的工具,用于从 SMBIOS (System Management BIOS) 中提取硬件信息,通常在服务器上用于获取更详细的本地硬件配置。
- 说明:
远程连接 IPMI 的通用格式:
大多数 ipmitool 命令都可以通过网络远程执行,只需在命令前添加连接参数:
1 | ipmitool -I lanplus -H <BMC_IP_ADDRESS> -U <USERNAME> -P <PASSWORD> <command> |
-I lanplus: 指定接口类型为lanplus(推荐用于 IPMI v2.0 及更高版本)。-H <BMC_IP_ADDRESS>: BMC 的 IP 地址。-U <USERNAME>: 登录 BMC 的用户名。-P <PASSWORD>: 登录 BMC 的密码。