Linux 中改变主机名的 4 种方法 | Linux 中国

2019 年 3 月 25 日 Linux中国
今天,我们将向你展示使用不同的方法来修改主机名。你可以从中选取最适合你的方法。
-- Magesh Maruthamuthu

昨天我们已经在我们的网站中写过如何在 Linux 中修改主机名的文章[1]。今天,我们将向你展示使用不同的方法来修改主机名。你可以从中选取最适合你的方法。

使用 systemd 的系统自带一个名为 hostnamectl 的好用工具,它可以使我们能够轻易地管理系统的主机名。

当你使用这个原生命令时,它可以立刻改变主机名而无需重启来生效。

但假如你通过手动修改某个配置文件来更改主机名,那么就可能需要经过重启来生效。

在这篇文章中,我们将展示在使用 systemd 的系统中改变主机名的 4 种方法。

hostnamectl 命令允许在 Linux 中设置三类主机名,它们的细节如下:

◈  静态: 这是静态主机名,由系统管理员添加。
◈  瞬时/动态: 这个由 DHCP 或者 DNS 服务器在运行时赋予。
◈  易读形式: 它可以由系统管理员赋予。这个是自由形式的主机名,以一种易读形式来表示服务器,例如 “JBOSS UAT Server” 这样的名字。

这些都可以使用下面 4 种方法来设置。

◈  hostnamectl 命令:控制系统主机名。
◈  nmcli 命令:是一个控制 NetworkManager 的命令行工具。
◈  nmtui 命令:是一个控制 NetworkManager 的文本用户界面。
◈  /etc/hostname 文件:这个文件中包含系统的静态主机名。

方法 1:在 Linux 中使用 hostnamectl 来改变主机名

hostnamectl 可被用来查询和改变系统的主机名,以及相关设定。只需运行 hostnamectl 便可以查看系统的主机名了。

   
   
     
  1. $ hostnamectl

或者使用下面的命令:

   
   
     
  1. $ hostnamectl status
  2. Static hostname: daygeek-Y700
  3. Icon name: computer-laptop
  4. Chassis: laptop
  5. Machine ID: 31bdeb7b83230a2025d43547368d75bc
  6. Boot ID: 267f264c448f000ea5aed47263c6de7f
  7. Operating System: Manjaro Linux
  8. Kernel: Linux 4.19.20-1-MANJARO
  9. Architecture: x86-64

假如你想改变主机名,可以使用下面的命令格式:

语法格式:

   
   
     
  1. $ hostnamectl set-hostname [YOUR NEW HOSTNAME]

使用下面的命令来使用 hostnamectl 更改主机名。在这个例子中,我将把主机名从 daygeek-Y700 改为 magi-laptop

   
   
     
  1. $ hostnamectl set-hostname magi-laptop

你可以使用下面的命令来查看更新后的主机名。

   
   
     
  1. $ hostnamectl
  2. Static hostname: magi-laptop
  3. Icon name: computer-laptop
  4. Chassis: laptop
  5. Machine ID: 31bdeb7b83230a2025d43547368d75bc
  6. Boot ID: 267f264c448f000ea5aed47263c6de7f
  7. Operating System: Manjaro Linux
  8. Kernel: Linux 4.19.20-1-MANJARO
  9. Architecture: x86-64

方法 2:在 Linux 中使用 nmcli 命令来更改主机名

nmcli 是一个命令行工具,旨在控制 NetworkManager 并报告网络状态。

nmcli 被用来创建、展示、编辑、删除、激活和注销网络连接,同时还可以用来控制和展示网络设备的状态。另外,它也允许我们更改主机名。

使用下面的命令来利用 nmcli 查看当前的主机名。

   
   
     
  1. $ nmcli general hostname
  2. daygeek-Y700

语法格式:

   
   
     
  1. $ nmcli general hostname [YOUR NEW HOSTNAME]

使用下面的命令来借助 nmcli 命令可以更改主机名。在这个例子中,我将把主机名从 daygeek-Y700 变成 magi-laptop

   
   
     
  1. $ nmcli general hostname magi-laptop

它可以在不重启下设备的情况下生效,但为了安全目的,只需要重启 systemd-hostnamed服务来使得更改生效。

   
   
     
  1. $ sudo systemctl restart systemd-hostnamed

再次运行相同的 nmcli 命令来检查更改后的主机名。

   
   
     
  1. $ nmcli general hostname
  2. magi-laptop

方法 3:在 Linux 中使用 nmtui 来更改主机名

nmtui 是一个基于 curses 库的 TUI 应用,被用来和 NetworkManager 交互。当启动 nmtui后,如果没有指定 nmtui 的第一个命令行参数,它将提醒用户选择执行某项活动。

在终端中运行下面的命令来开启文本用户界面。

   
   
     
  1. $ nmtui

使用向下箭头按键来选择 “Set system hostname” 这个选项,然后敲击回车键。

下面的截图展示的是原来的主机名。

我们需要做的就是删除原来的主机名,再输入新的主机名,然后选中 “OK” 敲击回车确认就可以了。

然后它将在屏幕中向你展示更新后的主机名,再次选中 “OK” 敲击回车确认就完成更改了。

最后,选中 “Quit” 按钮来从 nmtui 终端界面离开。

