Ipmitool工具安装以及常见使用方法

Ipmitool工具安装以及常见使用方法Ipmitool 工具安装以及常见使用方法 IntelligentP 参考手册 http ipmitool sourceforge net manpage html 最近一直在公司实习 目前用到过一个陌生的云物理机管理工具 也是 OpenStack 的插件 IronicServer 组件派生的管理工具 功能非常强大 操作起来也很方便 下面来逐

一、 IPMITOOL安装方式

1 、 方式一:
IPMI( Intelligent Platform Management Interface)的第一种安装方式是编译安装。 这个是源地址:https://sourceforge.net/projects/ipmitool/ 

在这里插入图片描述

下载完成后,进行安装操作。 1、 tar -xvf ipmitool-1.8.18.tar.bz2 2、 cd ipmitool-1.8.18 3./configure 4、 make 5、make install 6、编译安装之后,要开启三个相关模块, modprobe ipmi_si(如果是虚拟机的话,该模块可能无法启动) modprobe ipmi_devintf modprobe ipmi_msghandler 
可以起一下该服务,并查看下模块有没有启动: [root@openstack ~]# lsmod | grep ipmi ipmi_si 57587 0 ipmi_devintf 17603 0 ipmi_msghandler 46607 2 ipmi_devintf,ipmi_si [root@openstack ~]#  如果缺少模块,那么ipmitool命令就会出现异常。 
2、方法二:
方法二的安装就相对比较容易: 直接使用yum来进行安装操作。 

在这里插入图片描述

[root@openstack ~]# yum install -y ipmitool.x86_64 Loaded plugins: fastestmirror …… …… …… Installed: ipmitool.x86_64 0:1.8.18-7.el7 Dependency Installed: OpenIPMI.x86_64 0:2.0.27-1.el7 OpenIPMI-libs.x86_64 0:2.0.27-1.el7 OpenIPMI-modalias.x86_64 0:2.0.27-1.el7 net-snmp-libs.x86_64 1:5.7.2-43.el7_7.3 Complete! 可以启动下IPMI服务 [root@openstack ~]# systemctl status ipmi ● ipmi.service - IPMI Driver Loaded: loaded (/usr/lib/systemd/system/ipmi.service; enabled; vendor preset: enabled) Active: active (exited) since Fri 2020-02-28 14:30:40 CST; 7s ago Process: 7748 ExecStart=/usr/libexec/openipmi-helper start (code=exited, status=0/SUCCESS) Main PID: 7748 (code=exited, status=0/SUCCESS) Feb 28 14:30:40 openstack systemd[1]: Starting IPMI Driver... Feb 28 14:30:40 openstack systemd[1]: Started IPMI Driver. [root@openstack ~]# lsmod | grep ipmi ipmi_si 57587 0 ipmi_devintf 17603 0 ipmi_msghandler 46608 1 ipmi_devintf,ipmi_si [root@openstack ~]#  这里再说明一下,如果环境是虚机的话,ipmi_si模块会无法启动,手动加载的话,会提示如下报错。 [root@openstacktest ~]# modprobe ipmi_si modprobe: ERROR: could not insert 'ipmi_si': No such device [root@openstacktest ~]#  

二、ipmitool使用方法

