如何更改基于RHEL发行版的主机名?


19

我第一次登录,打开终端,然后输入“主机名”。它返回了“ localhost.localdomain.com”。然后,我以root用户身份在终端中使用命令“ su –”登录,并提供了root用户的密码,并使用了命令“ hostname etest”,其中etest是我希望计算机拥有的主机名。为了测试我的主机名是否正确更改,我在终端再次输入了“主机名”,并返回etest。

但是,当我重新启动计算机时,主机名恢复为“ localhost.localdomain.com”。

这是我在终端中使用的全部命令系列。

    [thomasm@localhost ~]$ hostname  
    localhost.localdomain  
    [thomasm@localhost ~]$ su -  
    Password:   
    [root@localhost ~]# hostname etest  
    [root@localhost ~]# hostname  
    etest

当我用VMPlayer设置RHEL和Ubuntu OS时遇到了同样的问题。


@我是Linux操作系统的新手。如果需要更多详细信息,请告诉我。
托马斯,

Answers:


28

在RHEL和CentOS等衍生产品上,您需要编辑两个文件来更改主机名。

系统根据中的HOSTNAME行在启动时设置其主机名/etc/sysconfig/network。在nano文本编辑器默认安装在RHEL及其衍生物,其用途是不言而喻的:

# nano /etc/sysconfig/network

您还必须更改/etc/hosts文件中的名称。如果您不这样做,某些命令将突然开始花费更长的时间才能运行。他们试图从主机名中查找本地主机IP,并且在中没有任何输入/etc/hosts,它必须经过完整的网络名称查找过程才能继续。根据您的DNS设置,这可能意味着一分钟左右的延迟!

更改了这两个文件后,您可以运行hostname命令以更改主机名的运行时副本(该主机名也是从设置的/etc/sysconfig/network),也可以仅重新启动。

Ubuntu的不同之处在于主机名的静态副本存储在中/etc/hostname。因此,与RHEL相比,Ubuntu上网络配置的许多方面以不同的文件格式存储在不同的位置。


感谢您提供文件的位置。我真的对Linux或使用终端一无所知,因此我需要详细的步骤才能在终端中使用文本编辑器。因此,我的回答如下。但是感谢您需要编辑的文件的位置。
Thomas

4

您可以使用hostnamectl。

1.使用以下命令设置主机名:

# hostnamectl set-hostname etest

要么

# hostnamectl set-hostname etest.something

2.注销并重新登录。

3.(可选)要查看更多选项:

man hostnamectl

... hostnamectl仅适用于RHEL 7 CentOS的7
戴尔·安德森

2

以下是使用终端更改CentOS计算机(或任何其他RHEL派生产品)的主机名的步骤。

打开终端。键入su-,以root用户身份登录。提供密码后,输入vi / etc / sysconfig / network。这将在命令模式下使用vi文本编辑器打开“网络”文件。输入“ i”进入vi的插入模式。导航到文件的主机名部分,并用etest(或所需的主机名)替换localhost.localdomain。按“ Esc”退出插入模式并返回到命令模式。在命令模式下,输入:wq保存更改并退出vi。

如果您要退出而不保存,请输入:q!在命令模式下。

如果需要,可以遵循类似的步骤来编辑/ etc / hosts文件。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.