如何修改Linux hostname主机名?

版权声明:原创不易,未经作者允许请勿随意转载!因个人能力和精力有限,难免有疏漏和不足之处,欢迎指正,谢谢~ https://blog.csdn.net/lijing742180/article/details/88413999

本文环境:Linux CentOS 7

在 Linux 中,hostname 指的是当前系统的主机名称。

1、查看当前系统的主机名

  • 通过 hostname 命令查看;
  • 通过环境变量 HOSTNAME查看。

例如:

[root@AY1307311912260196fcZ ~]# hostname
AY1307311912260196fcZ

[root@AY1307311912260196fcZ ~]# echo $HOSTNAME
AY1307311912260196fcZ

2、修改hostname有几种方式?

序号 命令 是否永久修改
1 hostname NewName 修改后在新会话中立即生效;
临时修改,reboot 后失效
2 echo NewName > /proc/sys/kernel/hostname 同上
3 sysctl kernel.hostname=NewName 同上
4 修改/etc/sysconfig/network文件中的HOSTNAME变量 永久性修改;
但需要重启生效

其中, /etc/sysconfig/network 文件类似下面这样:

[root@po132345806-a ~]# more /etc/sysconfig/network 
NETWORKING=yes 
NETWORKING_IPV6=yes 
HOSTNAME=localhost.localdomain

这里若想立即生效,可以同时执行sysctl kernel.hostname命令即可:

修改了/etc/sysconfig/network下的HOSTNAME后,然后使用sysctl kernel.hostname命令使其立即生效

[root@NewName ~]# sysctl kernel.hostname=NewName2

kernel.hostname = NewName2

注意当前会话还是不会变化,但是后续新建会话会生效。

3、修改了hostname后,如何使其立即+永久生效而不用重启操作系统?

前面介绍的四种方法,前三种是临时修改,第四种是永久修改,若要达到不重启立即且永久生效,只需前三种方式任选一种 + 第四种即可。

例如:

方法1 + 方法4:

1、先修改 "/etc/sysconfig/network" 中的 HOSTNAME 值

2、然后使用 "echo NewName2 > /proc/sys/kernel/hostname"

注意当前会话还是不会变化,但是后续新建会话则会生效。

猜你喜欢

转载自blog.csdn.net/lijing742180/article/details/88413999