1、首先看下丰富的帮助提示
[root@openstack ~]# ipmitool help Commands: raw Send a RAW IPMI request and print response i2c Send an I2C Master Write-Read command and print response spd Print SPD info from remote I2C device lan Configure LAN Channels chassis Get chassis status and set power state power Shortcut to chassis power commands event Send pre-defined events to MC mc Management Controller status and global enables sdr Print Sensor Data Repository entries and readings sensor Print detailed sensor information fru Print built-in FRU and scan SDR for FRU locators gendev Read/Write Device associated with Generic Device locators sdr sel Print System Event Log (SEL) pef Configure Platform Event Filtering (PEF) sol Configure and connect IPMIv2.0 Serial-over-LAN tsol Configure and connect with Tyan IPMIv1.5 Serial-over-LAN isol Configure IPMIv1.5 Serial-over-LAN user Configure Management Controller users channel Configure Management Controller channels session Print session information dcmi Data Center Management Interface nm Node Manager Interface sunoem OEM Commands for Sun servers kontronoem OEM Commands for Kontron devices picmg Run a PICMG/ATCA extended cmd fwum Update IPMC using Kontron OEM Firmware Update Manager firewall Configure Firmware Firewall delloem OEM Commands for Dell systems shell Launch interactive IPMI shell exec Run list of commands from file set Set runtime variable for shell and exec hpm Update HPM components using PICMG HPM.1 file ekanalyzer run FRU-Ekeying analyzer using FRU files ime Update Intel Manageability Engine Firmware vita Run a VITA 46.11 extended cmd lan6 Configure IPv6 LAN Channels a) raw:发送一个原始的IPMI请求,并且打印回复信息。 b) Lan:配置网络(lan)信道(channel) c) chassis :查看底盘的状态和设置电源 d) event:向BMC发送一个已经定义的事件(event),可用于测试配置的SNMP是否成功 e) mc: 查看MC(Management Contollor)状态和各种允许的项 f) sdr:打印传感器仓库中的所有监控项和从传感器读取到的值。 g) Sensor:打印详细的传感器信息。 h) Fru:打印内建的Field Replaceable Unit (FRU)信息 i) Sel: 打印 System Event Log (SEL) j) Pef: 设置 Platform Event Filtering (PEF),事件过滤平台用于在监控系统发现有event时候,用PEF中的策略进行事件过滤,然后看是否需要报警。 k) Sol/isol:用于配置通过串口的Lan进行监控 l) User:设置BMC中用户的信息 。 m) Channel:设置Management Controller信道。 [root@openstack ~]#  
2、常见的操作命令
  1. 远程电源控制类 远程电源控制类
[root@openstack ~]# Ipmitool -I lanplus –H 10.32.228.111 –U username –P Password chassis power off [root@openstack ~]# Ipmitool -I lanplus –H 10.32.228.111 –U username –P Password chassis power on [root@openstack ~]# Ipmitool -I lanplus –H 10.32.228.111 –U username –P Password chassis power reset [root@openstack ~]# Ipmitool -I lanplus –H 10.32.228.111 –U username –P Password chassis power cycle 
  1. 读取系统状态类
[root@openstack ~]# Ipmitool sensor list  显示系统所有传感器列表 [root@openstack ~]# Ipmitool fru list   显示系统所有现场可替代器件的列表 [root@openstack ~]# Ipmitool sdr list   显示系统所有SDRRepository设备列表  [root@openstack ~]# Ipmitool pef list   显示系统平台时间过滤的列表 
  1. 系统日志类
[root@openstack ~]# Ipmitool sel elist   显示所有系统事件日志 [root@openstack ~]# Ipmitool sel clear   删除所有系统时间日志 [root@openstack ~]# Ipmitool sel delete ID 删除第ID条SEL [root@openstack ~]# Ipmitool sel time get  显示当前BMC的时间 [root@openstack ~]# Ipmitool sel time set XXX 设置当前BMC的时间 
  1. 启动设置类
[root@openstack ~]# Ipmitool chassis bootdev bios 重启后停在BIOS 菜单 [root@openstack ~]# Ipmitool chassis bootdev pxe 重启后从PXE启动 
  1. 系统相关的命令
[root@openstack ~]# Ipmitool mc info 显示BMC版本信息 [root@openstack ~]# Ipmitool bmc reset cold BMC 热启动 [root@openstack ~]# Ipmitool bmc reset warmBMC冷启动 
  1. 网络接口相关命令
