I have a Supermicro server with integrated IPMI and I need to use the console in order to manage my server (through the console). I have downloaded the impicfg package from supermicro public ftp.
root@ns:~/work# mkdir ipmi root@ns:~/work# cd ipmi/ root@ns:~/work/ipmi# wget ftp://ftp.supermicro.com/utility/IPMICFG/IPMICFG_1.28.0_build.180302.zip --2018-07-29 00:17:46-- ftp://ftp.supermicro.com/utility/IPMICFG/IPMICFG_1.28.0_build.180302.zip => ‘IPMICFG_1.28.0_build.180302.zip’ Resolving ftp.supermicro.com (ftp.supermicro.com)... 207.212.57.120 Connecting to ftp.supermicro.com (ftp.supermicro.com)|207.212.57.120|:21... connected. Logging in as anonymous ... Logged in! ==> SYST ... done. ==> PWD ... done. ==> TYPE I ... done. ==> CWD (1) /utility/IPMICFG ... done. ==> SIZE IPMICFG_1.28.0_build.180302.zip ... 1722771 ==> PASV ... done. ==> RETR IPMICFG_1.28.0_build.180302.zip ... done. Length: 1722771 (1.6M) (unauthoritative) IPMICFG_1.28.0_build.180302.zip 100%[================================>] 1.64M 3.28Mb/s in 4.8s
I have extracted the files from this zip archive using unzip
root@ns:~/work/ipmi# unzip IPMICFG_1.28.0_build.180302.zip ....
In the archive, you can find other tools for impi configurations from Linux, Windows and DOS. Also, on Linux directory, you can find two directors for different architectures (32bit and 64bit).
root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302# ls DOS IPMICFG_UserGuide.pdf Linux ReleaseNotes.txt Windows root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302# ls Linux/ 32bit 64bit
I have a 64bit system, so I will use the 64bit binary.
root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302# getconf LONG_BIT 64
Running IPMICFG-Linux.x86_64 from “Linux/64bit/” without any argumens will show the arguments/help.
root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302# cd Linux/64bit/ root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302/Linux/64bit# ./IPMICFG-Linux.x86_64 IPMICFG Version 1.28.0 (Build 180302) Copyright 2018 Super Micro Computer, Inc. Usage: IPMICFG params (Example: IPMICFG -m 192.168.1.123) -m Show IP and MAC. -m IP Set IP (format: ###.###.###.###). -a MAC Set MAC (format: ##:##:##:##:##:##). -k Show Subnet Mask. -k Mask Set Subnet Mask (format: ###.###.###.###). -dhcp Get the DHCP status. -dhcp on Enable the DHCP. -dhcp off Disable the DHCP. -g Show Gateway IP. -g IP Set Gateway IP (format: ###.###.###.###). -r BMC cold reset. option: -d | Detected IPMI device for BMC reset. -garp on Enable the Gratuitous ARP. -garp off Disable the Gratuitous ARP. -fd Reset to the factory default. option: -d | Detected IPMI device for BMC reset. -fdl Reset to the factory default. (Clean LAN) option: -d | Detected IPMI device for BMC reset. -fde Reset to the factory default. (Clean FRU & LAN) option: -d | Detected IPMI device for BMC reset. -ver Get Firmware revision. -vlan Get VLAN status. -vlan onEnable the VLAN and set the VLAN tag. If VLANtag is not given it uses previously saved value. -vlan off Disable the VLAN. -selftest Checking and reporting on the basic health of BMC. -raw Send a RAW IPMI request and print response. Format: NetFn Cmd [Data1 ... DataN] -fru info Show FRU inventory area Info. -fru list Show all FRU values. -fru cthelp Show chassis type code. -fru help Show help of FRU Write. -fru Show FRU field value. -fru Write FRU. -fru 1m Update Product-Manufacturer from DMITable to IPMI FRU. -fru 1p Update Product-Product Name from DMITable to IPMI FRU. -fru 1s Update Product-S/N from DMITable to IPMI FRU. -fru 2m Update Board-Manufacturer from DMITable to IPMI FRU. -fru 2p Update Board-Product Name from DMITable to IPMI FRU. -fru 2s Update Board-S/N from DMITable to IPMI FRU. -fru 3s Update Chassis-S/N from DMITable to IPMI FRU. -fru backup Backup FRU to file . -fru restore Restore FRU from file . -fru tbackup Backup FRU to file . -fru trestore Restore FRU from file . -fru ver Get/Set FRU version. (v1 v2 are BCD format) -sel info Show SEL info. -sel list Show SEL records. -sel del Delete all SEL records. -sel raw Show SEL raw data. -sdr [full] Show SDR records and reading. -sdr del Delete SDR record. -sdr ver Get/Set SDR version. (v1 v2 are BCD format) -nm nmsdr Display NM SDR. -nm seltime Get SEL time. -nm deviceid Get ME Device ID. -nm reset Reboots ME. -nm reset2default Force ME reset to Default. -nm updatemode Force ME to Update Mode. -nm selftest Get Self Test Results. -nm listimagesinfo List ME Images information. -nm oemgetpower OEM Power command for ME. -nm oemgettemp OEM Temp. command for ME. -nm pstate Get Max allowed CPU P-State. -nm tstate Get Max allowed CPU T-State. -nm cpumemtemp Get CPU/Memory temperature. -nm hostcpudata Get host CPU data. -fan Get Fan Mode. -fan Set Fan Mode. -pminfo [full] Power supply PMBus health. -psfruinfo Power supply FRU health. -psbbpinfo Battery backup power status. -autodischarge Set auto discharge by days. . -discharge Manually discharge battery. -user list List user privilege information. -user help Show user privilege code. -user add Add user. -user del Delete user. -user level Update user privilege. -user setpwd Update user password. -conf upload Upload IPMI configuration form binary file.
I only need to set the network and add a username.
Network configuration:
# Here is the ip address root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302/Linux/64bit# ./IPMICFG-Linux.x86_64 -m 10.0.0.10 IP=10.0.0.10 # Here is the netmask root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302/Linux/64bit# ./IPMICFG-Linux.x86_64 -k 255.255.255.0 Subnet Mask=255.255.255.0 # Here is the gateway root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302/Linux/64bit# ./IPMICFG-Linux.x86_64 -g 10.0.0.1 Gateway=10.0.0.1
Adding a username with administrator privileges
root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302/Linux/64bit# ./IPMICFG-Linux.x86_64 -user help For privilege level: Administrator level : 4 Operator level : 3 User level : 2 Callback level : 1 root@ns:~/work/ipmi/IPMICFG_1.28.0_build.180302/Linux/64bit# ./IPMICFG-Linux.x86_64 -user add 3 tex 6MNNB3R23CROHK13 4 Done.