如何在 CentOS 8/RHEL 8 中设置与修改主机名

为什么我们需要主机名?

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

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

理解主机名

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

主机名分为三类:静态(static), 精致(pretty)和 瞬态(transient)。

  • 静态(static) - 传统的主机名形式。被存储在 /etc/hostname 文件中,可以由用户设置。
  • 精致(pretty) - 用于向用户表示的自由格式 UTF8 主机名。例如 thestack.net.
  • 瞬态(transient) - 内核维护的动态主机名,可以在运行时由 DHCP 或 mDNS 服务器更改。默认情况下,它与静态主机名相同。

建议对静态和临时名称使用完全限定域名(FQDN)。

显示当前的主机名

执行下面的命令来显示当前的主机名

hostnamectl

hostname.PNG

在这个例子中,主机名被设置成了 myweb.thestack.net.

更改主机名

方法一:使用 hostnamectl 命令

在 CentOS 8 和其他使用 systemd 的 Linux 发行版本中,你可以使用 hostnamectl 命令来修改系统的主机名和相关设置。例如,要修改系统的主机名为 myweb.thestack.net,你需要运行如下命令:

 hostnamectl set-hostname myweb.thestack.net

要设置精致主机名为 thestack.net,可输入:

 hostnamectl set-hostname "thestack.net" --pretty

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

方法二:使用 nmtui 命令

nmtui 是 NetworkManager 的文本用户界面,也可以用来修改主机名。

要启动 nmtui 程序,请运行以下命令:

nmtui

nmtui first page.PNG

使用方向键在选项中导航,选择 Set system hostname 并按回车键:

输入新的主机名:

nmtui changing name.PNG

按回车键确认主机名更改:

Setting nmtui  hostname.PNG

最后,重新启动 systemd-hostnamed 服务,以便修改立即生效:

systemctl restart systemd-hostnamed

方法三:使用 nmcli 命令

nmcli 是一个命令行工具,用于控制 NetworkManager,也可用于修改 Linux 主机名。

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

nmcli g hostname

要将主机名修改为 ‘myweb.thestack.net’ 请使用以下命令:

 nmcli g hostname myweb.thestack.net`

最后,重新启动 systemd-hostnamed 服务,以便修改立刻生效:

systemctl restart systemd-hostnamed

关联文章