如何在 Ubuntu 18.04 上更改主机名?

linuxoperating systemopen source

简介

主机名是网络中设备的唯一标识符,通常用于识别和连接同一网络上的其他设备。换句话说,它是赋予计算机或设备的标签,使其在连接到互联网或任何其他网络时能够被唯一标识。在大多数情况下,当您的设备连接到互联网或本地网络时,它会默认被分配一个主机名。

但是,在某些情况下,您可能需要或想要更改 Ubuntu 18.04 计算机的主机名。例如,如果您希望计算机的主机名能够反映其在网络中的功能或位置,以便同一网络中的其他计算机更容易识别。

检查当前主机名

使用 Hostnamectl 命令检查当前主机名

在更改 Ubuntu 18.04 服务器的主机名之前,了解其当前名称至关重要。此步骤将为您提供系统当前配置的概览,并帮助您调试可能出现的潜在问题。

为了检查系统当前的主机名,Ubuntu 18.04 预装了一个名为 hostnamectl 的命令行工具。要启动该命令,请在您的 Ubuntu 18.04 服务器上打开一个终端窗口并输入 -

hostnamectl

这将显示有关您系统的信息列表,包括"静态主机名"下的当前主机名。

输出含义说明

运行 hostnamectl 命令时,可以显示三种类型的主机名:静态、临时或漂亮。静态和临时主机名是常规主机名,可以显式分配给机器(静态),也可以由 DHCP 动态分配(临时)。

漂亮名称只是其中任一种的名称的人性化版本。输出包含以下信息:-

  • 静态主机名 - 这是安装时为您的系统指定的名称。

  • 图标名称 - 这描述了应用程序在图形环境中如何引用您的计算机。

  • 机箱类型 - 这描述了您正在运行的机器类型。

  • 机器 ID - 这可以针对某些应用程序目的唯一地标识您的硬件。

  • 启动 ID - 这可以标识您当前正在哪个启动周期上运行。

现在,您已经掌握了如何使用 hostnamectl 命令检查 Ubuntu 18.04 服务器的当前主机名,并了解了每个部分在上下文中的含义。

更改主机名

使用 Hostnamectl 命令更改主机名暂时

hostnamectl 命令是在 Ubuntu 18.04 上更改主机名最简单、最快捷的方法。要使用它,请打开终端窗口并输入以下命令 -

sudo hostnamectl set-hostname [new_hostname]  

将 [new_hostname] 替换为您想要的新主机名。

语法和可用选项

hostnamectl 命令的语法很简单。唯一需要的参数是新主机名本身。但是,还有其他选项可以与此命令结合使用,例如 -

  • --pretty - 此选项为计算机设置一个"漂亮"的名称,可以是任何您喜欢的描述性字符串。

  • --static - 此选项设置系统的静态主机名。

  • 它可以设置为任何有效的静态主机名。

  • --transient - 此选项设置一个临时主机名,这意味着它在重启后将无法继续使用。

工作原理说明

运行此命令时,只要您不重启或注销会话,它会立即将计算机的当前主机名更改为您指定的主机名。但是,当您重新启动 Ubuntu 系统或退出会话时,除非您采取进一步措施使更改永久生效,否则 Ubuntu 将恢复使用其默认生成的主机名。

通过编辑 /etc/hostname 文件使更改永久生效

要通过"使用 Hostnamectl 命令"进行更改,需要在重新启动或退出活动会话之前执行其他步骤。这些步骤包括编辑两个文件 - /etc/hostname 和 /etc/hosts -

  • 打开终端窗口,并使用此命令使用 nano 或其他编辑器打开文件 -

sudo nano /etc/hostname
  • 将默认生成的主机名替换为 new_hostname。

保存并关闭文件。

  • 使用文本编辑器打开 /etc/hosts 文件 -

sudo nano /etc/hosts
  • 在两个终端上将旧主机名替换为 new_hostname文本行,保存并关闭文件。

可用的语法和选项

编辑 /etc/hostname 只需将一行替换为所需的主机名。无需其他参数。

编辑 /etc/hosts 涉及将旧主机名的每个实例替换为所需的新主机名。这适用于此文件中的两行。

工作原理说明

通过编辑这两个文件,您可以告诉 Ubuntu 从那时起使用您指定的主机名作为其默认主机名,即使在重新启动或退出会话后也是如此。现在,任何依赖于您计算机名称的命令或应用程序都将使用此配置的名称进行连接并准确运行。

验证所做的更改

使用临时或永久方法更改主机名后,务必验证更改是否已成功完成。为此,您可以使用我们之前检查当前主机名的相同命令。

使用步骤 II 中使用的相同命令检查新主机名

要检查新主机名是否已激活,请运行以下命令 -

hostnamectl  

您应该会看到与之前检查当前主机名时类似的输出。查找"静态主机名"字段,并确认它显示的是您想要的新主机名。

如果您在上述任何步骤中出错,您可能仍会看到显示旧的主机名。如果是这样,请仔细检查您是否已正确执行所有步骤,然后重试。

恭喜!您已成功在 Ubuntu 18.04 上更改主机名!

常见问题故障排除

与任何系统配置一样,在 Ubuntu 18.04 上更改主机名时可能会出现问题。以下是用户在更改主机名时遇到的一些常见错误以及解决方法 -

权限被拒绝错误

用户在尝试使用上一节中提到的任一方法更改主机名时可能遇到的一个常见错误是"权限被拒绝"错误消息。发生这种情况是因为更改 /etc/hostname 文件需要 root 权限。

要解决此问题,请在命令前加上 sudo,如下所示 -

sudo hostnamectl set-hostname new-name.

这会在以提升的权限运行命令之前提示您输入密码。

主机名错误

有时,即使正确执行了所有步骤,用户仍可能会看到错误的或旧的主机名,而不是他们想要的主机名。如果您的计算机上存储了旧名称的缓存版本,则可能会发生这种情况。要解决此问题,请尝试重启计算机或使用命令 sudo systemd-resolve --flush-caches 清除 DNS 缓存中的所有过期条目。

sudo systemd-resolve --flush-caches

更改主机名后无网络连接

如果您在更改主机名后失去网络连接,则可能是由于本地网络或路由器的配置设置不正确。在这种情况下,请检查您的网络设备上的 DHCP 是否已启用且正常运行。要解决此问题,请确保所有配置均按照制造商文档进行设置,或咨询 IT 专业人员以获得进一步帮助。

结论

在 Ubuntu 18.04 上更改主机名是一项简单但必要的任务,有助于提高安全性、组织性和网络管理。在本文中,我们介绍了如何检查当前主机名,使用适当的命令和文件编辑工具临时或永久更改它,以及如何验证更改是否成功。


相关文章


有用资源