Linux host 命令实用示例

LinuxBeginner
立即练习

介绍

在本实验中,你将学习如何使用 hostnamehostnamectl 命令来管理 Linux 系统的主机名。实验内容涵盖了探索 hostname 命令的基本用法,以及更全面的 hostnamectl 命令来管理主机名设置。你将学习如何显示当前的主机名,以及展示主机名信息不同方面的各种选项。此外,你还将学习如何使用 hostnamectl 命令更改系统的主机名。

Linux 命令速查表

探索 hostname 命令

在这一步中,我们将探索 hostname 命令,该命令用于显示或设置系统的主机名。

首先,让我们检查系统的当前主机名:

hostname

示例输出:

ubuntu

不带任何参数的 hostname 命令会简单地打印系统的当前主机名。

接下来,让我们使用 hostname 命令显示系统的更多详细信息:

hostname -a
hostname -d
hostname -f
hostname -i
hostname -s

示例输出:

ubuntu
example.com
ubuntu.example.com
172.17.0.2
ubuntu
  • hostname -a:显示别名主机名。
  • hostname -d:显示 DNS 域名。
  • hostname -f:显示完全限定域名(FQDN)。
  • hostname -i:显示主机的网络地址。
  • hostname -s:显示短主机名。

如你所见,hostname 命令提供了多种选项来显示系统主机名的不同方面。

使用 hostnamectl 命令管理主机名

在这一步中,我们将探索 hostnamectl 命令,它提供了一种更全面的方式来管理系统的主机名。

首先,让我们使用 hostnamectl 检查当前的主机名设置:

hostnamectl

示例输出:

   Static hostname: ubuntu
         Icon name: computer-vm
       Machine ID: 7b6d7b3f1d9d4c5a8d1a2b3c4d5e6f7
            Boot ID: 9a8b7c6d5e4f3a2b1c0d9e8f7a6b5
   Virtualization: docker
 Operating System: Ubuntu 22.04 LTS
          Kernel: Linux 5.15.0-1023-aws
    Architecture: x86-64

hostnamectl 命令显示了系统的各种信息,包括静态主机名、图标名称、机器 ID、启动 ID、虚拟化类型、操作系统、内核版本和架构。

接下来,让我们使用 hostnamectl 更改主机名:

sudo hostnamectl set-hostname new-hostname

运行此命令后,系统的主机名将更新为 "new-hostname"。

要验证新的主机名,请运行:

hostnamectl

示例输出:

   Static hostname: new-hostname
         Icon name: computer-vm
       Machine ID: 7b6d7b3f1d9d4c5a8d1a2b3c4d5e6f7
            Boot ID: 9a8b7c6d5e4f3a2b1c0d9e8f7a6b5
   Virtualization: docker
 Operating System: Ubuntu 22.04 LTS
          Kernel: Linux 5.15.0-1023-aws
    Architecture: x86-64

如你所见,静态主机名已更新为 "new-hostname"。

在 Ubuntu 22.04 上自定义主机名

在这最后一步中,我们将学习如何在 Ubuntu 22.04 系统上手动自定义主机名。

首先,让我们再次检查当前的主机名:

hostnamectl

示例输出:

   Static hostname: new-hostname
         Icon name: computer-vm
       Machine ID: 7b6d7b3f1d9d4c5a8d1a2b3c4d5e6f7
            Boot ID: 9a8b7c6d5e4f3a2b1c0d9e8f7a6b5
   Virtualization: docker
 Operating System: Ubuntu 22.04 LTS
          Kernel: Linux 5.15.0-1023-aws
    Architecture: x86-64

要手动更改主机名,我们需要编辑 /etc/hostname 文件:

sudo nano /etc/hostname

在文件中,将当前主机名替换为所需的新主机名,例如 "my-custom-hostname":

my-custom-hostname

保存文件并退出文本编辑器。

接下来,我们需要更新 /etc/hosts 文件以反映新的主机名:

sudo nano /etc/hosts

找到以 "127.0.0.1" 开头的行,并将主机名替换为新的主机名:

127.0.0.1 my-custom-hostname localhost

保存文件并退出文本编辑器。

最后,让我们验证新的主机名:

hostnamectl

示例输出:

   Static hostname: my-custom-hostname
         Icon name: computer-vm
       Machine ID: 7b6d7b3f1d9d4c5a8d1a2b3c4d5e6f7
            Boot ID: 9a8b7c6d5e4f3a2b1c0d9e8f7a6b5
   Virtualization: docker
 Operating System: Ubuntu 22.04 LTS
          Kernel: Linux 5.15.0-1023-aws
    Architecture: x86-64

主机名已成功更改为 "my-custom-hostname"。

总结

在本实验中,我们探索了 hostname 命令,该命令用于显示或设置系统的主机名。我们学习了如何使用 hostname 命令的各种选项来显示系统主机名的不同方面,例如别名、DNS 域名、完全限定域名、网络地址和短主机名。接着,我们探索了 hostnamectl 命令,它提供了一种更全面的方式来管理系统的主机名。我们学习了如何使用 hostnamectl 显示系统的详细信息,包括静态主机名、图标名称、机器 ID、启动 ID、虚拟化类型、操作系统、内核版本和架构。最后,我们演示了如何使用 hostnamectl set-hostname 命令更改主机名。

Linux 命令速查表