Linux 重命名 服务器名,Linux批量修改多台服务器的主机名(hostname)

一。场景介绍:

一个环境下有非常多的服务器时,每台服务器的Hostname都不一样,有成千上百台服务器,如果通过ssh的方式逐一进行修改,那么对我们来说,工作量是非常巨大,且效率非常低下,况且这个主机名对于我们平时运维也是至关重要,当我们ssh到某一台服务器,如果没有设置主机名,那么就需要通过其他途径来得知该服务器的位置信息等等,给我们运维人员带来很大的运维烦恼。

二。准备工作

1.所有服务器操作系统root账户密码需要一致,且网络互通

2.pssh工具:可以实现批量执行命令,发送文件等等,详细可以参考《Linux批量操作pssh工具》

3.ssh密钥同步:即先生成ssh-key,并通过pscp工具发送至每一台服务器/root/.ssh上,实现服务器之间ssh免密码登录,详细可以参考http://www.linuxidc.com/Linux/2017-04/142632.htm

4.设计好每台服务器IP与主机名Hostname对应关系      /root/host    例如:

192.168.225.128         server1

192.168.225.129         server2

192.168.225.130         server3

192.168.225.131         server4

192.168.225.132         server5

192.168.225.133         server6

192.168.225.134         server7

192.168.225.135         server8

192.168.225.136         server9

三。批量修改主机名

1.添加hostname.sh文件

[root@server1 ~]# vim hostname.sh

ip=`ifconfig eth0 | grep 'inet ' | awk '{print $2}'`

hostname=`cat /root/host | grep $ip | awk '{print $2}'`

echo $ip

echo $hostname

hostnamectl set-hostname --static $hostname

hostname $hostname

注意:咱们是通过服务器IP地址来修改主机名的,上面接口一定要对应准确,命令较为简单。

2.把生成的这两个文件(host与hostname.sh)通过pscp工具发送到所有的服务器上任意的同一目录下

pscp -h iplist /root/host /root/hostname.sh /root/        # iplist是所有服务器IP,如果不会使用,请看准备工作第二点。

3.通过pssh工具,批量给予hostname.sh这个文件的可执行权限

pssh -h iplist -i  'chmod +x /root/hostname.sh'             # iplist是所有服务器IP,如果不会使用,请看准备工作第二点。

4.通过pssh工具,批量执行hostname.sh文件

pssh -h iplist -i  'sh  /root/hostname.sh'

四。其他

这种批量修改方法比较简单,合适咱们这种不经常使用脚本的人,另外以上操作系统为CentOS7以上,如果您的操作系统为centos7以下,根据操作系统修改hostname的方法不同,批量修改主机名的方法都是大同小异。其他哥们如果有更好更简单方便的方法,也请指导指导,谢谢。

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值