ssh别名和多服务器同步文件

设置ssh别名

  1. 在 ~ 下创建文件夹 .ssh
  2. 在 .ssh 文件夹中创建文件 config
  3. 在 config 文件中,书写如下配置

s01:别名

HostName:另一个服务器地址

User:以什么身份登录

(还有其他的配置,请自行查询)

bash 复制代码
Host s01
	HostName 172.16.24.4
	User root
  1. 使用:ssh s01 就可以连接远端服务器了

多服务器同步文件

  1. 在所有节点服务器上安装yum install rsync -y
  2. 在 /usr/local/bin 文件夹中创建文件 xsync
  3. 在xsync中书写如下配置,注意修改循环位置的别名
bash 复制代码
#!/bin/bash
#1 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if [ $pcount -lt 1 ]
then
    echo Not Enough Arguement!
    exit;
fi

#2. 遍历集群所有机器
# 也可以采用:
# for host in hadoop{102..104};
for host in hadoop102 hadoop103 hadoop104
do
    echo ====================    $host    ====================
    #3. 遍历所有目录,挨个发送
    for file in $@
    do
        #4 判断文件是否存在
        if [ -e $file ]
        then
            #5. 获取父目录
            pdir=$(cd -P $(dirname $file); pwd)
            echo pdir=$pdir
            
            #6. 获取当前文件的名称
            fname=$(basename $file)
            echo fname=$fname
            
            #7. 通过ssh执行命令:在$host主机上递归创建文件夹(如果存在该文件夹)
            ssh $host "mkdir -p $pdir"
            
			#8. 远程同步文件至$host主机的$USER用户的$pdir文件夹下
            rsync -av $pdir/$fname $USER@$host:$pdir
        else
            echo $file does not exists!
        fi
    done
done
  1. 修改xsync文件的权限 chmod 777 xsync

配置免密登录(ssh别名登录也如此)

  1. 生成秘钥对 ssh-keygen -t rsa
    • 然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
    • 使用rsa算法生成秘钥对
    • 生成的秘钥对在用户家目录下: /home/user/.ssh
  2. 将公钥拷贝到要免密登录的目标机器上
bash 复制代码
$ ssh-copy-id s02

参考链接

https://blog.csdn.net/select_alter_drop/article/details/100131943
https://www.cnblogs.com/0or1/p/10363977.html
https://blog.csdn.net/kl28978113/article/details/78508365

相关推荐
江湖有缘4 分钟前
Docker部署SurveyKing调查问卷系统和考试系统
运维·docker·容器
小宇的天下10 分钟前
Cadence allegro---assign net
服务器·php·apache
树℡独9 小时前
ns-3仿真之应用层(五)
服务器·网络·tcp/ip·ns3
小小管写大大码9 小时前
如何让vscode变得更智能?vscode接入claude实现自动编程
运维·ide·vscode·自动化·编辑器·ai编程·腾讯云ai代码助手
zhang1338308907510 小时前
CG-09H 超声波风速风向传感器 加热型 ABS材质 重量轻 没有机械部件
大数据·运维·网络·人工智能·自动化
a413244710 小时前
ubuntu 25 安装vllm
linux·服务器·ubuntu·vllm
Configure-Handler10 小时前
buildroot System configuration
java·服务器·数据库
津津有味道10 小时前
易语言TCP服务端接收刷卡数据并向客户端读卡器发送指令
服务器·网络协议·tcp·易语言
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.11 小时前
Keepalived VIP迁移邮件告警配置指南
运维·服务器·笔记
物联网软硬件开发-轨物科技11 小时前
【轨物洞见】告别“被动维修”!预测性运维如何重塑老旧电站的资产价值?
运维·人工智能