通常,主机名是在操作系统安装期间设置的,或者在创建虚拟机时动态分配给虚拟机的。
您可能需要更改主机名的原因有很多。最常见的是在创建实例时自动设置主机名。
本指南介绍了如何在 CentOS 8 上设置或更改主机名,而无需重新启动系统。
先决条件#
在继续本教程之前,请确保您以以下身份登录具有 sudo 权限的用户
.
了解主机名#
主机名是标识网络上设备的标签。同一网络上不应有两台或更多台具有相同主机名的计算机。
共有三类hostname
: static
, pretty
, and transient
.
-
static
- 传统的主机名。它存储在/etc/hostname
文件并可由用户设置。
-
pretty
- 用于呈现给用户的自由格式 UTF8 主机名。例如,Linuxize's desktop
.
-
transient
- 由内核维护的动态主机名。 DHCP 或 mDNS 服务器可以在运行时更改临时主机名。默认情况下,它与static
主机名。
建议使用完全合格的域名(FQDN) 对彼此而言static
and transient
名称如host.example.com
.
显示当前主机名#
要查看当前主机名,请执行以下命令:
hostnamectl
在此示例中,当前主机名设置为centos8.localdomain
.
更改主机名#
方法 1:使用hostnamectl
命令#
在 CentOS 8 和所有其他使用 systemd 的 Linux 发行版中,您可以使用以下命令更改系统主机名和相关设置hostnamectl
命令。语法如下:
sudo hostnamectl set-hostname host.example.com
sudo hostnamectl set-hostname "Your Pretty HostName" --pretty
sudo hostnamectl set-hostname host.example.com --static
sudo hostnamectl set-hostname host.example.com --transient
例如,将系统静态主机名更改为host.linuxize.com
,您将使用以下命令:
sudo hostnamectl set-hostname host.linuxize.com
将漂亮的主机名设置为Linuxize's desktop
, enter:
sudo hostnamectl set-hostname "Linuxize's desktop" --pretty
The hostnamectl
命令不产生输出。成功时,返回 0,否则返回非零失败代码。
要验证主机名是否已成功更改,请使用hostnamectl
命令。
方法 2:使用nmtui
命令#
nmtui
是一个基于 Curses 的工具,用于与 NetworkManager 交互。它还可用于设置或更改主机名。
通过在终端中输入其名称来启动该工具:
sudo nmtui
使用箭头键浏览选项,选择Set system hostname
并按Enter
:
输入新的主机名:
Press Enter
确认新主机名:
最后,重新启动systemd-hostnamed
使更改生效的服务:
sudo systemctl restart systemd-hostnamed
方法 3:使用nmcli
命令#
nmcli
是一个用于控制 NetworkManager 的命令行工具,也可用于更改系统的主机名。
要查看当前主机名,请键入:
sudo nmcli g hostname
将主机名更改为host.linuxize.com
使用以下命令:
sudo nmcli g hostname host.linuxize.com
要使更改生效,请重新启动systemd-hostnamed
服务:
sudo systemctl restart systemd-hostnamed
结论#
要在 CentOS 系统上设置或更改主机名,请使用hostnamectl set-hostname
命令后跟新主机名。
如果您有任何疑问,请随时发表评论。