Linux操作系統的hostname是一個kernel變量,可以通過hostname命令來查看本機的hostname。也可以直接cat /proc/sys/kernel/hostname查看。
在CentOS中,有三種定義的主機名:靜态的(static),瞬态的(transient),和靈活的(pretty)。靜态主機名也稱為内核主機名,是系統在啟動時從/etc/hostname自動初始化的主機名。瞬态主機名是在系統運行時臨時分配的主機名,例如,通過DHCP或mDNS服務器分配。靜态主機名和瞬态主機名都遵從作為互聯網域名同樣的字符限制規則。而另一方面,靈活主機名則允許使用自由形式(包括特殊/空白字符)的主機名,以展示給終端用戶。
一、hostname命令查看主機名:
hostname
臨時修改主機名,重啟後失效:
hostname new_hostname
二、修改/etc/hostname
通過修改/etc/hostname, 重啟後hostname就變為新值。
三、hostnamectl命令在CentOS 7或8中,有個叫hostnamectl的命令行工具,它允許你查看或修改與主機名相關的配置。
hostnamectl set-hostname k8s-150
一旦修改了靜态主機名,/etc/hostname 将被自動更新。然而,/etc/hosts 不會更新以保存所做的修改,所以你每次在修改主機名後一定要手動更新/etc/hosts,之後再重啟CentOS 8。否則系統再啟動時會很慢。
手動更新/etc/hosts
vim /etc/hosts
其實,你不必重啟機器以激活永久主機名修改。上面的命令會立即修改内核主機名。
注銷并重新登入後在命令行提示來觀察新的靜态主機名。
cat /proc/sys/kernel/hostname
,