在Debian系统中,你可以使用脚本来批量修改多个主机的hostname。以下是一个示例脚本,它可以帮助你实现这一目标:
hostnames.txt。每行一个主机名。host1
host2
host3
change_hostname.sh,并添加以下内容:#!/bin/bash
# 读取 hostnames.txt 文件中的每一行
while IFS= read -r hostname
do
# 使用 hostnamectl 命令修改主机名
sudo hostnamectl set-hostname "$hostname"
# 更新 /etc/hosts 文件中的主机名
sudo sed -i "s/^127.0.0.1.*$/127.0.0.1 $hostname/" /etc/hosts
# 可选:重启网络服务以应用更改
sudo systemctl restart networking
done < hostnames.txt
chmod +x change_hostname.sh
sudo ./change_hostname.sh
这个脚本会逐行读取 hostnames.txt 文件中的主机名,并使用 hostnamectl 命令修改每个主机名。同时,它会更新 /etc/hosts 文件中的相应条目。如果你希望立即应用更改,可以选择性地重启网络服务。
请注意,运行这些命令需要管理员权限,因此你需要使用 sudo。确保在执行脚本之前备份重要数据,以防止意外情况发生。