linux

如何用脚本设置Linux hostname

小樊
55
2025-07-11 05:40:13
栏目: 智能运维

在 Linux 系统中,可以通过多种方式使用脚本来设置主机名。以下是几种常见的方法:

方法一:使用 hostnamectl 命令(适用于 systemd)

  1. 创建一个脚本文件,例如 set_hostname.sh

    #!/bin/bash
    
    # 检查是否提供了新的主机名
    if [ -z "$1" ]; then
        echo "Usage: $0 <new_hostname>"
        exit 1
    fi
    
    NEW_HOSTNAME=$1
    
    # 设置新的主机名
    sudo hostnamectl set-hostname $NEW_HOSTNAME
    
    # 使更改生效
    sudo systemctl restart systemd-hostnamed
    
    echo "Hostname changed to $NEW_HOSTNAME"
    
  2. 赋予脚本执行权限:

    chmod +x set_hostname.sh
    
  3. 运行脚本并传入新的主机名:

    sudo ./set_hostname.sh mynewhostname
    

方法二:直接修改 /etc/hostname 文件

  1. 创建一个脚本文件,例如 set_hostname.sh

    #!/bin/bash
    
    # 检查是否提供了新的主机名
    if [ -z "$1" ]; then
        echo "Usage: $0 <new_hostname>"
        exit 1
    fi
    
    NEW_HOSTNAME=$1
    
    # 备份原始的 hostname 文件
    sudo cp /etc/hostname /etc/hostname.bak
    
    # 写入新的主机名
    echo $NEW_HOSTNAME | sudo tee /etc/hostname
    
    # 使更改生效
    sudo hostname $NEW_HOSTNAME
    
    echo "Hostname changed to $NEW_HOSTNAME"
    
  2. 赋予脚本执行权限:

    chmod +x set_hostname.sh
    
  3. 运行脚本并传入新的主机名:

    sudo ./set_hostname.sh mynewhostname
    

方法三:使用 hostname 命令

  1. 创建一个脚本文件,例如 set_hostname.sh

    #!/bin/bash
    
    # 检查是否提供了新的主机名
    if [ -z "$1" ]; then
        echo "Usage: $0 <new_hostname>"
        exit 1
    fi
    
    NEW_HOSTNAME=$1
    
    # 设置新的主机名
    sudo hostname $NEW_HOSTNAME
    
    # 使更改生效
    echo $NEW_HOSTNAME > /etc/hostname
    
    echo "Hostname changed to $NEW_HOSTNAME"
    
  2. 赋予脚本执行权限:

    chmod +x set_hostname.sh
    
  3. 运行脚本并传入新的主机名:

    sudo ./set_hostname.sh mynewhostname
    

注意事项

通过以上方法,你可以轻松地使用脚本来设置 Linux 系统的主机名。

0
看了该问题的人还看了