如何在CentOS 8上更改主机名

时间:2020-03-05 15:27:08  来源:igfitidea点击:

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

出于多种原因,我们可能需要更改主机名。
最常见的是在创建实例后自动设置主机名的情况。

本教程解释了如何在CentOS 8上设置或者更改主机名而无需重新启动系统。

准备工作

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

了解主机名

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

主机名分为三类:“静态”,“漂亮”和“瞬态”。

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

建议对“静态”和“临时”名称(例如“ host.example.com”)都使用完全限定的域名('FQDN')。

显示当前主机名

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

hostnamectl

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

更改主机名

方法1:使用“ hostnamectl”命令

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

sudo hostnamectl set-hostname host.example.comsudo hostnamectl set-hostname "Your Pretty HostName" --prettysudo hostnamectl set-hostname host.example.com --staticsudo hostnamectl set-hostname host.example.com --transient

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

sudo hostnamectl set-hostname host.theitroad.com

要将漂亮的主机名设置为“ theitroad的桌面”,请输入:

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

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

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

方法2:使用“ nmtui”命令

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

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

sudo nmtui

使用箭头键浏览选项,选择“设置系统主机名”,然后按“ Enter”:

输入新的主机名:

按“ Enter”确认新的主机名:

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

sudo systemctl restart systemd-hostnamed

方法3:使用“ nmcli”命令

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

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

sudo nmcli g hostname

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

sudo nmcli g hostname host.theitroad.com

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

sudo systemctl restart systemd-hostnamed