ipmitool 用于配置 ipmi 驱动程序,该驱动程序可以通过 LAN 端口进行串行通信。有适用于 Windows 的 ipmitool 吗?我们可以下载 ipmi 源代码并为 Windows 构建它吗?请分享有关如何在 Windows 上构建它的说明。
4 回答
为 Windows 构建 IPMI:
将 Cygwin 安装到您的 Windows 系统上:Cygwin
安装 Cygwin 时,除了默认包外,还要选择 gcc 和 crypto 包。
- 从ipmitool下载 ipmitool 源代码
解压、配置和构建 ipmitool。
cd ipmitool-1.8.12
./configure --enable-intf-lanplus
制作
将 IPMI 二进制文件和相关 dll 打包到一个 zip 文件中。
mkdir ipmitool
cp ipmitool-1.8.12/src/.libs/ipmitool.exe ipmitool/
cp /bin/cygwin1.dll ipmitool/
cp /bin/ cygcrypto-1.0.0.dll ipmitool/
cp /bin/cygz.dll ipmitool/
cp /bin/cyggcc_s-1.dll ipmitool/
tar -zcvf ipmitool.tar ipmitool
在目标主机中解压缩文件 ipmitool.tar。一些示例命令:
ipmitool.exe -I lan -U 用户名 -P 密码 -H 主机名传感器
ipmitool.exe -I lanplus -U 用户名 -P 密码 -H hosname -C 3 sol 激活
您可以使用 MobaXterm for Windows(替代 Cygwin)并下载 ipmitool 插件。
http://itsaboutlinux.blogspot.nl/2016/03/ipmitool-for-mobaxterm.html
我将添加一些我遇到的东西。正如 Jason 刚才提到的,ipmitool 移到了 github。在源代码清单的 INSTALL 文件中有一个非常全面的构建和安装文档。
我用谷歌搜索了 Cygwin DLL 依赖项,发现 cygwin 专门为此生成了一个名为“cygcheck”的工具
当我对新建的 ipmitool.exe 运行它时,它产生了:
C:\users\user1\documents\ipmitool-master\src\ipmitool.exe - os=4.0 img=0.0 sys=5.2
C:\cygwin64\bin\cygwin1.dll - os=4.0 img=0.0 sys=5.2
"cygwin1.dll" v0.0 ts=2021-03-29 09:42
C:\WINDOWS\system32\KERNEL32.dll - os=10.0 img=10.0 sys=10.0
"KERNEL32.dll" v0.0 ts=2022-01-18 10:29
C:\WINDOWS\system32\ntdll.dll - os=10.0 img=10.0 sys=10.0
"ntdll.dll" v0.0
C:\WINDOWS\system32\KERNELBASE.dll - os=10.0 img=10.0 sys=10.0
"KERNELBASE.dll" v0.0
C:\WINDOWS\system32\ntdll.dll (already done)
C:\WINDOWS\system32\api-ms-win-core-fibers-l2-1-1.dll - os=6.3 img=6.3 sys=6.3
"api-ms-win-core-fibers-l2-1-1.dll" v0.0 ts=2013-08-22 08:04
C:\WINDOWS\system32\ntdll.dll (already done)
C:\WINDOWS\system32\KERNEL32.dll (already done)
以防万一其他人最近试图这样做......
Cygwin 现在使用 OpenSSL 1.1,并且 Ashok 的上述答案中提到的 ipmitool 1.8.12 源代码和 cygwin 版本假定 OpenSSL 1.0。
这可能会在即将发布的 1.8.19 中得到修复,但从 1.8.18 开始没有,因此您必须从 GitHub 下载最新源: https ://github.com/ipmitool/ipmitool (他们从 SourceForge 迁移)
此外,您还需要从 cygwin_setup 安装:
- 汽车制造
- 自动配置
- 库工具
然后你可以运行
cd ipmitool-master/ ; ./bootstrap && ./configure && make
(现在配置默认包含 lanplus 插件)
我没有尝试将 cygwin DLL 复制到另一台机器上作为解决方案,但如果你想这样做,你需要 cygcrypto-1.1.dll 而不是上面的 1.0。