它可以在不重启设备的情况下生效,但为了安全目的,需要重启 systemd-hostnamed 服务来使得更改生效。

   
   
     
  1. $ sudo systemctl restart systemd-hostnamed

你可以运行下面的命令来查看更新后的主机名。

   
   
     
  1. $ hostnamectl
  2. Static hostname: daygeek-Y700
  3. Icon name: computer-laptop
  4. Chassis: laptop
  5. Machine ID: 31bdeb7b83230a2025d43547368d75bc
  6. Boot ID: 267f264c448f000ea5aed47263c6de7f
  7. Operating System: Manjaro Linux
  8. Kernel: Linux 4.19.20-1-MANJARO
  9. Architecture: x86-64

方法 4:在 Linux 中使用 /etc/hostname 来更改主机名

除了上面的方法外,我们还可以通过修改 /etc/hostname 文件来达到修改主机名的目的。但这个方法需要服务器重启才能生效。

使用下面的命令来检查 /etc/hostname 文件以查看当前的主机名:

   
   
     
  1. $ cat /etc/hostname
  2. daygeek-Y700

要改变主机名,只需覆写这个文件就行了,因为这个文件只包含主机名这一项内容。

   
   
     
  1. $ sudo echo "magi-daygeek" > /etc/hostname
  2. $ cat /etc/hostname
  3. magi-daygeek

然后使用下面的命令重启系统:

   
   
     
  1. $ sudo init 6

最后查看 /etc/hostname 文件的内容来验证主机名是否被更改了。

   
   
     
  1. $ cat /etc/hostname
  2. magi-daygeek

via: https://www.2daygeek.com/four-methods-to-change-the-hostname-in-linux/

作者:Magesh Maruthamuthu[3] 选题:lujun9972 译者:FSSlc 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

登录查看更多
0

相关内容

Linux 是一系列类 Unix 计算机操作系统的统称。该操作系统的核心为 Linux 内核。Linux 操作系统也是软件和开放源代码发展中最著名的例子之一。
【2020新书】实战R语言4,323页pdf
专知会员服务
98+阅读 · 2020年7月1日
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
Python导论,476页pdf,现代Python计算
专知会员服务
254+阅读 · 2020年5月17日
【高能所】如何做好⼀份学术报告& 简单介绍LaTeX 的使用
算法与数据结构Python,369页pdf
专知会员服务
160+阅读 · 2020年3月4日
报告 | 2020中国5G经济报告,100页pdf
专知会员服务
97+阅读 · 2019年12月29日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
83+阅读 · 2019年11月25日
用 Python 开发 Excel 宏脚本的神器
私募工场
26+阅读 · 2019年9月8日
Kali Linux 渗透测试:密码攻击
计算机与网络安全
15+阅读 · 2019年5月13日
一个牛逼的 Python 调试工具
机器学习算法与Python学习
15+阅读 · 2019年4月30日
7 款实用到哭的App,只说一遍
高效率工具搜罗
84+阅读 · 2019年4月30日
支持多标签页的Windows终端:Fluent 终端
Python程序员
7+阅读 · 2019年4月15日
深大教授开源的人脸检测库,速度号称史上最快
大数据技术
9+阅读 · 2019年3月21日
34个最优秀好用的Python开源框架
专知
9+阅读 · 2019年3月1日
Android P正式发布,你需要尽快做适配了
前端之巅
3+阅读 · 2018年8月7日
Python 杠上 Java、C/C++,赢面有几成?
CSDN
6+阅读 · 2018年4月12日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
Object Detection in 20 Years: A Survey
Arxiv
48+阅读 · 2019年5月13日
Arxiv
3+阅读 · 2018年11月29日
Arxiv
8+阅读 · 2018年5月17日
VIP会员
相关VIP内容
【2020新书】实战R语言4,323页pdf
专知会员服务
98+阅读 · 2020年7月1日
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
Python导论,476页pdf,现代Python计算
专知会员服务
254+阅读 · 2020年5月17日
【高能所】如何做好⼀份学术报告& 简单介绍LaTeX 的使用
算法与数据结构Python,369页pdf
专知会员服务
160+阅读 · 2020年3月4日
报告 | 2020中国5G经济报告,100页pdf
专知会员服务
97+阅读 · 2019年12月29日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
83+阅读 · 2019年11月25日
相关资讯
用 Python 开发 Excel 宏脚本的神器
私募工场
26+阅读 · 2019年9月8日
Kali Linux 渗透测试:密码攻击
计算机与网络安全
15+阅读 · 2019年5月13日
一个牛逼的 Python 调试工具
机器学习算法与Python学习
15+阅读 · 2019年4月30日
7 款实用到哭的App,只说一遍
高效率工具搜罗
84+阅读 · 2019年4月30日
支持多标签页的Windows终端:Fluent 终端
Python程序员
7+阅读 · 2019年4月15日
深大教授开源的人脸检测库,速度号称史上最快
大数据技术
9+阅读 · 2019年3月21日
34个最优秀好用的Python开源框架
专知
9+阅读 · 2019年3月1日
Android P正式发布,你需要尽快做适配了
前端之巅
3+阅读 · 2018年8月7日
Python 杠上 Java、C/C++,赢面有几成?
CSDN
6+阅读 · 2018年4月12日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
Top
微信扫码咨询专知VIP会员