在 CentOS 上设置新的主机名,重启后会变回来

adr*_*TNT 8 centos hostname host

在 CentOS (5.x) 上,我有一个主机名设置为“olddomain.com”的 VPS,至少这是我在键入“hostname”命令时得到的域。

我想将其更改为“localhost.localdomain”,因为我认为它更通用且更可靠。

localhost.localdomain 已存在于这些文件中:/etc/sysconfig/network AND /etc/hosts

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=localhost.localdomain
GATEWAY=95.xx.xx.xx
Run Code Online (Sandbox Code Playgroud)

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6
Run Code Online (Sandbox Code Playgroud)

所以接下来我尝试了这些命令:

hostname localhost.localdomain
Run Code Online (Sandbox Code Playgroud)

hostname -v localhost.localdomain
Run Code Online (Sandbox Code Playgroud)

“hostname”命令现在返回这个新值。但是在重新启动后它会变回 olddomain.com 或者至少这是“主机名”命令的返回。

还有什么要编辑的吗?

小智 9

将以下行添加到您的 /etc/sysctl.conf配置文件中。

kernel.hostname = hostname
kernel.domainname = domain.com
Run Code Online (Sandbox Code Playgroud)

并执行命令sysctl -p /etc/sysctl.conf以读取和应用/etc/sysctl.conf配置文件的更改。