📜  Linux 中的 hostnamectl 命令及示例

📅  最后修改于: 2022-05-13 01:57:26.916000             🧑  作者: Mango

Linux 中的 hostnamectl 命令及示例

hostnamectl命令提供了一个适当的 API,用于控制 Linux 系统主机名并更改其相关设置。该命令还有助于更改主机名,而无需实际定位和编辑给定系统上的 /etc/hostname 文件。

句法:

hostnamectl [OPTIONS...] COMMAND ....

其中COMMAND可以是以下任何一项:

  • status :用于检查当前的主机名设置。
  • set-hostname NAME :用于设置系统主机名。
  • set-icon-name NAME :用于设置主机的图标名称。
  • set-chassis NAME :设置主机的机箱类型。

主机名类型:

  • 静态:由系统管理员分配,用于在启动时初始化内核主机名。
  • 动态或瞬态:在运行时由 mDNS服务器或DHCP 服务器分配。
  • Pretty :这是系统管理员或最终用户分配的高级主机名。

示例 1:运行hostnamectl命令查看当前主机名。我们可以执行hostnamectlhostnamectl status ,如果没有给出选项,结果将与自动假定 status 选项相同。



示例 2:将静态主机名更改为geeksforgeeks 。它可能需要 root 权限。

hostnamectl set-hostname geeksforgeeks --static

现在,让我们使用hostnamectl命令验证更改后的主机名。

如您所见,静态主机名已更新为geeksforgeeks

选项:



  • -h , –help : 显示帮助文本并退出。

  • –version :显示包版本并退出。

  • –transient :当我们特别想只设置瞬态主机名时使用此选项。

    示例:将临时名称设置为ubuntu

    现在,让我们使用hostnamectl 检查临时名称。

  • –static :当我们只想设置静态主机名时使用此选项。

    现在,让我们使用hostnamectl验证更改。

  • –pretty :当我们只想设置漂亮的主机名时使用此选项。要设置的名称需要在双引号 (" ") 中。

    使用以下命令验证更改:

    hostnamectl --pretty status

  • –no-ask-password :此选项不会在任何特权操作中提示输入密码进行身份验证。
  • -H –host=[USER@]HOST :此选项用于远程更改主机名。执行时可能需要 root 权限。
    hostnamectl set-hostname -H [username]@HostName

    这里, HostName是我们要配置的远程主机。

    示例:要将 server3 设置为名为 172.102.2.24 的远程服务器上的主机名,我们可以使用以下命令:

    hostnamectl set-hostname server3 -H root@172.102.2.24