温馨提示×

CentOS hostname设置脚本

小樊
47
2025-08-20 23:26:45
栏目: 智能运维

在CentOS系统中,设置主机名可以通过多种方式实现。以下是一个简单的脚本示例,用于设置和永久更改CentOS系统的主机名。

方法一:使用 hostnamectl 命令(适用于 CentOS 7 及以上版本)

#!/bin/bash # 检查是否以root用户运行 if [ "$(id -u)" != "0" ]; then echo "请以root用户运行此脚本" exit 1 fi # 提示用户输入新的主机名 read -p "请输入新的主机名: " NEW_HOSTNAME # 设置临时主机名 hostnamectl set-hostname $NEW_HOSTNAME # 更新 /etc/hosts 文件 sed -i "s/^127.0.0.1.*$/127.0.0.1\t$NEW_HOSTNAME/g" /etc/hosts echo "主机名已成功设置为 $NEW_HOSTNAME" 

方法二:手动编辑 /etc/hostname/etc/hosts 文件(适用于所有CentOS版本)

#!/bin/bash # 检查是否以root用户运行 if [ "$(id -u)" != "0" ]; then echo "请以root用户运行此脚本" exit 1 fi # 提示用户输入新的主机名 read -p "请输入新的主机名: " NEW_HOSTNAME # 备份原始的 /etc/hostname 文件 cp /etc/hostname /etc/hostname.bak # 写入新的主机名到 /etc/hostname 文件 echo $NEW_HOSTNAME > /etc/hostname # 备份原始的 /etc/hosts 文件 cp /etc/hosts /etc/hosts.bak # 更新 /etc/hosts 文件中的主机名 sed -i "s/^127.0.0.1.*$/127.0.0.1\t$NEW_HOSTNAME/g" /etc/hosts echo "主机名已成功设置为 $NEW_HOSTNAME" 

使用方法

  1. 将上述脚本保存为一个文件,例如 set_hostname.sh
  2. 赋予脚本执行权限:
    chmod +x set_hostname.sh 
  3. 以root用户运行脚本:
    sudo ./set_hostname.sh 

注意事项

  • 确保新的主机名符合系统命名规范,通常由字母、数字、连字符(-)和下划线(_)组成,且不能以数字开头。
  • 修改 /etc/hosts 文件时要小心,确保不会误删或修改其他重要内容。

通过以上步骤,你可以轻松地在CentOS系统中设置和永久更改主机名。

0