昨天我们在我们的网站上写了一篇关于如何在Linux中更改主机名的文章。今天,我们将向您展示修改主机名的不同方法。您可以选择最适合您的方法。使用systemd的系统带有一个名为hostnamectl的好工具,它允许我们轻松管理系统的主机名。当您使用此本机命令时,它会立即更改主机名,而无需重新启动即可生效。但是如果通过手动修改配置文件的方式更改主机名,可能需要重启才能生效。在本文中,我们将展示4种使用systemd更改系统主机名的方法。hostnamectl命令允许在Linux中设置三种类型的主机名,它们的详细信息如下:Static:这是一个静态主机名,由系统管理员添加。瞬态/动态:这是在运行时由DHCP或DNS服务器分配的。人类可读形式:它可以由系统管理员指定。这是一个自由格式的主机名,以人类可读的形式表示服务器。这些可以使用以下4种方法进行设置。hostnamectl命令:控制系统主机名。nmcli命令:是控制NetworkManager的命令行工具。nmtui命令:是控制NetworkManager的文本用户界面。/etc/hostname文件:该文件包含系统的静态主机名。方法一:在Linux中使用hostnamectl更改主机名hostnamectl可以用来查询和更改系统的主机名及相关设置。只需运行hostnamectl即可查看系统的主机名。$hostnamectl或者使用下面的命令:$hostnamectlstatusStatichostname:daygeek-Y700Iconname:computer-laptopChassis:laptopMachineID:31bdeb7b83230a2025d43547368d75bcBootID:267f264c448f000ea5aed47263c6de7fOperatingSystem:ManjaroLinuxKernel:Linux4.19.20-1-MANJAROArchitecture:x86-64如果要更改主机名,可以使用以下命令格式:语法格式:$hostnamectlset-hostname[YOURNEWHOSTNAME]使用以下命令使用hostnamectl更改主机名。在此示例中,我将主机名从daygeek-Y700更改为magi-laptop。$hostnamectlset-hostnamemagi-laptop您可以使用以下命令查看更新后的主机名。$hostnamectl静态主机名:magi-laptop图标名称:computer-laptop机箱:laptop机器ID:31bdeb7b83230a2025d43547368d75bc启动ID:267f264c448f000ea5aed47263c6de7f操作系统:ManjaroLinux内核:Linux4.19.20-1-MANJAROin6架构:x86使用nmcli命令更改主机名nmcli是一个命令行工具,旨在控制NetworkManager并报告网络状态。nmcli用于创建、显示、编辑、删除、激活和停用网络连接,以及控制和显示网络设备的状态。此外,它还允许我们更改主机名。使用以下命令通过nmcli查看当前主机名。$nmcligeneralhostnamedaygeek-Y700语法格式:$nmcligeneralhostname[YOURNEWHOSTNAME]使用以下命令在nmcli命令的帮助下更改主机名。在此示例中,我将主机名从daygeek-Y700更改为magi-laptop。$nmcligeneralhostnamemagi-laptop无需重启设备即可生效,但为了安全起见,只需重启systemd-hostnamed服务即可使修改生效。$sudosystemctlrestartsystemd-hostnamed再次运行相同的nmcli命令以检查更改后的主机名。$nmcligeneralhostnamemagi-laptop方法三:在Linux中使用nmtui更改主机名nmtui是一个基于curses库的TUI应用程序,用于与NetworkManager交互。启动nmtui时,如果未指定先前的nmtui命令行参数,它将提示用户选择执行活动。在终端中运行以下命令以启动文本用户界面。$nmtui使用向下箭头键选择“设置系统主机名”选项,然后按回车键。下面的屏幕截图显示了原始主机名。我们需要做的就是删除原来的主机名,然后输入新的主机名,然后选择“确定”并回车确认。然后它会在屏幕上显示更新后的主机名,再次选择“确定”并按回车键确认更改。勾选“退出”按钮退出nmtui终端界面。无需重启设备即可生效,但出于安全考虑,需要重启systemd-hostnamed服务才能使修改生效。$sudosystemctlrestartsystemd-hostnamed你可以运行下面的命令来查看更新后的主机名。$hostnamectl静态主机名:daygeek-Y700图标名称:computer-laptop机箱:laptop机器ID:31bdeb7b83230a2025d43547368d75bc启动ID:267f264c448f000ea5aed47263c6de7f操作系统:ManjaroLinux内核:Linux4.19.20-1-MANJARO6架构:x在MANJARO6架构:使用/etc/hostname更改主机名除了上述方法外,我们还可以通过修改/etc/hostname文件来修改主机名。但是这个方法需要重启服务器才能生效。使用以下命令检查/etc/hostname文件以查看当前主机名:$cat/etc/hostnamedaygeek-Y700要更改主机名,只需覆盖此文件即可,因为此文件仅包含主机名内容。$sudoecho"magi-daygeek">/etc/hostname$cat/etc/hostnamemagi-daygeek然后使用以下命令重启系统:$sudoinit6检查/etc/hostname文件的内容以验证主机名是否正确已经变了。$cat/etc/hostnamemagi-daygeek
