BMC(1):ipmitool常用命令記錄

IPMITool和其中常用的命令

IPMI(Intelligent Platform Management Interface)即智能平臺管理接口是使硬件管理具備“智能化”的新一代通用接口標準。用戶可以利用 IPMI 監視服務器的物理特徵,如溫度、電壓、電扇工作狀態、電源供應以及機箱入侵等。Ipmi 最大的優勢在於它是獨立於 CPU BIOS 和 OS 的,所以用戶無論在開機還是關機的狀態下,只要接通電源就可以實現對服務器的監控。Ipmi 是一種規範的標準,其中最重要的物理部件就是BMC(Baseboard Management Controller 如圖1),一種嵌入式管理微控制器,它相當於整個平臺管理的“大腦”,通過它 ipmi 可以監控各個傳感器的數據並記錄各種事件的日誌。

ipmitool 是一種可用在 Linux/Unix 系統下的基於命令行方式的 ipmi 平臺管理工具。它支持 ipmi 1.5 和ipmi 2.0 規範(最新的規範爲 ipmi 2.0)。利用它可以實現獲取傳感器的信息、顯示系統日誌內容、網絡遠程開關機等功能。其主要功能包括讀取和顯示傳感器數據(SDR),顯示System Evernt Log(SEL)的內容,顯示打印Field Replaceable Unit(FRU)信息,讀取和設置BMC模塊的LAN配置,遠程控制服務器主機的電源。

ipmitool支持IPMI-over-LAN和系統Kernel中的設備驅動(openIPMI in Linux, BMC in Solaris, openIPMI in FreeBSD) 接口。即可以本地運行,也可以在遠程機器上運行,實現對服務器主機的管理和控制。

最新版本的ipmitool可以去http://ipmitool.sourceforge.net/下載。目前的最新版本爲1.8.11(2012-04-29)。ipmitool的man手冊可以去http://ipmitool.sourceforge.net/manpage.html訪問web版本。

常用的管理命令包括:

================
系統管理命令
================
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

================
BMC自身配置命令
================
1. 查看BMC的信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin mc info

2. 查看BMC的LAN信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin lan print 1
(一般channel 1爲LAN)

3. 修改BMC的MAC信息(只能在本地以root用戶做,因爲在此之前沒IP)
enable BMC MAC SET mode:
/usr/bin/ipmitool raw 0x0c 0x01 0x01 0xc2 0x00
Write MAC to BMC (BMC MAC=d0:27:88:a4:e4:37):
/usr/bin/ipmitool raw 0x0c 0x01 0x01 0x05 0xD0 0x27 0x88 0xA4 0xE4 0x37

4. 修改BMC的網絡爲自動從DHCP獲得IP地址,而不是靜態的(只能在本地以root用戶做,因爲在此之前沒IP)
確定channel 1爲LAN:
/usr/bin/ipmitool lan print 1
設定channel 1從DHCP獲得IP:
/usr/bin/ipmitool lan set 1 ipsrc dhcp

5. 重啓BMC自己(不是服務器)(小心BMC掛掉hang)
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin mc reset

================
SOL和通過IPMItool訪問系統終端 (Serial-Over-LAN)
================
1. 查看當前的SOL summary信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sol info 1

2. 修改SOL配置信息
查看所有可能的配置
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sol set
修改波特率配置
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sol set non-volatile-bit-rate 38.4 1
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sol set volatile-bit-rate 38.4 1

3. 開啓遠程終端
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sol activate
(可以使用~.退出,~?顯示幫助信息)

================
Watchdog配置命令
================
1. 查看當前的watchdog信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin mc watchdog get

2. 設置,開啓一個watchdog
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin mc watchdog get
設置一個OS WDT的watchdog, 超時時間爲60秒(自己看IPMI 2.0手冊,351頁的27.6 Set Watchdog Timer Command)(60x10=600 = 0x258)
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin raw 0x06 0x24 0x04 0x01 0x00 0x10 0x58 0x2
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin mc watchdog get
開啓該watchdog
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin mc watchdog reset
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin mc watchdog get

禁止該watchdog的動作(Hard reset-> no action)

/usr/bin/ipmitool -I lanplus -H 10.32.228.187 -U sysadmin -P admin raw 0x06 0x24 0x04 0x00 0x00 0x10 0x58 0xFF

上面的命令把時間改爲非常大,提示第1個0x00表示沒有動作,0x04表示是SMS/OS的watchdog, 0xFF58是超時的時間,單位爲100ms。

================
SEL命令
================
1. 查看當前的SEL summary信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sel
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sel info

2. 列示所有SEL記錄詳細信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sel list
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sel list 10

3. 刪除指定的SEL記錄
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sel delete 1

4. 清除所有的SEL記錄
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sel clear

