1、需要在本地服务器和远程服务器均安装rsync
sudo apt update
sudo apt install rsync
2\创建一个同步的脚本,如 tongbu.sh, 内容如下。如果发现有文件更新,则同步后重启远端服务器。
#!/bin/sh
#下面的domains的服务器名称对应/root/.ssh/config中的名称
domains="abc dfg ddd"
LOCAL_DIR="/你要同步的本地目录/"
REMOTE_DIR="/远程目录/"
for domain in $domains
do
RSYNC_CMD="rsync -avzL --delete ${LOCAL_DIR} $domain:${REMOTE_DIR}"
SSH_CMD="ssh $domain"
OUTPUT=$(eval ${RSYNC_CMD})
if echo "${OUTPUT}" | grep -q "同步的文件名称"; then
echo "$domain: Files have been updated. Rebooting remote server..."
${SSH_CMD} 'sudo reboot'
else
echo "$domain: No files were updated. No reboot required."
fi
done
没有评论:
发表评论