主机名和域名(教你在Linux中修改主机名)

前言何谓主机名?简单来说如上图,红框地方所示的localhost就是默认的主机名。这是这篇文章的直接和根本目的[狗头]简介我们知道,无论是在局域网还是公网上,每台主机都有一个IP地址,其作用是为了区分彼此,也就是说IP地址相当于主机的门牌号,通过门牌号可以找到对应的主机。但IP地址有一点不好,就是不方便记忆,所以才有了域名。当然,域名一般(有时候局域网也会通过修改hosts文件设置域名供内部访问)只在在公网(INTERNET)中存在,每个域名都对应一个IP地址,每个IP可以有多个对应的域名。那么上面说了半天,我们的主角“主机名”又是用于什么的呢?既然公网有区分了,那局域网肯定也要有啊。在一个局域网中,每台机器都有一个主机名,用于主机与主机之间的区分。我们可以通过为每台机器设置容易记忆和理解的主机名,来达到容易访问别人的目的。当然,在目前的云服务器中,更多的只是为了自己看着终端舒服说明这里因为我服务器常用的是CentOS,就以CentOS8来说明。如果手上没有测试环境的,可以参考我之前的两篇文章:哎呀,突然想弄个Linux centos 8系统玩玩,怎么办? 聊一聊VMware16的centos8与Win10的Xshell碰撞 又因为CentOS7开始,新增了一个 hostnamectl 命令,所以下面我会分 CentOS7之后 和 Centos7之前 两个方面演示说明。CentOS7之前一、查看当前主机名通过 uname 和 hostname 命令都可查看从图中,可以看出,我目前的主机名是 localhost.localdomain,命令提示符前面的 localhost 只是简写。二、通过hostname命令来临时修改命令格式:hostname newhostname注意:这个只能暂时修改主机名,用logout命令登出并重新登陆即可生效。但不是永久生效。修改logout登出重新登录连接,可以看到,上图红框内容,已经修改成功了。三、通过配置文件/etc/sysconfig/network 修改进入后,填写内容:NETWORKING=yes
HOSTNAME=主机名保存退出,但是要下次重启之后才能生效(如果你想现在立马就生效,那就在使用hostname设置下)。CentOS7之后那就简单了,直接一个 hostnamectl 命令即可搞定。通过图中可以看到,我们使用了 hostnamectl set-hostname ‘技术好奇心’ 命令来设置主机名,然后通过 hostnamectl 打印查看当前的主机名状态。但是为啥状态结果中有个Pretty hostname已经改变了,Pretty hostname 和 Transient hostname 却没改变呢?还有,为啥有三个hostname????先别急,我们再来修改一下试试:是不是很奇怪?这次结果中没有Pretty hostname 和 Transient hostname ,仅剩 Static hostname了。注:命令提示符前面之所以还是 jishuhaoqixin ,是因为这里为了节约时间我没有reboot重启,大家可以自行测试下。哈哈,不卖关子了,之所以会发生这种情况,我们还要从CentOS7中定义的三种主机名说起。CentOS7中定义的三种主机在CentOS7中有三种定义的主机名:1、静态的(static):静态主机名也称为内核主机名,是系统在启动时从/etc/hostname内自动初始化的主机名。2、瞬态的(transient):瞬态主机名是在系统运行时临时分配的主机名。3、灵活的(pretty):灵活主机名则允许使用特殊字符的主机名。看到没?我们上面使用 hostnamectl 第一次是不是设置的 技术好奇心,对于英文来说,妥妥的特殊字符吧?而第二次 haoqixin ,就没这个问题,直接设置了 static。总结OK,到此结束,大家快去学习(装x)吧。

本文出自快速备案,转载时请注明出处及相应链接。

本文永久链接: https://kuaisubeian.cc/34299.html

kuaisubeian