在 CentOS 系统中,批量修改主机名可以通过编写脚本来实现。以下是一个简单的示例,展示了如何使用 Bash 脚本批量修改多台服务器的主机名。
hostnames.txt。文件格式如下:192.168.1.1 new-hostname-1
192.168.1.2 new-hostname-2
192.168.1.3 new-hostname-3
change_hostname.sh 的 Bash 脚本,并添加以下内容:#!/bin/bash
# 读取 hostnames.txt 文件中的每一行
while IFS= read -r line
do
# 提取 IP 地址和新主机名
ip=$(echo $line | awk '{print $1}')
new_hostname=$(echo $line | awk '{print $2}')
# 远程登录到服务器并修改主机名
ssh root@$ip "hostnamectl set-hostname $new_hostname"
done < hostnames.txt
chmod +x change_hostname.sh
./change_hostname.sh
注意:在运行脚本之前,请确保您已经通过 SSH 密钥或其他方式配置了无密码登录到所有目标服务器。
这个脚本会逐行读取 hostnames.txt 文件中的 IP 地址和新主机名,并通过 SSH 连接到每台服务器,使用 hostnamectl 命令修改主机名。