CentOS 7上如何修改主機(jī)名hostname,其實(shí)centos7和以前的版本里還是有些區(qū)別的,,首先了解下在CentOS 7中,有三種定義的主機(jī)名:靜態(tài)的(static),,瞬態(tài)的(transient),,和靈活的(pretty)。
“靜態(tài)”主機(jī)名也稱為內(nèi)核主 機(jī)名,,是系統(tǒng)在啟動(dòng)時(shí)從/etc/hostname自動(dòng)初始化的主機(jī)名,。
“瞬態(tài)”主機(jī)名是在系統(tǒng)運(yùn)行時(shí)臨時(shí)分配的主機(jī)名,例如,,通過DHCP或mDNS服 務(wù)器分配,。靜態(tài)主機(jī)名和瞬態(tài)主機(jī)名都遵從作為互聯(lián)網(wǎng)域名同樣的字符限制規(guī)則。
“靈活”主機(jī)名則允許使用自由形式(包括特殊/空白字符)的主機(jī) 名,,以展示給終端用戶(如Linuxidc),。
而在CentOS 7中,有個(gè)叫hostnamectl的命令行工具,,它允許你查看或修改與主機(jī)名相關(guān)的配置,。
1.要查看主機(jī)名相關(guān)的設(shè)置:
[root@localhost ~]# hostnamectl
Static hostname: localhost.localdomain
Icon name: computer
Chassis: n/a
Machine ID: 80a4fa4970614cf6be9597ecd6f097a9
Boot ID: 28420e272e1847a583718262758bd0f7
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-123.el7.x86_64
Architecture: x86_64
[root@localhost ~]# hostnamectl status
Static hostname: localhost.localdomain
Icon name: computer
Chassis: n/a
Machine ID: 80a4fa4970614cf6be9597ecd6f097a9
Boot ID: 28420e272e1847a583718262758bd0f7
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-123.el7.x86_64
Architecture: x86_64
2.只查看靜態(tài)、瞬態(tài)或靈活主機(jī)名,,分別使用“--static”,“--transient”或“--pretty”選項(xiàng),。
[root@localhost ~]# hostnamectl --static
localhost.localdomain
[root@localhost ~]# hostnamectl --transient
localhost.localdomain
[root@localhost ~]# hostnamectl --pretty
3.要同時(shí)修改所有三個(gè)主機(jī)名:靜態(tài),、瞬態(tài)和靈活主機(jī)名:
[root@localhost ~]# hostnamectl set-hostname Linuxidc
[root@localhost ~]# hostnamectl --pretty
Linuxidc
[root@localhost ~]# hostnamectl --static
Linuxidc
[root@localhost ~]# hostnamectl --transient
Linuxidc
就像上面展示的那樣,在修改靜態(tài)/瞬態(tài)主機(jī)名時(shí),,任何特殊字符或空白字符會被移除,,而提供的參數(shù)中的任何大寫字母會自動(dòng)轉(zhuǎn)化為小寫。一旦修改了靜態(tài)主機(jī) 名,,/etc/hostname 將被自動(dòng)更新,。然而,/etc/hosts 不會更新以保存所做的修改,,所以你每次在修改主機(jī)名后一定要手動(dòng)更新/etc/hosts,,之后再重啟CentOS 7。否則系統(tǒng)再啟動(dòng)時(shí)會很慢,。
4.手動(dòng)更新/etc/hosts
vim /etc/hosts
127.0.0.1 Linuxidc hunk_zhu
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain
::1 localhost localhost.localdomain localhost6 localhost6.localdomai
5.重啟CentOS 7 之后(reboot -f ),,
[root@Linuxidc ~]# hostname
Linuxidc
[root@hunk_zhu ~]# hostnamectl --transient
Linuxidc
[root@hunk_zhu ~]# hostnamectl --static
Linuxidc
[root@hunk_zhu ~]# hostnamectl --pretty
Linuxidc
6.如果你只想修改特定的主機(jī)名(靜態(tài),瞬態(tài)或靈活),,你可以使用“--static”,“--transient”或“--pretty”選項(xiàng),。
例如,,要永久修改主機(jī)名,你可以修改靜態(tài)主機(jī)名:
[root@localhost ~]# hostnamectl --static set-hostname Linuxidc
重啟CentOS 7 之后(reboot -f ),
[root@Linuxidc ~]# hostnamectl --static
Linuxidc
[root@Hunk_zhu ~]# hostnamectl --transient
Linuxidc
[root@Hunk_zhu ~]# hostnamectl --pretty
Linuxidc
[root@Hunk_zhu ~]# hostname
其實(shí),,你不必重啟機(jī)器以激活永久主機(jī)名修改,。上面的命令會立即修改內(nèi)核主機(jī)名。注銷并重新登入后在命令行提示來觀察新的靜態(tài)主機(jī)名,。