目前我有一个每周调用一次的cron
预定脚本:.sh
rsync
DAY0=`date -I`
DAY1=`date -I -d "1 week ago"`
rsync -aAXv --delete --link-dest=/media/backup/$DAY1 / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/backup","/lost+found","*.SAM","*.BAM"} /media/backup/$DAY0
我想排除任何带有.fastq
扩展名的文件,但包含“.fastq.gz”。这是对系统其余部分正常备份的补充。
如何做呢?
答案1
而不是排除每个文件类型不想要的,请包括您确实想要的:
rsync ...other rsync options... \
--include='*.fasta.gz' --exclude='*' source/ destination/
您可能还想使用--one-filesystem
( -x
) 选项来停止rsync
遍历源目录所在文件系统之外的其他文件系统。
或者,*.fasta.gz
在包含模式中指定,然后*.fasta
在排除模式中指定。
对于备份,我建议使用类似borgbackup
(可能与borgmatic
)或restic
代替的东西rsync
。这些都消除了重复数据,从而使备份占用的空间少得多。