我有以下脚本来检查更新,如果可用,请下载所有更新,但效率不高,因为它需要两次登录SSH。欢迎任何评论,以使其更好
#!/bin/sh
# Check configuration update every hour
# version 1.0
if ssh -i /root/.ssh/id_rsa abc@azx.example.com test -e /home/abc/update \> /dev/null 2\>\&1 ; then
rsync -avz -e "ssh -i /root/.ssh/id_rsa" abc@azx.example.com:/home/abc/ghz_upd/ /tmp/ghz
cd /tmp/ghz
sh ./ghz_upd.sh
rm -r /tmp/ghz
else
echo Not found
fi
答案 0 :(得分:1)
您可以尝试使用 ControlMaster 功能,这样多个ssh进程就可以共享一个连接。
要为给定主机配置它,请将以下内容添加到~/.ssh/config
文件中:
host *.example.com
Controlmaster yes
Controlpath ~/.ssh/socket/%r@%h:%p