需要强制更新主机名而不重新启动

sal*_*tzo 4 prompt hostname centos

我需要更改系统的主机名而不重新启动它。我正在运行 CentOS 7,并且 /etc/hostname 文件中具有正确的主机名,但我仍然在提示时显示旧主机名。我知道当我重新启动系统时,它会检查主机名文件并应用它,但是我是否可以在不重新启动的情况下更新该文件?以下是来自命令行的一些信息:

[root@gandalf sysconfig]# cat network
NETWORKING=yes
GATEWAY=192.168.80.1
HOSTNAME="sauron.domain.com"
[root@gandalf sysconfig]# cd ..
[root@gandalf etc]# cat hostname
sauron
[root@gandalf etc]# 
Run Code Online (Sandbox Code Playgroud)

我无法很快重新启动该服务器,并且由于主机名显示较旧的系统名称,我的一些团队正在混淆服务器。简单地说:需要提示来显示[user@sauron dir]#而不是[user@gandalf dir]#.

谷歌对此进行了搜索,但找不到一种无需重新启动即可实现此目的的方法。感谢您的考虑!

Tim*_*tin 5

您应该能够使用以下hostname命令来执行此操作:

hostname -F /etc/hostname
Run Code Online (Sandbox Code Playgroud)

进行此更改后,之前的主机名仍将显示在当前提示符下。要在不重新启动的情况下查看更改,请输入新的 shell。如果您使用的是bash,请输入:

bash
Run Code Online (Sandbox Code Playgroud)

hostname现在应该会显示 您的新内容。