[root@openstack ~]# Ipmitool lan print 1 显示channel1的网络配置信息 [root@openstack ~]# Ipmitool lan set 1ipaddr 10.32.2.2 设置channel1的IP地址 [root@openstack ~]# Ipmitool lan set 1 netmask 255.255.0.0 设置channel1的netmask [root@openstack ~]# Ipmitool lan set 4 defgw ipaddr255.255.0.254 设置channel4的网关 [root@openstack ~]# Ipmitool lan set 2 defgw macaddr  设置channel2的网关mac address [root@openstack ~]# Ipmitool lan set 2 ipsrc dhcp 设置channel2的ip 源在DHCP [root@openstack ~]# Ipmitool lan set 3 ipsrc static 设置channel2的ip是静态获得的 
  1. 通道相关命令
[root@openstack ~]# Ipmitool channel info 显示系统默认channel [root@openstack ~]# Ipmitool channel authcap channel-number privilege  修改通道的优先级别 [root@openstack ~]# Ipmitool channel getaccess channel-number user-id 读取用户在通道上的权限 [root@openstack ~]# Ipmitool channel setacccess channel-number user-id callin=on ipmi=on link=onprivilege=5 // 设置用户在通道上的权限 
  1. 用户管理相关命令
[root@openstack ~]# Ipmitool user list chan-id 显示某通道上的所有用户 [root@openstack ~]# Ipmitool set password [] 修改某用户的密码 [root@openstack ~]# Ipmitool disable   禁止掉某用户 [root@openstack ~]# ipmitool enable   使能某用户 [root@openstack ~]# ipmitool priv [] 修改某用户在某通道上的权限 [root@openstack ~]# ipmitool test <16|20>[ 
   
      测试用户 
    
  1. 系统管理常用的
1. 查看设备信息 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin chassis status 2. 查看用户 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin user list 3. 增加用户 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin user set name 3 test1 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin user list /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin user set password 3 test1 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin user priv 3 20 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin user list /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U test1 -P test1 user list 4. disable/enable用户 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin user disable 3 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U test1 -P test1 user list /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin user enable 3 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U test1 -P test1 user list 5. 查看服务器当前开电状态 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin power status 6. 服务器的开机,关机,reset和power cycle /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin power on /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin power off /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin power cycle /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin power reset 7. 查看服务器的80 Port当前状态 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin raw 0x30 0xB2 8. 查看服务器的传感器状态 所有传感器状态详细信息: /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sensor 传感器SDR summary信息: /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sdr info 传感器SDR 列表信息: /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sdr list FRU传感器SDR 列表信息: /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sdr list fru 下载RAW SDR信息到文件: /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sdr dump sdr.raw 9. 查看服务器的FRU信息 /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin fru /usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin fru print 

三、 举例说明(关于用户的操作)

 - H为需要操作的BMC ip,-I lanplus为使用rmcp+协议发送命令,-U 为操作命令的用户名,-P为用户密码。 
1、查询所有用户
[root@openstack ~]# ipmitool -H 10.10.10.10 -I lanplus -U root -P admin user list 
2、新增用户用户名和用户id不能和已有用户名用户id重复,如用户名test3,用户id为3
[root@openstack ~]# ipmitool -H 10.10.10.10 -I lanplus -U root -P admin user set name 3 test3 
3、密码需要满足复杂度要求,如设置用户id为3的密码
[root@openstack ~]# ipmitool -H 10.10.10.10 -I lanplus -U root -P admin user set password 3 test3 
4、权限取值范围2:USER,3:OPERATOR,4:ADMINISTRATOR,用户创建后的默认权限为NO ACCESS,没有访问权限。如设置用户id为3的权限,设置完成即可使用用户名密码访问BMC
[root@openstack ~]# ipmitool -H 10.10.10.10 -I lanplus -U root -P admin user priv 3 4 
5 、 使能id为3的用户
[root@openstack ~]# ipmitool -H 10.10.10.10 -I lanplus -U root -P admin user enabled 3 
四、举例说明(重启BMC系统和密码及参数重置)
1、BMC 服务器管理口死机远程http无法登陆
2、BMC 防火墙策略配置全部拒绝导致无法访问
登录该服务器系统后执行: [root@openstack ~]# ipmitool raw 0x32 0x66 #恢复默认值 [root@openstack ~]# ipmitool lan set 1 ipsrc static (设置ipmi ip非DHCP) [root@openstack ~]# ipmitool lan set 1 ipaddr 192.168.0.1(设置IPMI 地址)  [root@openstack ~]# ipmitool lan set 1 netmask 255.255.255.0 (设置ipmi 子网掩码) [root@openstack ~]# ipmitool lan set 1 defgw ipaddr 192.168.0.1 (设置ipmi 网关) [root@openstack ~]# ipmitool user set password 1 abcdefg (修改ipmi 用户名1的密码)#root 修改后默认密码abcdefg [root@openstack ~]# ipmitool user set password 2 abcdefg (修改ipmi 用户名2的密码)#admin 修改后默认密码abcdefg 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/218012.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 上午8:15
下一篇 2026年3月18日 上午8:15


