如何在CentOS 7上修改主机名

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

静态的(static),瞬态的(transient),和灵活的(pretty)。

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

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

静态主机名和瞬态主机名都遵从作为互联网域名同样的字符限制规则。

而另一方面,灵活主机名则允许使用自由形式(包括特殊/空白字符)的主机名,以展示给终端用户(如test001)。

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

1. 要查看主机名相关的设置:

  1. [root@localhost ~]# hostnamectl
  2. Static hostname: localhost.localdomain
  3. Icon name: computer-vm
  4. Chassis: vm
  5. Machine ID: 21ff9d4ebdd94e949b9fd6cbdb1926c0
  6. Boot ID: 2a952e91c02841e3ae10de0d16dd3f01
  7. Virtualization: kvm
  8. Operating System: CentOS Linux 7 (Core)
  9. CPE OS Name: cpe:/o:centos:centos:7
  10. Kernel: Linux 3.10.0-327.el7.x86_64
  11. Architecture: x86-64
  1. [root@localhost ~]# hostnamectl status
  2. Static hostname: localhost.localdomain
  3. Icon name: computer-vm
  4. Chassis: vm
  5. Machine ID: 21ff9d4ebdd94e949b9fd6cbdb1926c0
  6. Boot ID: 2a952e91c02841e3ae10de0d16dd3f01
  7. Virtualization: kvm
  8. Operating System: CentOS Linux 7 (Core)
  9. CPE OS Name: cpe:/o:centos:centos:7
  10. Kernel: Linux 3.10.0-327.el7.x86_64
  11. Architecture: x86-64

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

  1. [root@localhost ~]# hostnamectl --static
  2. localhost.localdomain
  3. [root@localhost ~]# hostnamectl --transient
  4. localhost.localdomain
  5. [root@localhost ~]# hostnamectl --pretty

3. 要同时修改所有三个主机名:静态、瞬态和灵活主机名:

  1. [root@localhost ~]# hostnamectl set-hostname test001
  2. [root@localhost ~]# hostnamectl --pretty
  3. [root@localhost ~]# hostnamectl --static
  4. test001
  5. [root@localhost ~]# hostnamectl --transient
  6. test001

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

4. 手动更新/etc/hosts

  1. vim /etc/hosts
  2. #127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
  3. #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  4. 127.0.0.1 local
  5. ::1 local

5. 重启CentOS 7 之后(reboot -f ),

  1. [root@test001 ~]# hostname
  2. test001
  3. [root@test001 ~]# hostnamectl
  4. Static hostname: test001
  5. Icon name: computer-vm
  6. Chassis: vm
  7. Machine ID: 21ff9d4ebdd94e949b9fd6cbdb1926c0
  8. Boot ID: 2a952e91c02841e3ae10de0d16dd3f01
  9. Virtualization: kvm
  10. Operating System: CentOS Linux 7 (Core)
  11. CPE OS Name: cpe:/o:centos:centos:7
  12. Kernel: Linux 3.10.0-327.el7.x86_64
  13. Architecture: x86-64

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

  1. [root@localhost ~]# hostnamectl --static set-hostname test001

重启CentOS 7 之后(reboot -f ),

  1. [root@localhost ~]# hostnamectl --static
  2. local
  3. [root@localhost ~]# hostnamectl --transient
  4. local
  5. [root@localhost ~]# hostnamectl --pretty
  6. local
  7. [root@localhost ~]# hostname
  8. local

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

转自:[ http://www.linuxidc.com/Linux/2014-11/109238.html]


» 本文链接:https://blog.apires.cn/archives/89.html
» 转载请注明来源:Java地带  » 《如何在CentOS 7上修改主机名》

» 本文章为Java地带整理创作,欢迎转载!转载请注明本文地址,谢谢!
» 部分内容收集整理自网络,如有侵权请联系我删除!

» 订阅本站:https://blog.apires.cn/feed/

标签: hostnamectl

添加新评论