介绍
Linux 系统的主机名是系统的重要组成部分。它不仅可以用于识别系统,还可以用于其他软件,因为软件通常需要正确配置的主机名才能进行清晰的识别。实际上,主机名就是一个类似于 IP 地址的名称。主机名是分配给主机的域名。您可以配置多个主机名,但为了确保完全限定,建议每个主机只配置一个主机名。.
例如,如果您只有一个服务器用于小型静态网页,则可以使用类似 foo.bar 的东西。.
不过,推荐的做法是选择一个服务器可以显示的名称,例如:
- 邮件服务器的邮件
- Web 服务器
先决条件
- 要使主机名完全限定,您需要将设备的反向 DNS 条目设置为所需的 FQNH(完全限定主机名)。您可以在 Web 服务器控制台中执行此操作。.
- 为了使您的主机名成为完全限定域名,您需要在 DNS 区域中为您的主机名创建一个“A”记录。例如,对于域名为 foo.bar 的第一台小型服务器,我们将创建一个“A”记录,其值为 srv1.foo.bar,IP 地址指向我们其中一台机器。DNS 更改将在 12-48 小时后在全球范围内生效。.
- 要检查和更改服务器上的主机名,请确保您使用 sudo 用户登录到服务器。.
- 本指南基于全新安装 Debian 12 的服务器。.
示例术语
在我们的示例中(一个仅用于各种用途的小型服务器),我们使用 srv1.foo.bar,这样以后如果我们需要更多服务器,就可以将下一个服务器命名为 srv2.foo.bar。.
步骤 1 – 检查主机名
有三种不同的方法可以检查真实的主机名。.
- 第一的:
sudo cat /etc/hosts
- 第二:
sudo hostname
- 第三:
sudo hostname -f
最后一个选项将显示完全限定的主机名。.
步骤 2 – 更改主机名
更改主机名有多种方法。.
通过命令更改主机名
最简单的办法是这样的:
sudo hostnamectl set-hostname servername.fqdn.tld
然后,重启 SSH 服务,新的主机名就会生效:
sudo systemctl restart ssh
手动更改主机名
您也可以手动更改主机名。只需打开几个文件并更改/检查主机名即可:
- /etc/hostname 中的主机名
此文件中应该只包含服务器名称。在本例中为“ServerName”。如果不是,或者您想手动输入,只需将其更改为所需的名称即可。.
sudo nano /etc/hostname
- /etc/mailname 中的电子邮件地址
sudo nano /etc/mailname
- /etc/hosts 文件中的主机名
nano /etc/hosts
它应该看起来像这样:
127.0.1.1 servername.fqdn.tld servername
127.0.0.1 localhost
::1 ip6-localhost ip6-loopback servername.fqdn.tld servername
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts在这里你可以看到主机名的设置位置,只需将其更改为你想要的名称即可。.
保存更改后,重启 SSH 服务:
sudo systemctl restart ssh
结果
您已成功检查并更改了服务器主机名。.









