ipmitool 经常使用命令 IPMI

[root@localhost ~]# yum install -y ipmitool #安装这个包python


电源相关:ios


#开启电源shell

ipmitool -I lanplus -H 10.41.1.41 -U root -P root power on服务器


#关闭电源
session

ipmitool -I lanplus -H 10.41.1.41 -U root -P root power offide


#重启电源
.net

ipmitool -I lanplus -H 10.41.1.41 -U root -P root power resetblog


#查看电源状态ip

ipmitool -I lanplus -H 10.41.1.41 -U root -P root power statuscmd


启动项相关:


#设置为BIOS启动

ipmitool -I lanplus -H 10.41.1.41 -U root -P root chassis bootparam set bootflag force_bios


#设置为pxe启动


ipmitool -I lanplus -H 10.41.1.41 -U root -P root chassis bootparam set bootflag force_pxe


#设置为光盘启动

ipmitool -I lanplus -H 10.41.1.41 -U root -P root chassis bootparam set bootflag force_cdrom


#设置为硬盘启动

ipmitool -I lanplus -H 10.41.1.41 -U root -P root chassis bootparam set bootflag force_disk


#重启BMC

ipmitool -I lanplus -H 10.41.1.41 -U root -P root mc reset cold


#修改BMC密码

ipmitool -I lanplus -H 10.41.1.41 -U root -P root user set password 2 new_password #new_password 这个是新密码


#远程文本重定向 重启服务器就能看到画面

ipmitool -I lanplus-H 10.41.1.41 -U root -P root sol activate


#当有这个错误时 Info: SOL payload already active on another session

ipmitool -I lanplus-H 10.41.1.41 -U root -P root sol deactivate #这命令是踢出其余的人会话


#获取mac地址 有些机型不许 我这个是dell的服务器 华为服务器也可使用

"""ipmitool -I lanplus -H 10.41.1.41 -U root -P root lan print |grep "MAC Address"|awk '{print $NF}'"""


python 脚本

            from subprocess import Popen, PIPE
            cmd = """ipmitool -I lanplus -H 10.41.1.41 -U root -P root lan print |grep "MAC Address"|awk '{print $NF}'"""
            text =  Popen(cmd, stdout=PIPE, shell=True).stdout.read()
            prefix_mac = text[:-3]
            last_two  = text[-2:]
            plus_one  = int(last_two, 16) - 2
            plus_one2 = int(last_two, 16) - 1
            new_last_two  = hex(plus_one)[2:]
            new_last_two2 = hex(plus_one2)[2:]
            if len(new_last_two) == 1:
                    new_last_two = '0' + new_last_two
            if len(new_last_two2) == 1:
                    new_last_two2 = '0' + new_last_two2
            new_mac = prefix_mac.replace(':','') + new_last_two
            new_mac2 = prefix_mac.replace(':','') + new_last_two2
            print(new_mac,new_mac2)

获取网卡1mac地址和网卡2mac地址



参考:

http://blog.csdn.net/zygblock/article/details/53431972

相关文章
相关标签/搜索