相关推荐

  • [Unity3D]Unity3D游戏开发之鼠标滚轮实现放大缩小

    [Unity3D]Unity3D游戏开发之鼠标滚轮实现放大缩小

    2022年1月30日
    56
  • Linux安装Android Sdk「建议收藏」

    Linux安装Android Sdk「建议收藏」在使用Jenkins+Gitlab集成自动化打包时,遇到Linux缺少AndroidSdk环境的问题,单独记录一下安装过程。sdk安装方式常规思路,下载sdk,安装之后修改环境。但是发现,网络上已经没有了sdk的下载资源,有的也只是很老的版本。查看Android开发文档——sdkmanager的使用指南,发现可以使用sdkmanager这个命令行工具进行下载。下载sdkmanager工具包官网下载页最底部-命令行工具下载,找到Linux平台的工具包使用wget下载到服务器wget-P/h

    2022年7月21日
    26
  • mybtis jdbctype

    mybtis jdbctype思路:1.在mapper.xml中使用#{参数,jdbctype=VARCHAR}2.在javadao层中使用传入map的方式3.mybatis中就可以应用字段了mybatisjdbctype写法daomapper.xml例子:&lt;?xmlversion="1.0"encoding="UTF-8"?&gt;&lt;!DOCTYPEmapper…

    2022年10月20日
    5
  • Pycharm设置解释器「建议收藏」

    Pycharm设置解释器「建议收藏」背景:最近需要改文章,增加实验,要把之前的实验跑起来。其间,遇到一个很诡异的问题,在一个工程里跑得很正常的程序,到了另外一个工程里,相似的文件,只是修改了一点参数而已,就会报错,如ModuleNotFoundError:Nomodulenamed’tensorflow.contrib.slim’,当时就怀疑是不是解释器设置问题。由于当时夜黑风高,困意来袭,解释器位置设置竟然也找不到,作罢。第二天直接复制粘贴找问题原因无果。问题:果然是解释器设置问题。默认的解释器是base的python环境,由.

    2022年8月25日
    8
  • 有计算机二级python证书可以做什么工作_python有证书考吗

    有计算机二级python证书可以做什么工作_python有证书考吗python以什么方式处理文件?很多同学想考python的证书,想知道Python有哪些含金量高的证书?一、全国计算机等级考试Python程序语言设计;二、PythonInstitute资格认证初级PCEP;三、PythonInstitute资格认证初级PCEP中级PCAP;四、PythonInstitute资格认证初级PCEP高级PCPP;五、工信部Python技术应用工程。毕业前最好都拿到手的证书,用处大!专业证书对于就读不同大学专业的同学而言,需要考取跟自己专业挂钩的专业证书,不相关的.

    2025年9月26日
    7
  • delphi7中idHTTP的使用

    delphi7中idHTTP的使用1.直接idhttp:Tidhttp声明一个var变量是不能使用的。必须有控件2.使用IdHTTP调post接口,xml格式IdHTTP1.HandleRedirects:=True;//允许头转向IdHTTP1.ReadTimeout:=30000;//请求超时设置IdHTTP1.HTTPOptions:=IdHTTP1.HTT…

    2022年7月15日
    60

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号