如何在 Linux 中使用和编辑 hosts 文件

如果您曾经在 Linux 机器上管理过多台服务器或设置过某种家庭实验室,那么您就会知道“hosts”文件在 Linux 中的用处。 然而,你们中的一些人甚至可能不知道它的存在,更不用说如何利用它来让你的生活更轻松了。 这就是我们指导您如何在 Linux 中使用和编辑 hosts 文件的原因。

什么是主机文件?

“/etc/hosts”文件是您的系统保存 IP 地址 -> 主机名的内部映射的地方。 这不需要 DNS 服务器,因为它本地存储在您的计算机上。 这是管理内部服务器或网络上其他通常需要您输入 IP 地址的设备的好方法。 我一直将它用于 Raspberry Pi 项目和管理常用的 KVM 虚拟机。

如何使用主机文件?

首先,查看 hosts 文件中已有的内容。 在终端中输入以下命令并按回车:

在输出中,您将找到两个 IP 地址,这些 IP 地址旨在让您的本地计算机识别自己。 如果你运行 ping localhost 命令,您将看到其中一个 IP 地址出现。 这是因为 Linux 会自动将这两个条目生成到 hosts 文件中。 如果您想添加更多条目,您所要做的就是遵循文件的格式,您就可以开始了。

编辑主机文件

要编辑主机文件,只需在您喜欢的文本编辑器中打开它。 你可以使用 Vim、Nano、Gedit、Kate 或任何你最喜欢的。 您应该看到以下格式的内容:

因此,如果我有一个 IP 地址为 192.168.122.7 的 Pi Hole 服务器,我的格式将是这样的:

当然,这取决于你想给它起什么名字。 这意味着任何时候您想要访问该 Pi Hole 服务器,无论是通过 ping, ssh或其他工具,您不必输入 IP 地址。 你可以输入 pihole.local 进入终端。 这可以节省很多时间,尤其是当您使用较短的服务器主机名时。

还需要注意的是,您不必使用“.com”、“.net”或“.org”地址。 你甚至可以直接调用它 pihole,您的系统会识别它。 我使用 .local 地址向您展示了“正确”的做法,但您可以打电话给他们 server 如果这是你唯一的一个。

它对于虚拟化服务器或工作站上的虚拟机也很有用。 记住虚拟机 IP 地址是一件非常痛苦的事情,使用 hosts 文件非常适合管理它。 使用我的虚拟机 IP 地址 192.168.122.202,我将使用它并编辑我的主机文件:

然后我可以用主机名 ping 那个虚拟机,这样更容易记住我在找什么。 您可以看到,我正在 ping 主机名而不是 IP 地址,这会显示在命令的输出中。 该系统具有该 IP 和主机名的内部映射,因此很容易插入该位置。

总结

如您所见,学习如何在 Linux 中编辑 Hosts 文件可能是一项有用的技能,因为它可以让您在以后节省大量时间。 如果您在 Windows 上,您还可以编辑 Hosts 文件并以与上述完全相同的方式使用它。 如果您正在寻找一种简单的方法来阻止网站,那么这些 Chrome 扩展可能会做得更好。

订阅我们的新闻!

我们最新的教程直接发送到您的收件箱

注册所有时事通讯。 注册即表示您同意我们的隐私政策并且欧洲用户同意数据传输政策。 我们不会共享您的数据,您可以随时取消订阅。 订阅