🍅程序员小王的博客:程序员小王的博客
🍅 欢迎点赞 👍 收藏 ⭐留言 📝
🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕
一、前言
就是我们需要集群部署hadoop,Flink时,写ip地址太长了,然后大家想的就是能不能用比如:node1,node2,node3去代替IP地址,在一个局域网中,每台机器都有一个主机名,便于主机与主机之间的区分,因此为每台机器设置主机名,以容易记忆的方法来相互访问。比如我们在局域网中可以为根据每台机器的功用来为其命名,也可以通过各个节点来命名。
二、三种方式给linux主机系统改名
在linux系统中,设置主机名我知道的有三种不同的方式,下面我们来看看这几种方式之间的区别。
1、通过hostname 新名字
- 命令格式:hostname newhostname
#1.修改主机名为node3
[root@node1 apps]# hostname node3
#2.退出系统,重新登录
[root@node1 apps]# logout
Last login: Wed Apr 13 10:52:37 2022 from 192.168.43.1
#3.node已经改为node3了
[root@node3 ~]#
- 可以看到,修改后,看到的主机名并没有改变,但是当我们打开新的命令查看或者重新登录后连接,主机名就生效了。说明该方式是暂时修改主机名,用logout命令登出并重新登录即可生效。但不是永久生效。
2、通过修改配置文件
修改配置文件/etc/sysconfig/network也可以对主机名进行修改,linux主机名在下次重启之后开始生效,如需立即永久生效,需配合hostname命令即可。
[root@node3 ~]# vi /etc/sysconfig/network
# 1.设置主机名
NETWORKING=yes
HOSTNAME=node2
#2.查看是否设置成功
[root@node3 ~]# cat /etc/sysconfig/network
- 这样,修改后重新登录或者打开新的连接就生效了,重启的话会自动调用配置文件的设置,自动使主机名生效。
PS:对于在Ubuntu系统中,主机名存放在/etc/hostname文件中,修改主机名时,编辑hostname文件,在文件中输入新的主机名并保存该文件即可。
[root@localhost~]# vi /etc/hostsname
[root@localhost ~]# cat /etc/hostsname
node2
[root@localhost ~]#
3、使用 hostnamectl 来改变主机名
hostnamectl 命令允许在 Linux 中设置三类主机名,它们的细节如下:
1. 静态: 这是静态主机名,由系统管理员添加。
2. 瞬时/动态: 这个由 DHCP 或者 DNS 服务器在运行时赋予。
3. 易读形式: 它可以由系统管理员赋予。这个是自由形式的主机名,以一种易读形式来表示服务器,
例如 “JBOSS UAT Server” 这样的名字。
- 设置命令格式: hostnamectl set-hostname主机名
[root@node3 ~]# hostnamectl set-hostname node4
[root@node3 ~]# hostnamectl status
[root@node3 ~]# cat /etc/hostname
- 注意:这些需要重启启动就可以生效了!并且是永久生效哟!
该方式设置后,会自动将设置信息写入到配置文件中,无需额外编辑,属于立即生效,永久生效的,重启也会生效。
4、总结
最后总结一下,三种方式都能够临时或永久的修改主机名,如果是希望永久性修改主机名还是推荐使用第三种hostnamectl 命令的方式去修改,修改后即可永久生效,无需去修改配置额外的文件,非常方便。
版权归原作者 程序员小王java 所有, 如有侵权,请联系我们删除。