温馨提示×

Ubuntu如何通过脚本设置主机名

小樊
48
2025-09-25 03:24:45
栏目: 云计算

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

方法一:使用 hostnamectl 命令

hostnamectl 是一个用于控制 systemd 的命令行工具,可以用来设置和更改系统主机名。

#!/bin/bash # 设置新的主机名 NEW_HOSTNAME="your-new-hostname" # 使用 hostnamectl 设置主机名 sudo hostnamectl set-hostname "$NEW_HOSTNAME" # 重新加载 systemd-resolved 配置(如果需要) sudo systemctl restart systemd-resolved echo "主机名已更改为 $NEW_HOSTNAME" 

将上述脚本保存为 set_hostname.sh,然后通过以下命令运行:

chmod +x set_hostname.sh sudo ./set_hostname.sh 

方法二:直接编辑 /etc/hostname/etc/hosts

您也可以手动编辑 /etc/hostname 文件来更改主机名,并更新 /etc/hosts 文件中的相应条目。

#!/bin/bash # 设置新的主机名 NEW_HOSTNAME="your-new-hostname" # 备份原始的 /etc/hostname 文件 sudo cp /etc/hostname /etc/hostname.bak # 写入新的主机名到 /etc/hostname echo "$NEW_HOSTNAME" | sudo tee /etc/hostname # 更新 /etc/hosts 文件 sudo sed -i "s/^127.0.0.1.*$/127.0.0.1\t$NEW_HOSTNAME/" /etc/hosts echo "主机名已更改为 $NEW_HOSTNAME" 

同样,将这个脚本保存为 set_hostname.sh,然后执行:

chmod +x set_hostname.sh sudo ./set_hostname.sh 

方法三:使用 nmcli 命令(适用于 NetworkManager)

如果您使用的是 NetworkManager,可以使用 nmcli 来设置主机名:

#!/bin/bash # 设置新的主机名 NEW_HOSTNAME="your-new-hostname" # 使用 nmcli 设置主机名 sudo nmcli general hostname "$NEW_HOSTNAME" echo "主机名已更改为 $NEW_HOSTNAME" 

保存为 set_hostname.sh 并执行:

chmod +x set_hostname.sh sudo ./set_hostname.sh 

注意事项

  • 更改主机名后,可能需要重启系统或至少重新登录以使更改生效。
  • 确保新主机名符合您的命名规范,并且不包含不允许的字符。
  • 在生产环境中进行更改之前,请确保备份相关配置文件以防万一。

以上方法均需使用 sudo 权限来执行,因为修改主机名是一个需要管理员权限的操作。

0