通常,主机名是在操作系统安装期间设置的,或者在创建虚拟机时动态分配给虚拟机的。

您可能需要更改主机名的原因有很多。 最常见的是在实例创建后自动设置主机名的情况。

本指南说明了如何在CentOS 8上设置或更改主机名,且无需重新启动系统。

先决条件

在继续学习本教程之前,请确保您以个具有sudo特权的用户身份登录。

了解主机名

主机名是用于标识网络上设备的标签。 您不应该在同一网络上拥有两台或更多具有相同主机名的计算机。

hostname分为三类:staticprettytransient

  • static-传统的主机名。 它存储在/etc/hostname文件中,可以由用户设置。
  • pretty -用于向用户展示的自由格式UTF8主机名。 例如Myfreax's desktop
  • transient -由内核维护的动态主机名。 DHCP或mDNS服务器可以在运行时更改临时主机名。 默认情况下,它与static主机名相同。

对于statictransient名称,例如host.example.com,建议使用完全限定的域名( FQDN )。

显示当前主机名

要查看当前主机名,请执行以下命令:

hostnamectl

在此示例中,当前主机名设置为centos8.localdomain

更改主机名

方法1:使用hostnamectl命令

在CentOS 8和所有其他使用systemd的Linux发行版中,您可以使用hostnamectl命令更改系统主机名和相关设置。 语法如下:

sudo hostnamectl set-hostname host.example.com

例如,要将系统静态主机名更改为host.myfreax.com,可以使用以下命令:

sudo hostnamectl set-hostname host.myfreax.com

要将pretty主机名设置为Myfeax's desktop,请输入:

sudo hostnamectl set-hostname "Myfeax's desktop" --pretty

hostnamectl命令不产生输出。 成功时,返回0,否则返回非零失败代码。

要验证主机名是否已成功更改,请使用hostnamectl命令。

方法2:使用nmtui命令

nmtui是用于与NetworkManager进行交互的工具。 它也可以用来设置或更改主机名。

通过在终端中键入其名称来启动该工具:

sudo nmtui

使用箭头键浏览选项,选择Set system hostname,然后按Enter

输入新的主机名:

Enter确认新的主机名:

最后,重新启动systemd-hostnamed服务,以使更改生效:

sudo systemctl restart systemd-hostnamed

方法3:使用nmcli命令

nmcli是用于控制NetworkManager的命令行工具,也可以用于更改系统的主机名。

要查看当前主机名,请输入:

sudo nmcli g hostname

要将主机名更改为host.myfreax.com,请使用以下命令:

sudo nmcli g hostname host.myfreax.com

为使更改生效,请重新启动systemd-hostnamed服务:

sudo systemctl restart systemd-hostnamed

结论

要在CentOS系统上设置或更改主机名,请使用hostnamectl set-hostname命令,后跟新的主机名。

如有任何疑问,请随时发表评论。