shell脚本实现批量配置ipmitool的用户名密码
时间: 2023-07-07 11:05:29 浏览: 262
可以通过编写一个 shell 脚本来批量配置 ipmitool 的用户名密码。具体实现步骤如下:
1. 编写脚本文件,命名为 `ipmi_config.sh`。
2. 在脚本文件中使用 `for` 循环结构遍历需要配置的主机 IP 地址列表。
3. 在循环内部,使用 `ipmitool` 命令配置主机的用户名和密码,命令格式如下:
```
ipmitool -I lanplus -H <主机IP地址> -U <用户名> -P <密码> user set name <新用户名>
ipmitool -I lanplus -H <主机IP地址> -U <用户名> -P <密码> user set password <用户ID> <新密码>
```
其中,`-I` 指定 IPMI 接口类型,`-H` 指定主机的 IP 地址,`-U` 和 `-P` 分别指定用户名和密码。`user set name` 命令用于设置用户名,`user set password` 命令用于设置密码,需要指定用户 ID 和新密码。
4. 将需要配置的主机 IP 地址、用户名和密码保存在一个文本文件中,每行一个,脚本中使用 `cat` 命令读取文本文件内容,将地址、用户名和密码分别赋值给变量。
5. 执行脚本,即可自动批量配置 ipmitool 的用户名密码。
完整脚本示例:
```bash
#!/bin/bash
# 读取需要配置的主机地址列表
HOSTS_FILE="hosts.txt"
hosts=$(cat $HOSTS_FILE)
# 遍历主机列表,依次配置用户名和密码
for host in $hosts; do
echo "Configuring host: $host"
username="admin" # 设置新的用户名
password="password" # 设置新的密码
ipmitool -I lanplus -H $host -U admin -P password user set name $username
ipmitool -I lanplus -H $host -U $username -P $password user set password 1 $password
done
echo "Done."
```
通过将需要配置的主机地址列表保存在 `hosts.txt` 文件中,执行 `./ipmi_config.sh` 命令即可自动批量配置 ipmitool 的用户名密码。
阅读全文