5. 獲取和修改SEL當前時鐘
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sel time get
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin sel time set "04/24/2012 18:44:44"

6. 以RAW方式查看制定的SEL數據

/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin raw 0xa 0x43 0 0 111 0 0 0xFF

0xa 0x43爲Get SEL Entry Command; 0 0 保留值,111 0 表示取第112條記錄(從0開始),0 爲offset,保留;0xFF爲讀取的字節數,FF表示取整條記錄

================
PEF命令
================
1. 查看BMC當前的PEF 支持信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin pef
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin pef info

2. 查看BMC當前的PEF 配置表信息(配置表也是可以修改的)
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin pef list

3. 查看BMC當前的PEF 狀態信息(BMC處理的最後一條SEL記錄)
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin pef status

4. 修改BMC當前的PEF 配置表
查看當前的PEF 配置表
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin pef list
假定我們要刪除下面這條配置項
1 | active, pre-configured | 0x11 | Voltage | Any | None | OEM | Any | Power-off,OEM-defined
獲取該配置項的配置信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin raw 0x04 0x13 0x07 0x01 0x00
11 01 40
修改該配置項的配置信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin raw 0x04 0x12 0x07 0x01 0x40
檢查修改後的PEF配置表
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin pef list

 

================
特殊命令
================
1. 查看ipmi服務器端當前活動的session會話
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin session info active

2. 執行一個保存在文件中的所有ipmitool命令
/usr/bin/ipmitool -I lanplus -H 10.88.1.181 -U sysadmin -P admin exec myipmi.cmd

=====================================總結======================================================

#service ipmi start
#ipmitool -I open shell
#### 可以直接進入本地BMC shell
#ipmitool -I lan -H -U shell
#### 輸入password,進入IPMI交互模式,當然這裏也可以把shell直接換成bmc命令 , 另外ipmitool支持端口,所以是否可以先做DNAT,然後遠程直接管理內網機器.
#### ipmitool提供的功能要比windows下ipmish提供的功能多得多,用法相對複雜一些
參考下面轉摘的文章來詳細瞭解命令
引用
Ipmitool本地監控使用命令:ipmitool –I open command,其中-I open表示使用OpenIPMI接口,command有以下項:
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信道。
Ipmitool –I open sensor list命令可以獲取傳感器中的各種監測值和該值的監測閾值,包括(CPU溫度,電壓,風扇轉速,電源調製模塊溫度,電源電壓等信息)
Ipmitool –I open sensor get “CPU0Temp”可以獲取ID爲CPU0Temp監測值,CPU0Temp是sensor的ID,服務器不同,ID表示也不同。
Ipmitool –I open sensor thresh 設置ID值等於id的監測項的各種限制值。
Ipmitool –I open chassis status查看底盤狀態,其中包括了底盤電源信息,底盤工作狀態等
Ipmitool –I open chassis restart_cause查看上次系統重啓的原因
Ipmitool –I open chassis policy list 查看支持的底盤電源相關策略。
Ipmitool –I open chassis power on啓動底盤,用此命令可以遠程開機
Ipmitool –I open chassis power off關閉底盤,用此命令可以遠程開機
Ipmitool –I open chassis power reset實現硬重啓,用此命令可以遠程開機
Ipmi還可以設置系統啓動boot的設備,具體見ipmitool幫助文檔。
Ipmitool –I open mc reset 使BMC重新硬啓動
Ipmitool –I open mc info 查看BMC硬件信息
Ipmitool –I open mc getenables 列出BMC所有允許的選項
Ipmitool –I open mc setenables =[on|off],設置bmc相應的允許/禁止選項。
Ipmitool-I open event 1 發送一個溫度過高的消息到System Event Log中,可以發送的Event有:
1 Temperature: Upper Critical: Going High
2 Voltage Threshold: Lower Critical: Going Low
3 Memory: Correctable ECC Error Detected
Ipmitool-I open event命令可以用測試配置的IPMI中的snmp功能是否成功。
Ipmitool -I open lan print 1 打印現咱channel 1的信息 。
Ipmitool -I open lan set 1 ipaddr 10.10.113.95設置channel 1 的地址爲10.10.113.95
Ipmitool -I open lan set 1 snmp public設置channel 1 上snmp的community爲public。
Ipmitool -I open lan set 1 access on設置channel 1允許訪問。
Ipmitool -I open pef info打印Platform Event Filtering (pef)信息
Ipmitool -I open pef status查看Platform Event Filtering (pef)狀態
Ipmitool -I open pef policy查看Platform Event Filtering (pef)策略設置
Ipmitool -I open sdr list fru 讀取fru信息並顯示。


轉至:https://blog.csdn.net/zygblock/article/details/53367664
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章