专栏首页ITCoder如何在 Ubuntu 20.04 上修改主机名

如何在 Ubuntu 20.04 上修改主机名

本文最先发布在:https://www.itcoder.tech/posts/how-to-change-hostname-on-ubuntu-20-04/

通常主机名在操作系统安装过程中设置或者在创建虚拟机的过程中动态指定的。

这篇指南讲解如何在 Ubuntu 20.04 上设置或者改变主机名,而不需要重新启动系统。

一、理解主机名

一个主机名就是在网络上标记一个设备的标签名称。在同一个网络中,你不应该有两台或者更多机器拥有同样的主机名。

在 Ubuntu 中,你可以使用hostnamectl命令编辑系统主机名以及相关设置。这个工具识别三种不同的主机名:

  • static - 传统主机名。它存储在/etc/hostname文件中,并且可以被用户设置
  • pretty - 一个自由形态的 UTF8 主机名,用来代表用户。例如: Linuxize's desktop
  • transient - 由 kernel 维护的动态主机名。 在运行过程中,DHCP 或者 mDNS 服务器可以改变 transient 主机名。默认情况下,它和 static 主机名一模一样。

我们强烈推荐使用完整域名(FQDN)来设置statictransient名称,例如host.example.com

仅仅 root 或者有 sudo 权限的用户可以修改系统主机名。

二、显示当前主机名

想要查看当前主机名,运行hostnamectl命令,不带任何参数:

hostnamectl

在这个例子中,当前主机名被设置为:ubuntu2004.localdomain

三、修改系统主机名

修改系统主机名是一个简单的过程,语法如下:

sudo hostnamectl set-hostname host.example.com
sudo hostnamectl set-hostname "Your Pretty HostName" --pretty
sudo hostnamectl set-hostname host.example.com --static
sudo hostnamectl set-hostname host.example.com --transient

例如,想要修改系统今天主机名到neptune.linuxize.com,你可以使用下面的命令:

sudo hostnamectl set-hostname neptune.linuxize.com

你也可以设置 pretty 主机名:

sudo hostnamectl set-hostname "Linuxize's laptop" --pretty

hostnamectl不产生任何输出。如果成功,返回0,否则,返回一个非0错误码。

静态主机名被存储在/etc/hostname,并且 pretty 主机名被存储在/etc/machine-info文件。

你不应该在同样的网络不同的机器上使用相同的主机名。

在大多数系统中,主机名在/etc/hosts中被映射到127.0.0.1。打开文件,并且修改旧的主机名到新的主机名。

127.0.0.1   localhost
127.0.0.1   neptune.linuxize.com

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

如果你在一个云实例上运行 Ubuntu,并且安装了cloud-init软件包,你也可以编辑/etc/cloud/cloud.cfg文件。这个软件包由云服务器厂商提供,通常默认被安装,并且它可以被用来处理云服务器实例的初始化。

如果文件存在于你的系统上,打开它:

sudo nano /etc/cloud/cloud.cfg

搜索"preserve_hostname”,并且将值从false修改到true

# This will cause the set+update hostname module to not operate (if true)
preserve_hostname: true

保存文件,并且关闭编辑器。

四、验证修改

想要验证主机名是否被完全修改,输入hostnamectl命令:

hostnamectl

你的新主机名将会在终端上被打印出来。

   Static hostname: neptune.linuxize.com
   Pretty hostname: Linuxize's desktop
         Icon name: computer-vm
           Chassis: vm
        Machine ID: a04e3543f3da460294926b7c41e87a0d
           Boot ID: aa31b274703440dfb622ef2bd84c52cb
    Virtualization: oracle
  Operating System: Ubuntu 20.04 LTS
            Kernel: Linux 5.4.0-26-generic
      Architecture: x86-64

五、总结

我们已经向你展示如何很简单地在 Ubuntu 20.04 上修改主机名,并且不需要重启机器。

还有很多理由你需要修改主机名。最普遍的理由就是,主机名需要在实例创建的时候进行自动设置。

原文 :https://linuxize.com/post/how-to-change-hostname-on-ubuntu-20-04/

版权声明:本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。

如果你有任何疑问,请通过以下方式联系我们:

微信:

微信群: 加上面的微信,备注微信群

QQ: 3217680847

QQ 群: 82695646

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何在 CentOS 8 上修改主机名

    有很多原因,你需要去改变主机名。最常见的原因就是,当自动创建实例的时候,需要自动设置主机名。

    雪梦科技
  • 如何在 Ubuntu 20.04 上设置或者修改时区

    本文最先发布在:https://www.itcoder.tech/posts/how-to-set-or-change-timezone-on-ubuntu-2...

    雪梦科技
  • 如何在 Ubuntu 20.04 上设置或者修改时区

    使用正确的时区,对于系统相关的任务和进程来说,是最基本的。例如,cron 守护进程,使用系统时区来执行定时任务,并且在日志中的时间戳也是基于相同的系统时区。

    雪梦科技
  • 如何在 Ubuntu 20.04 上设置 Apache 虚拟主机

    一个虚拟主机是一段 Apache 配置指令,它允许你在一台单独的服务器上运行一个或者多个指令。通过 虚拟主机,你可以指定网站根目录(托管网站文件),每个网站创建...

    雪梦科技
  • 如何在 Ubuntu 20.04 上安装 Apache Maven

    本文最先发布在 : https://www.itcoder.tech/posts/how-to-install-apache-maven-on-ubuntu-2...

    雪梦科技
  • 关于 Ubuntu 20.04 LTS Focal Fossa,我所知道的一切

    Ubuntu是目前领先的开源操作系统,它将于2020年4月23日发布名为Ubuntu 20.04 LTS Focal Fossa的新版本。目前,开发人员版本可供...

    用户8705048
  • macOS Big Sur 使用全新虚拟化框架创建超轻量虚拟机!

    之前我给大家介绍过如何?在 macOS 上使用 multipass 创建轻量级虚拟机来使用 Podman,众小伙伴纷纷齐说真香。今天我要给大家介绍一个全新的黑科...

    米开朗基杨
  • 如何在 Ubuntu 20.04 上安装 Apache

    本文最先发布在: https://www.itcoder.tech/posts/how-to-install-apache-on-ubuntu-20-04/

    雪梦科技
  • macOS Big Sur 使用全新虚拟化框架创建超轻量虚拟机!

    之前我给大家介绍过如何在 macOS 上使用 multipass 创建轻量级虚拟机来使用 Podman,众小伙伴纷纷齐说真香。今天我要给大家介绍一个全新的黑科技...

    程序猿DD

扫码关注云+社区

领取腾讯云代金券