在 Ubuntu 系统中,设置主机名可以通过多种方法实现。以下是几种常用的方法,确保主机名在系统重启后依然有效:
hostnamectl 命令(适用于 systemd)临时设置主机名:
sudo hostnamectl set-hostname 新主机名
例如:
sudo hostnamectl set-hostname myubuntu
验证更改:
hostnamectl
输出中应显示新的主机名。
持久化设置:
hostnamectl 命令会自动更新 /etc/hostname 文件和 /etc/systemd/hostname 文件,因此无需额外操作即可永久生效。
/etc/hostname 文件备份原始文件(可选但推荐):
sudo cp /etc/hostname /etc/hostname.bak
编辑 /etc/hostname 文件:
sudo nano /etc/hostname
将文件中的旧主机名替换为新主机名,例如将 ubuntu 改为 myubuntu。
保存并退出编辑器。
重启系统以应用更改:
sudo reboot
/etc/hosts 文件为了确保主机名解析正常,建议同时更新 /etc/hosts 文件:
备份原始文件(可选但推荐):
sudo cp /etc/hosts /etc/hosts.bak
编辑 /etc/hosts 文件:
sudo nano /etc/hosts
找到类似于以下的行:
127.0.0.1 localhost
127.0.1.1 ubuntu
将 ubuntu 替换为新主机名,例如 myubuntu:
127.0.0.1 localhost
127.0.1.1 myubuntu
保存并退出编辑器。
应用更改:
hostnamectl 方法,无需额外操作。/etc/hostname,请重启系统:sudo reboot
nmcli 命令(适用于 NetworkManager)如果你的系统使用 NetworkManager 管理网络,可以使用 nmcli 设置主机名:
设置主机名:
sudo nmcli general hostname 新主机名
例如:
sudo nmcli general hostname myubuntu
验证更改:
hostnamectl
或者:
hostname
持久化设置:
nmcli 会自动更新相关配置文件,确保主机名在重启后依然有效。
/etc/hostname 和 /etc/hosts 文件中的主机名一致,以避免解析问题。sudo 命令执行相关操作。通过以上方法之一设置主机名后,Ubuntu 系统将在每次启动时自动应用新的主机名,确保其永久生效。