网站搜索

如何在 CentOS/RHEL 7/8 中设置或更改主机名


计算机主机名表示分配给网络中计算机的唯一名称,以便唯一标识该特定网络中的该计算机。计算机主机名可以设置为您喜欢的任何名称,但您应该记住以下规则:

  • 主机名可以包含字母(从 a 到 z)。
  • 主机名可以包含数字(从 0 到 9)。
  • 主机名只能包含连字符 ( – ) 作为特殊字符。
  • 主机名可以包含点特殊字符 ( . )
  • 主机名可以包含所有三个规则的组合,但必须以字母或数字开头和结尾。
  • 主机名字母不区分大小写。
  • 主机名的长度必须介于 2 到 63 个字符之间。
  • 主机名应该是描述性的(以便于识别网络上的计算机用途、位置、地理区域等)。

要通过控制台显示 CentOS 7/8RHEL 7/8 系统中的计算机名称,请发出以下命令。 -s 标志显示计算机短名称(仅主机名),-f 标志显示网络中的计算机 FQDN(仅当计算机是域或领域的一部分,并且已设置 FQDN)。

hostname
hostname -s
hostname -f

您还可以通过使用 cat 命令检查 /etc/hostname 文件的内容来显示 Linux 系统主机名。

cat /etc/hostname

要更改或设置 CentOS 7/8 计算机主机名,请使用 hostnamectl 命令,如以下命令摘录所示。

hostnamectl set-hostname your-new-hostname

除了hostname命令之外,您还可以使用hostnamectl命令来显示Linux机器主机名。

hostnamectl

为了应用新的主机名,需要重新启动系统,请发出以下命令之一以重新启动 CentOS 7 计算机。

init 6
systemctl reboot
shutdown -r

设置 CentOS 7/8 计算机主机名的第二种方法是手动编辑 /etc/hostname 文件并键入新主机名。此外,为了应用新的计算机名称,需要重新启动系统。

vi /etc/hostname

可用于更改 CentOS 7/8 计算机主机名的第三种方法是使用 Linux sysctl 界面。但是,使用此方法更改计算机名称会导致设置计算机临时主机名。

瞬态主机名是一个特殊的主机名,仅由 Linux 内核作为静态主机名之外的辅助计算机名称进行初始化和维护,并且在重新启动后无法保留。

sysctl kernel.hostname
sysctl kernel.hostname=new-hostname
sysctl -w kernel.hostname=new-hostname

要显示计算机临时主机名,请发出以下命令。

sysctl kernel.hostname
hostnamectl

最后,hostnamectl命令可用于实现以下主机名设置:-pretty-static-transient强>。

尽管还有其他更具体的方法可以更改 Linux 计算机主机名,例如发出 nmtui 命令或手动编辑特定于每个 Linux 发行版的一些配置文件(/etc/sysconfig/network-scripts/ ifcfg-ethX 对于 CentOS),无论使用什么 Linux 发行版,上述规则通常都可用。