测试2
是的,rsync 也有类似 ssh config 的配置文件!你可以创建 ~/.rsync/config 文件来管理多个服务器的同步配置。
方法一:使用 rsync 配置文件(推荐)#
创建配置文件:
mkdir -p ~/.rsync
cat > ~/.rsync/config << 'EOF'
[backup-server]
host = 服务器IP
user = sync
module = backup
password-file = /root/.rsync.password
EOF然后创建密码文件(如果没有的话):
echo "你的密码" > /root/.rsync.password
chmod 600 /root/.rsync.password现在可以简化命令为:
rsync -av /root/1panel-v2.0.12-linux-amd64.tar.gz backup-server::方法二:使用别名(更简单)#
在 ~/.bashrc 或 ~/.zshrc 中添加别名:
# 添加到 ~/.bashrc
alias rsync-backup='rsync -av --password-file=/root/.rsync.password'使用:
rsync-backup /root/1panel-v2.0.12-linux-amd64.tar.gz sync@服务器IP::backup方法三:使用脚本包装器#
创建脚本 /usr/local/bin/rsync-backup:
#!/bin/bash
rsync -av --password-file=/root/.rsync.password "$@" sync@服务器IP::backup给予执行权限:
chmod +x /usr/local/bin/rsync-backup使用:
rsync-backup /root/1panel-v2.0.12-linux-amd64.tar.gz方法四:完整配置示例(支持多个服务器)#
创建 ~/.rsync/config:
# 服务器1 - 备份服务器
[backup]
host = 192.168.1.100
user = sync
module = backup
password-file = /root/.rsync/backup.password
# 服务器2 - 网站服务器
[web]
host = 192.168.1.101
user = www
module = data
password-file = /root/.rsync/web.password
options = -avz --delete创建密码文件:
mkdir -p /root/.rsync
echo "密码1" > /root/.rsync/backup.password
echo "密码2" > /root/.rsync/web.password
chmod 600 /root/.rsync/*.password设置环境变量让 rsync 使用配置文件:
# 添加到 ~/.bashrc
export RSYNC_CONFIG=/root/.rsync/config使用:
# 同步到备份服务器
rsync /root/1panel-v2.0.12-linux-amd64.tar.gz backup::
# 同步到网站服务器(使用配置中的选项)
rsync /var/www/html web::推荐使用方法一或方法二,这样你以后执行同步命令就会简洁很多!