rsync为何成为运维必备工具?
rsync作为Linux系统下的"数据同步瑞士军刀",凭借增量备份、低带宽占用和多种传输协议支持三大特性,成为服务器数据备份与同步的首选方案。无论是日常文件同步还是大规模数据迁移,都能轻松应对。
5分钟掌握rsync核心用法
基本格式:
rsync [选项] 源位置 目标位置
常用选项速查表:
经典组合:
rsync -avz --delete source/ user@remote:/dest/
两种同步方式深度解析
本次案例数据同步流向如下所示:

方式1:SSH安全通道(推荐新手)
配置步骤:
1. 服务端创建专用账号
useradd syncuser && passwd syncuser
2. 设置目录ACL权限
setfacl -m u:syncuser:rwx dmdata/dmbak
3. 客户端执行同步
# 下行同步
rsync -avz syncuser@server_ip:/data/ local_backup/
# 上行同步
rsync -avz local_data/ syncuser@server_ip:/remote_backup/
案例演示
这里使用dmdba用户演示,没有用户可以根据步骤创建
1. 设置目录ACL权限
setfacl -m u:dmdba:rwx dmdata/dmbak
2. 客户端执行同步
在25.132端执行文件同步到/dmdata下
rsync -avz dmdba@192.168.25.118:/dmdata/dmbak/ /dmdata/
root@rgy-vmwarevirtualplatform:/dmdata# rsync -avz dmdba@192.168.25.118:/dmdata/dmbak/ /dmdata/
Authorized users only. All activities may be monitored and reported.
dmdba@192.168.25.118's password: #输入密码
receiving incremental file list
./
dbfull20250414/
dbfull20250414/dbfull20250414.bak
dbfull20250414/dbfull20250414.meta
dbfull20250414/dbfull20250414_0/
dbfull20250414/dbfull20250414_0/dbfull20250414_0.bak
dbfull20250414/dbfull20250414_0/dbfull20250414_0.meta
dbfull20250414/dbfull20250414_1/
dbfull20250414/dbfull20250414_1/dbfull20250414_1.bak
dbfull20250414/dbfull20250414_1/dbfull20250414_1.meta
dbfull20250414/dbfull20250414_2/
dbfull20250414/dbfull20250414_2/dbfull20250414_2.bak
dbfull20250414/dbfull20250414_2/dbfull20250414_2.meta
dbfull20250414/dbfull20250414_3/
dbfull20250414/dbfull20250414_3/dbfull20250414_3.bak
dbfull20250414/dbfull20250414_3/dbfull20250414_3.meta
dbfull20250414/dbfull20250414_4/
dbfull20250414/dbfull20250414_4/dbfull20250414_4.bak
dbfull20250414/dbfull20250414_4/dbfull20250414_4.meta
dbfull20250414/dbfull20250414_5/
dbfull20250414/dbfull20250414_5/dbfull20250414_5.bak
dbfull20250414/dbfull20250414_5/dbfull20250414_5.meta
dbfull20250414/dbfull20250414_6/
dbfull20250414/dbfull20250414_6/dbfull20250414_6.bak
dbfull20250414/dbfull20250414_6/dbfull20250414_6.meta
dbfull20250414/dbfull20250414_7/
dbfull20250414/dbfull20250414_7/dbfull20250414_7.bak
dbfull20250414/dbfull20250414_7/dbfull20250414_7.meta
dbfull2025041402/
dbfull2025041402/dbfull2025041402.bak
dbfull2025041402/dbfull2025041402.meta
dbfull2025041402/dbfull2025041402_0/
dbfull2025041402/dbfull2025041402_0/dbfull2025041402_0.bak
dbfull2025041402/dbfull2025041402_0/dbfull2025041402_0.meta
dbfull2025041402/dbfull2025041402_1/
dbfull2025041402/dbfull2025041402_1/dbfull2025041402_1.bak
dbfull2025041402/dbfull2025041402_1/dbfull2025041402_1.meta
dbfull2025041402/dbfull2025041402_2/
dbfull2025041402/dbfull2025041402_2/dbfull2025041402_2.bak
dbfull2025041402/dbfull2025041402_2/dbfull2025041402_2.meta
dbfull2025041402/dbfull2025041402_3/
dbfull2025041402/dbfull2025041402_3/dbfull2025041402_3.bak
dbfull2025041402/dbfull2025041402_3/dbfull2025041402_3.meta
dbfull2025041402/dbfull2025041402_4/
dbfull2025041402/dbfull2025041402_4/dbfull2025041402_4.bak
dbfull2025041402/dbfull2025041402_4/dbfull2025041402_4.meta
dbfull2025041402/dbfull2025041402_5/
dbfull2025041402/dbfull2025041402_5/dbfull2025041402_5.bak
dbfull2025041402/dbfull2025041402_5/dbfull2025041402_5.meta
dbfull2025041402/dbfull2025041402_6/
dbfull2025041402/dbfull2025041402_6/dbfull2025041402_6.bak
dbfull2025041402/dbfull2025041402_6/dbfull2025041402_6.meta
dbfull2025041402/dbfull2025041402_7/
dbfull2025041402/dbfull2025041402_7/dbfull2025041402_7.bak
dbfull2025041402/dbfull2025041402_7/dbfull2025041402_7.meta
sent 855 bytes received 1,698,102,628 bytes 15,944,633.64 bytes/sec
total size is 1,715,384,320 speedup is 1.01
root@rgy-vmwarevirtualplatform:/dmdata#
# 目标端检查
root@rgy-vmwarevirtualplatform:/dmdata# ll
总计 4
drwxrwxr-x 4 dmdba dmdba 52 4月14日 20:22 ./
drwxr-xr-x 24 root root 4096 1月12日 15:47 ../
drwxrwxr-x 10 dmdba dmdba 251 4月14日 19:03 dbfull20250414/
drwxrwxr-x 10 dmdba dmdba 271 4月14日 20:23 dbfull2025041402/
root@rgy-vmwarevirtualplatform:/dmdata#
从25.118将dbfull2025041402文件同步到25.132目录下
rsync -avz dmdata/dmbak/dbfull2025041402 dmdba@192.168.25.132:/dmdata
[dmdba@localhost dmbak]$ rsync -avz dmdata/dmbak/dbfull2025041402 dmdba@192.168.25.132:/dmdata
The authenticity of host '192.168.25.132 (192.168.25.132)' can't be established.
ECDSA key fingerprint is SHA256:plCm367+JtVGIoDe9M7pqwsWPZK2b+sH5SmrXNdAXvw.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.25.132' (ECDSA) to the list of known hosts.
dmdba@192.168.25.132's password:
sending incremental file list
dbfull2025041402/
dbfull2025041402/dbfull2025041402.bak
dbfull2025041402/dbfull2025041402.meta
dbfull2025041402/dbfull2025041402_0/
dbfull2025041402/dbfull2025041402_0/dbfull2025041402_0.bak
dbfull2025041402/dbfull2025041402_0/dbfull2025041402_0.meta
dbfull2025041402/dbfull2025041402_1/
dbfull2025041402/dbfull2025041402_1/dbfull2025041402_1.bak
dbfull2025041402/dbfull2025041402_1/dbfull2025041402_1.meta
dbfull2025041402/dbfull2025041402_2/
dbfull2025041402/dbfull2025041402_2/dbfull2025041402_2.bak
dbfull2025041402/dbfull2025041402_2/dbfull2025041402_2.meta
dbfull2025041402/dbfull2025041402_3/
dbfull2025041402/dbfull2025041402_3/dbfull2025041402_3.bak
dbfull2025041402/dbfull2025041402_3/dbfull2025041402_3.meta
dbfull2025041402/dbfull2025041402_4/
dbfull2025041402/dbfull2025041402_4/dbfull2025041402_4.bak
dbfull2025041402/dbfull2025041402_4/dbfull2025041402_4.meta
dbfull2025041402/dbfull2025041402_5/
dbfull2025041402/dbfull2025041402_5/dbfull2025041402_5.bak
dbfull2025041402/dbfull2025041402_5/dbfull2025041402_5.meta
dbfull2025041402/dbfull2025041402_6/
dbfull2025041402/dbfull2025041402_6/dbfull2025041402_6.bak
dbfull2025041402/dbfull2025041402_6/dbfull2025041402_6.meta
dbfull2025041402/dbfull2025041402_7/
dbfull2025041402/dbfull2025041402_7/dbfull2025041402_7.bak
dbfull2025041402/dbfull2025041402_7/dbfull2025041402_7.meta
sent 849,069,763 bytes received 430 bytes 16,172,765.58 bytes/sec
total size is 857,708,032 speedup is 1.01
[dmdba@localhost dmbak]$
# 目标端检查
root@rgy-vmwarevirtualplatform:/dmdata# ll
总计 4
drwxrwxr-x 3 dmdba dmdba 30 5月 2日 18:10 ./
drwxr-xr-x 24 root root 4096 1月12日 15:47 ../
drwxrwxr-x 10 dmdba dmdba 271 4月14日 20:23 dbfull2025041402/
root@rgy-vmwarevirtualplatform:/dmdata#
方式2:rsync原生协议(适合批量操作)
配置流程:
1. 创建配置文件 /etc/rsyncd.conf
address = 192.168.25.118
port = 873
[data_share]
path = dmdata
comment = 重要数据仓库
read only = no
auth users = dmdba
secrets file = etc/rsyncd.secrets
2. 设置密码文件(权限必须600)
echo "dmdba:Dameng123" > etc/rsyncd.secrets
chmod 600 etc/rsyncd.secrets
3. 启动服务
rsync --daemon
案例演示
服务端配置:
1.创建配置文件
[root@localhost dmbak]# cat /etc/rsyncd.conf
address = 192.168.25.118
port 873
pid file = var/run/rsyncd.pid
log file = var/log/rsyncd.log
[share]
comment = soft
path = dmdata
read only = yes
dont compress =
auth users = dmdba
secrets file = etc/rsyncd_users.db
[root@localhost dmbak]#
2. 设置密码文件
[root@localhost dmbak]# echo "dmdba:Dameng123" > etc/rsyncd.secrets
[root@localhost dmbak]# chmod 600 etc/rsyncd.secrets
[root@localhost dmbak]# cat /etc/rsyncd.secrets
dmdba:Dameng123
[root@localhost dmbak]#
配置xinetd管理rsync
[root@localhost dmdata]# vim etc/xinetd.d/rsync
[root@localhost dmdata]# cat etc/xinetd.d/rsync
# default: off
# description: The rsync server is a good addition to an ftp server, as it \
# allows crc checksumming etc.
service rsync
{
disable = yes
flags = IPv6
socket_type = stream
wait = no
user = root
server = usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
}
[root@localhost dmdata]# systemctl restart rsyncd
3. 启动服务
rsync --daemon
[root@localhost dmbak]# rsync --daemon
[root@localhost dmbak]# netstat -pantul | grep 873
tcp 0 0 192.168.25.118:873 0.0.0.0:* LISTEN 1781888/rsync
[root@localhost dmbak]#
客户端执行同步
2.执行同步操作:
dmdba@rgy-vmwarevirtualplatform:/dmdata$ cd /dmdata/
dmdba@rgy-vmwarevirtualplatform:/dmdata$ rsync -avzP dmdba@192.168.25.118::share/statcmd-1.2.7.jar dmdata
Password:
receiving incremental file list
statcmd-1.2.7.jar
1,183,092 100% 25.07MB/s 0:00:00 (xfr#1, to-chk=0/1)
sent 43 bytes received 1,181,456 bytes 15,859.05 bytes/sec
total size is 1,183,092 speedup is 1.00
#数据同步成功
dmdba@rgy-vmwarevirtualplatform:/dmdata$ ls
dbfull2025041402 statcmd-1.2.7.jar
dmdba@rgy-vmwarevirtualplatform:/dmdata$
下行同步已完成,接下来我将演示上行同步:
服务端
#在执行上行同步前一定要修改模块权限和ACL权限
[root@localhost rsync]# vim etc/rsyncd.conf
[root@localhost rsync]# cat /etc/rsyncd.conf
address = 192.168.25.118
port 873
log file = var/log/rsyncd.log
[share]
comment = soft
path = dmdata
read only = no #这里一定要改为no
dont compress =
auth users = dmdba
secrets file = etc/rsyncd.secrets
[root@localhost rsync]# setfacl -m u:nobody:rwx dmdata #设置ACL权限
[root@localhost rsync]# pkill rsync #关闭rsync
[root@localhost rsync]# rsync --daemon #启动rsync
客户端
dmdba@rgy-vmwarevirtualplatform:/dmdata$ touch client.txt
dmdba@rgy-vmwarevirtualplatform:/dmdata$ rsync -avzP dmdata/client.txt dmdba@192.168.25.118::share
Password:
sending incremental file list
client.txt
0 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=0/1)
sent 102 bytes received 35 bytes 4.35 bytes/sec
total size is 0 speedup is 0.00
dmdba@rgy-vmwarevirtualplatform:/dmdata$
#上行同步成功
在服务端查看:
[root@localhost dmdata]# ls -l client.txt
-rw-rw-r-- 1 nobody nobody 0 5月 2 18:48 client.txt
[root@localhost dmdata]#
免密同步黑科技
场景1:SSH密钥验证
# 生成密钥对
ssh-keygen -t rsa
# 上传公钥
ssh-copy-id dmdba@server_ip
# 免密同步测试
rsync -avz data dmdba@192.168.25.118:/dmdata/dmbak/
场景2:rsync密码变量
# 临时生效
export RSYNC_PASSWORD='Dameng123' #Dameng123为虚拟用户dmdba的密码
# 永久生效(写入~/.bashrc)
echo "export RSYNC_PASSWORD='Dameng123'" >> ~/.bashrc
案例演示
[dmdba@localhost ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/dmdba/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/dmdba/.ssh/id_rsa
Your public key has been saved in /home/dmdba/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:OmkldwsGH9rDgbQ4Sg6/ssWvVBYdpOnm7sh3PSBe+wo dmdba@localhost.localdomain
The key's randomart image is:
+---[RSA 3072]----+
| .+ |
| * + |
|. . * = o |
| = o o * o |
| + = o S . |
| . *. oB + . |
|. =.Eo=+ . |
| * +ooo.o |
|. +++..o.. |
+----[SHA256]-----+
[dmdba@localhost ~]$
ssh-copy-id dmdba@192.168.25.132
[dmdba@localhost ~]$ ssh-copy-id dmdba@192.168.25.132
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/dmdba/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
dmdba@192.168.25.132's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'dmdba@192.168.25.132'"
and check to make sure that only the key(s) you wanted were added.
[dmdba@localhost ~]$
验证登录
[dmdba@localhost ~]$ ssh dmdba@192.168.25.132 # 直接登录目标服务器
Welcome to openKylin 2.0 (GNU/Linux 6.6.0-1-generic x86_64)
* Support: https://openkylin.top
You do not have any new mail.
Last login: Fri May 2 21:20:02 2025 from 192.168.25.118
/opt/kaiming/exports/share:/usr/local/share:/usr/share
dmdba@rgy-vmwarevirtualplatform:~$
拷贝文件
rsync -avz dmdata/client.txt dmdba@192.168.25.132:/dmdata
[dmdba@localhost dmdata]$ rsync -avz dmdata/client.txt dmdba@192.168.25.132:/dmdata
sending incremental file list
sent 66 bytes received 12 bytes 52.00 bytes/sec
total size is 0 speedup is 0.00
[dmdba@localhost dmdata]$
dmdba@rgy-vmwarevirtualplatform:/dmdata$ rm client.txt
dmdba@rgy-vmwarevirtualplatform:/dmdata$ ls -l
总计 1156
-rw-rw-r-- 1 dmdba dmdba 0 5月 2日 18:48 client.txt
drwxrwxr-x 10 dmdba dmdba 271 4月14日 20:23 dbfull2025041402
-rwxrwxr-x 1 dmdba dinstall 1183092 2024年 5月31日 statcmd-1.2.7.jar
dmdba@rgy-vmwarevirtualplatform:/dmdata$
实战案例
数据库增量备份与同步方案
场景说明
• 源服务器:192.168.25.118(数据库主机)
• 备份目标:192.168.25.132:/dmdata
• 数据库类型:以达梦数据库(DMDB)为例
备份策略说明
• 全量备份:每周日凌晨0点执行,保留2个周期(14天)
• 增量备份:每日凌晨0点执行,保留2个周期(14天)
• 备份目录结构:
/dmdata/dmback/
├── full/ # 全量备份
└── incr/ # 增量备份
一、备份脚本配置
1. 创建备份目录
# 在源服务器创建备份存储路径
mkdir -p ${BACKUP_DIR}/{full,incr,logs,scripts}
chown -R dmdba:dinstall dmdata/dmback
2. 编写备份脚本 (/dmdata/dmback/scripts/db_backup.sh
)
#!/bin/bash
# 文件名:/dmdata/dmback/scripts/db_backup.sh
# 功能:达梦数据库在线备份(支持并行压缩)
# 全局配置
BACKUP_DIR="/dmdata/dmback" # 本地备份目录
DB_USER="SYSDBA" # 数据库用户
DB_PASS="SYSDBA" # 数据库密码
DB_HOST="localhost:5236" # 数据库连接地址
REMOTE_HOST="192.168.25.132" # 远程备份服务器
DB_HOME="/home/dmdba/dmdbms" # 达梦安装路径
PARALLEL_THREADS=4 # 并行线程数
COMPRESS_LEVEL=5 # 压缩级别(1-9)
LOG_RETAIN_DAYS=7 # 日志保留天数
# 初始化环境
export LD_LIBRARY_PATH=$DB_HOME/bin:$PATH
TIMESTAMP=$(date +%Y%m%d%H%M%S)
LOG_FILE="${BACKUP_DIR}/logs/db_backup_${TIMESTAMP}.log"
# 创建目录结构
#mkdir -p ${BACKUP_DIR}/{full,incr,logs}
# --------------------------
# 全量备份函数(每周六执行)
# --------------------------
full_backup() {
local backup_name="full_$(date +%Y%m%d)"
echo"[$(date +'%F %T')] 开始全量备份: $backup_name" >> ${LOG_FILE}
$DB_HOME/bin/disql ${DB_USER}/${DB_PASS}@${DB_HOST} <<EOF >> ${LOG_FILE} 2>&1
BACKUP DATABASE FULL BACKUPSET '${BACKUP_DIR}/full/${backup_name}'
COMPRESSED LEVEL ${COMPRESS_LEVEL} PARALLEL ${PARALLEL_THREADS};
EOF
# 保留策略:保留最近2个全量
ls -dt ${BACKUP_DIR}/full/* | tail -n +3 | xargs rm -rf
}
# --------------------------
# 增量备份函数(周一到周五&周日)
# --------------------------
incr_backup() {
local backup_name="incr_$(date +%Y%m%d)"
echo"[$(date +'%F %T')] 开始增量备份: $backup_name" >> ${LOG_FILE}
$DB_HOME/bin/disql ${DB_USER}/${DB_PASS}@${DB_HOST} <<EOF >> ${LOG_FILE} 2>&1
BACKUP DATABASE INCREMENT WITH BACKUPDIR '${BACKUP_DIR}/full'
BACKUPSET '${BACKUP_DIR}/incr/${backup_name}'
COMPRESSED LEVEL ${COMPRESS_LEVEL} PARALLEL ${PARALLEL_THREADS};
EOF
# 保留策略:保留14天内的增量
find ${BACKUP_DIR}/incr -mtime +14 -execrm -rf {} \;
}
# --------------------------
# 日志清理函数
# --------------------------
log_clean() {
find ${BACKUP_DIR}/logs -name "db_backup_*.log" -mtime +${LOG_RETAIN_DAYS} -execrm -f {} \;
}
# --------------------------
# 远程同步函数
# --------------------------
remote_sync() {
rsync -avzP --bwlimit=100M --delete --partial \
-e "ssh -i home/dmdba/.ssh/dm_rsa" \
${BACKUP_DIR}/{full,incr} \
dmdba@${REMOTE_HOST}:/dmdata/backup/ >> ${LOG_FILE} 2>&1
}
# --------------------------
# 主流程控制
# --------------------------
case"$1"in
full)
full_backup
remote_sync
log_clean
;;
incr)
incr_backup
remote_sync
log_clean
;;
*)
echo"Usage: $0 {full|incr}"
exit 1
esac
exit 0
并给脚本授权
[dmdba@localhost ~]$ chmod +x dmdata/dmback/scripts/db_backup.sh
二、定时任务配置
# 编辑crontab
crontab -e
# 每周日0点全量备份
0 0 * * 0 /dmdata/dmback/scripts/db_backup.sh full
# 每日0点增量备份
0 0 * * * dmdata/dmback/scripts/db_backup.sh incr
[root@localhost ~]# crontab -l
# 每周日0点全量备份
0 0 * * 0 /dmdata/dmback/scripts/db_backup.sh full
# 每日0点增量备份
0 0 * * * dmdata/dmback/scripts/db_backup.sh incr
[root@localhost ~]#
流程图:增量备份同步流程
三、监控与验证
1. 实时同步监控
tail -f /dmdata/dmback/logs/db_backup_20250502224059*.log
# 关键日志标记:
# [FULL] Backup completed in 02:15:00
# [INCR] Transferred 15MB (delta 3%)
.....
incr/incr_20250502/incr_20250502_3/
incr/incr_20250502/incr_20250502_3/incr_20250502_3.meta
99,840 100% 306.60kB/s 0:00:00 (xfr#19, to-chk=0/32)
sent 6,442,130,383 bytes received 506 bytes 14,492,982.88 bytes/sec
total size is 14,522,784,256 speedup is 2.25
# 检查远程备份完整性
ssh dmdba@192.168.25.132 "ls -lh dmdata/backup/"
[dmdba@localhost ~]$ ls -lh /dmdata/dmback/full/
总用量 0
drwxrwxr-x 6 dmdba dmdba 149 5月 2 22:37 full_20250502
drwxrwxr-x 2 dmdba dmdba 37 5月 2 22:15 full_20250502221508
[dmdba@localhost ~]$ /dmdata/dmback/scripts/db_backup.sh incr
[dmdba@localhost ~]$
故障处理速查表
~/.ssh/dm_rsa权限是否为600 | |
WITH BACKUPDIR正确 | |
--max-size=10G限制单个文件大小 | |
--compress启用压缩传输 |
四、备份保留策略验证
find /backup/full -mtime +14 -exec rm -rf {} \; | ||
find /backup/incr -mtime +14 -exec rm -rf {} \; |
五、操作验证步骤
1. 手动执行全量备份:
/dmdata/dmback/scripts/db_backup.sh full
ls -lh /backup/full/
[dmdba@localhost ~]$ /dmdata/dmback/scripts/db_backup.sh full
[dmdba@localhost ~]$ ls -lh /dmdata/dmback/full/
总用量 0
drwxrwxr-x 6 dmdba dmdba 149 5月 2 22:37 full_20250502
drwxrwxr-x 2 dmdba dmdba 37 5月 2 22:15 full_20250502221508
[dmdba@localhost ~]$
2. 手动执行增量备份:
/dmdata/dmback/scripts/db_backup.sh incr
ls -lh /dmdata/dmback/full/
[dmdba@localhost ~]$ /dmdata/dmback/scripts/db_backup.sh incr
[dmdba@localhost ~]$ ls -lh /dmdata/dmback/incr/
总用量 0
drwxrwxr-x 6 dmdba dmdba 149 5月 2 22:41 incr_20250502
[dmdba@localhost ~]$
3. 检查远程同步:
ssh dmdba@192.168.25.132 "ls -lh /dmdata/backup/"
[dmdba@localhost ~]$ ssh dmdba@192.168.25.132 "ls -lh /dmdata/backup/"
总计 0
drwxrwxr-x 4 dmdba dinstall 54 5月 2日 22:33 full
drwxrwxr-x 3 dmdba dinstall 27 5月 2日 22:41 incr
[dmdba@localhost ~]$
六、注意事项
1. 备份链完整性:
增量备份依赖最近的全量备份,删除旧全量备份时其关联的增量备份将失效。2. 存储空间监控:
建议添加磁盘空间监控;3. 恢复演练:
每季度执行一次全流程恢复测试,验证备份有效性。
避坑指南
1. 权限陷阱:确保目标目录nobody用户有写权限 2. 防火墙配置:开放873端口(rsync)或22端口(SSH) 3. 大文件处理:添加 --partial
支持断点续传4. 日志分析:定期检查 /var/log/rsyncd.log
结语
rsync就像数据世界的"时光机",通过本文的:
✅ 双模式同步方案
✅ 免密验证技巧
✅ 六大实战场景
您已掌握数据同步的核心技能!现在立即动手,让您的数据在服务器间安全起舞吧!
TIP:生产环境操作前,建议先在测试环境验证命令!




