沃梦达 / IT编程 / 服务器 / 正文

CentOS7修改主机名的三种方法

版权声明:本文为博主原创文章,转载请申明原文出处。 https://blog.csdn.net/xuheng8600/article/details/79983927在CentOS7中,有三种定义的主机名: 静态的(Static hostname)“静态”主机名也称为内核主机名...

版权声明:本文为博主原创文章,转载请申明原文出处。 https://blog.csdn.net/xuheng8600/article/details/79983927

在CentOS7中,有三种定义的主机名:

 

静态的(Static hostname)

“静态”主机名也称为内核主机名,是系统在启动时从/etc/hostname自动初始化的主机名。
 

瞬态的(Tansient hostname)

“瞬态”主机名是在系统运行时临时分配的主机名,例如,通过DHCP或mDNS服务器分配。
 

灵活的(Pretty hostname)

“灵活”主机名也有人叫做“别名”主机名。
“灵活”主机名则允许使用自由形式(包括特殊/空白字符)的主机名,以展示给终端用户(如xh01@f5)。
“静态”主机名和“瞬态”主机名都遵从作为互联网域名同样的字符限制规则。
 

在CentOS 7中,有个叫hostnamectl的命令行工具,它允许你查看或修改与主机名相关的配置。

 

 

查看主机名:

//查看一下当前主机名的情况,查看全部三种主机名

hostnamectl

//或者,查看全部三种主机名

hostnamectl status

//只查看静态、瞬态或灵活主机名,分别使用--static,--transient或--pretty选项

[root@xh00 ~]# hostnamectl --static

xh00

[root@xh00 ~]# hostnamectl --transient

xh01

[root@xh00 ~]# hostnamectl --pretty


//或者,查看到的是瞬态的(Tansient hostname)

hostname

//或者查看主机名配置文件,查看到的是静态的(Static hostname)

cat /etc/hostname

查看当前Linux操作系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等):

uname -a //查看到的是瞬态的(Tansient hostname)

cat /etc/redhat-release //查看操作系统环境

 

修改主机名:

 

方法1:临时有效

hostname 主机名 //只能临时修改的主机名,当重启机器后,主机名称又变回来了。

hostname xh01

 

方法2:永久生效

//永久性的修改主机名称,重启后能保持修改后的。

hostnamectl set-hostname xxx


//删除hostname

hostnamectl set-hostname ""

hostnamectl set-hostname "" --static

hostnamectl set-hostname "" --pretty

修改所有三个主机名:静态、瞬态和灵活主机名:
[root@localhost ~]# hostnamectl set-hostname xh00

[root@localhost ~]# hostnamectl --pretty

[root@localhost ~]# hostnamectl --static

xh00

[root@localhost ~]# hostnamectl --transient

xh00

    就像上面展示的那样,在修改静态/瞬态主机名时,任何特殊字符或空白字符会被移除,而提供的参数中的任何大写字母会自动转化为小写。
        一旦修改了静态主机名,/etc/hostname 将被自动更新。然而,/etc/hosts 不会更新以保存所做的修改,所以你每次在修改主机名后一定要手动更新/etc/hosts,之后再重启CentOS 7。否则系统再启动时会很慢。

手动更新/etc/hosts
vim /etc/hosts
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

127.0.0.1 qqmm

#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

::1 qqmm
  1. 重启CentOS 7 

reboot -f 

重启之后

[root@qqmm ~]# hostname

xh01

[root@qqmm ~]# hostnamectl

xh01

xh01如果你只想修改特定的主机名(静态,瞬态或灵活),你可以使用--static--transient--pretty选项。 例如,要永久修改主机名,你可以修改静态主机名:

[root@localhost ~]# hostnamectl --static set-hostname xh01

重启CentOS 7 之后

[root@localhost ~]# hostnamectl --static

xh01

[root@localhost ~]# hostnamectl --transient

xh01

[root@localhost ~]# hostnamectl --pretty

[root@localhost ~]# hostname

xh01

        其实,你不必重启机器以激活永久主机名修改。上面的命令会立即修改内核主机名,注销并重新登入后在命令行提示来观察新的静态主机名

方法3:永久生效

修改配置文件/etc/hostname来实现主机名的修改。把该文件内容hostname name中的name替换成自己想要的主机名重启即可。
 

vim /etc/hostname?
hostname ?myname

方法4:永久生效通过nmtui修改,之后重启hostnamed

nmcli general hostname servername

systemctl restart systemd-hostnamed

还可以通过nmtui进入图形界面来修改主机名。将光标通过键盘的上下键移动到“设定系统主机名”菜单处,按下回车键。

此时,屏幕出现“设定主机名”选项卡,输入需要设定的主机名,通过键盘方向键将光标移动到“确定”处,回车键确定即可完成主机名的修改。

 

 

本文标题为:CentOS7修改主机名的三种方法