创建测试环境
1. 创建目录
[root@nfs01 lpc]# mkdir {01..03}
2. 创建文件
[root@nfs01 lpc]# touch /{01..03}/{a..c}.txt
3. 检查环境
[root@nfs01 lpc]# tree /lpc
/lpc
├── 01
│ ├── a.txt
│ ├── b.txt
│ └── c.txt
├── 02
│ ├── a.txt
│ ├── b.txt
│ └── c.txt
└── 03
├── a.txt
├── b.txt
└── c.txt
环境创建成功
使用rsync进行远程备份并排除指定文件或目录
方法一:--exclude
[root@nfs01 lpc]# rsync -avz /lpc/ --exclude=01 --exclude=02/a.txt rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
sending incremental file list
./
02/
02/a.txt
02/b.txt
02/c.txt
03/
03/a.txt
03/b.txt
03/c.txt
sent 428 bytes received 153 bytes 1,162.00 bytes/sec
total size is 0 speedup is 0.00
同时排除/lpc/01目录和/lpc/02/c.txt
--exclude=排除的时候、要使用备份文件的相对路径。
backup服务器上检查结果
[root@backup backup]# tree /backup/
/backup/
├── 02
│ ├── a.txt
│ ├── b.txt
│ └── c.txt
└── 03
├── a.txt
├── b.txt
└── c.txt
测试成功
方法二:编辑一个文件、使用exclude-from=
1. 编写文件
[root@nfs01 lpc]# vim exclude_file
01/
02/c
excelude_file
编写一个文件、将要排除的文件或目录写入。要使用备份文件的绝对路径
2. 排除文件里的内容
[root@nfs01 lpc]# rsync -avz /lpc/ --exclude-from=/lpc/exclude_file rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
sending incremental file list
./
exclude_file
02/
02/a.txt
02/b.txt
02/c.txt
03/
03/a.txt
03/b.txt
03/c.txt
sent 526 bytes received 176 bytes 1,404.00 bytes/sec
total size is 23 speedup is 0.03
backup服务器查看结果
[root@backup ~]# tree /backup/
/backup/
├── 02
│ ├── a.txt
│ ├── b.txt
│ └── c.txt
├── 03
│ ├── a.txt
│ ├── b.txt
│ └── c.txt
└── exclude_file
2 directories, 7 files
测试成功