在CentOS或RHEL中,有三種定義的主機名:靜態的(static),瞬態的(transient),以及靈活的(pretty)。「靜態」主機名也稱爲內核主機名,是系統在啓動時從 /etc/hostname 自動初始化的主機名。「瞬態」主機名是在系統運行時臨時分配的主機名,例如,經過DHCP或DNS服務器分配。靜態主機名和瞬態主機名都聽從做爲互聯網域名一樣的字符限制規則。而另外一方面,「靈活」主機名則容許使用自由形式(包括特殊/空白字符)的主機名,以展現給終端用戶。shell
在CentOS7/RHEL7中,有個叫 hostnamectl 的命令行工具,它容許你查看或修改與主機名相關的配置。服務器
要查看主機名相關的設置:工具
$ hostnamectl status
只查看靜態,瞬態或靈活主機名,分別使用「--static」,「--transient」,「--pretty」選項:spa
$ hostnamectl --static
$ hostnamectl --transient
$ hostnamectl --pretty
在修改靜態,瞬態主機名時,任何特殊字符或空白字符會被移除,而提供的參數中的任何大寫字母會自動轉化爲小寫。一旦修改了靜態主機名,/etc/hostname將被自動更新。然而,/etc/hosts不會更新以保存所作的修改,因此你須要手動更新 /etc/hosts。命令行
若是你只想修改特定的主機名(靜態,瞬態或靈活),你能夠使用"--static","--transient"或「--pretty」選項,例如只修改靜態主機名:code
$ sudo hostnamectl --static set-hostname myhosts
注意,你沒必要重啓機器以激活永久主機名修改。上面的命令會當即修改內核主機名。註銷並從新登入後在命令行提示來觀察新的靜態主機名。
域名