如何在Ubuntu 18.04上更改主机名

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

本教程将指导我们完成在Ubuntu 18.04系统上更改主机名的过程。

主机名是在安装Ubuntu操作系统时设置的,或者如果我们正在启动虚拟机,则会在启动时将其动态分配给实例。

本教程中描述的方法无需重新启动系统即可使用。

尽管本教程是针对Ubuntu 18.04编写的,但相同的说明适用于Ubuntu 16.04和任何基于Ubuntu的发行版,包括Linux Mint和Elementary OS。

准备工作

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

主机名是标识网络上计算机的标签。
我们不应该在同一网络中的两台不同计算机上使用相同的主机名。

显示当前主机名

要查看当前主机名,请输入以下命令:

hostnamectl

如上图所示,当前主机名设置为'ubuntu1804.localdomain'。

更改主机名

以下步骤概述了如何在Ubuntu 18.04中更改主机名。

1.使用“ hostnamectl”更改主机名。

在Ubuntu 18.04中,我们可以使用命令'hostnamectl'更改系统主机名和相关设置。

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

sudo hostnamectl set-hostname theitroad

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

2.编辑“/etc/hosts”文件。

打开“/etc/hosts”文件,并将旧的主机名更改为新的主机名。

/etc/hosts

127.0.0.1   localhost
127.0.0.1   theitroad
# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

3.编辑“ cloud.cfg”文件。

如果安装了“ cloud-init”软件包,则还需要编辑“ cloud.cfg”文件。
通常,默认情况下,此软件包通常安装在由云提供商(例如AWS)提供的镜像中,并用于处理云实例的初始化。

要检查软件包是否已安装,请运行以下“ ls”命令:

ls -l /etc/cloud/cloud.cfg

如果看到以下输出,则表示未安装该软件包,因此无需采取进一步的措施。

ls: cannot access '/etc/cloud/cloud.cfg': No such file or directory

如果安装了软件包,则输出将如下所示:

-rw-r--r-- 1 root root 3169 Apr 27 09:30 /etc/cloud/cloud.cfg

在这种情况下,我们需要打开“ /etc/cloud/cloud.cfg”文件:

sudo vim /etc/cloud/cloud.cfg

搜索“ preserve_hostname”,并将值从“ false”更改为“ true”:

/etc/cloud/cloud.cfg

# This will cause the set+update hostname module to not operate (if true)
preserve_hostname: true

保存文件并关闭编辑器。

验证变更

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

hostnamectl
Static hostname: theitroad
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 6f17445f53074505a008c9abd8ed64a5
           Boot ID: 1c769ab73b924a188c5caeaf8c72e0f4
    Virtualization: kvm
  Operating System: Ubuntu 18.04 LTS
            Kernel: Linux 4.15.0-22-generic
      Architecture: x86-64

我们应该在控制台上看到新的服务器名称。