温馨提示×

Debian如何使用脚本批量修改hostname

小樊
36
2025-11-25 04:07:33
栏目: 智能运维

在Debian系统中,你可以使用脚本来批量修改多个主机的hostname。以下是一个示例脚本,它可以帮助你实现这一目标:

  1. 首先,创建一个包含所有主机名的文件,例如 hostnames.txt。每行一个主机名。
host1
host2
host3
  1. 创建一个脚本文件,例如 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
  1. 赋予脚本执行权限:
chmod +x change_hostname.sh
  1. 运行脚本:
sudo ./change_hostname.sh

这个脚本会逐行读取 hostnames.txt 文件中的主机名,并使用 hostnamectl 命令修改每个主机名。同时,它会更新 /etc/hosts 文件中的相应条目。如果你希望立即应用更改,可以选择性地重启网络服务。

请注意,运行这些命令需要管理员权限,因此你需要使用 sudo。确保在执行脚本之前备份重要数据,以防止意外情况发生。

0