在 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 权限来执行,因为修改主机名是一个需要管理员权限的操作。