有人可以解释一下如何循环备份逻辑(下面提到的脚本)

有人可以解释一下如何循环备份逻辑(下面提到的脚本)

有人能解释一下我如何循环下面的逻辑吗?这个逻辑需要每周运行一次。例如:在第一周,源文件夹中我有一个名为 stack.txt、webmethods、profiles 的文件和文件夹,因此当我运行逻辑时,所有这些文件都会备份到目标文件夹。在第二周,源文件夹中添加了额外的目录,即 Kafka,因此现在当逻辑运行时,它不应该完全备份,而应该只备份新添加的内容……比如增量备份

#!/bin/bash

# What to backup. 
Integrationserver="/home/ec2-user/source"

# Where to backup to.
dest="/home/ec2-user/destination"


# Create archive filename.
#date=$(date +%F)
IS=source
hostname=$(hostname -s)
#archive_file="$hostname-$IS-$date.tar.gz"
archive_file="$hostname-$IS.tar.gz"

# Print start status message.
echo "Backing up $Integrationserver to $dest/$archive_file"
date
echo

# Backup the files using tar.
tar --exclude=/home/ec2-user/source/logs* --exclude=/home/ec2-user/source/TC*  -zcf $dest/$archive_file $Integrationserver

# Print end status message.
echo
echo "Backup finished"
date

答案1

要在设定的时间多次运行它,您应该使用 cron 或您的发行版等效程序。

至于对 tar 文件进行增量操作,您需要使用 --listed-incremental

它有点复杂,所以我将链接一篇总结它的文章,这样我就不必再这样做了。

https://linuxconfig.org/how-to-create-incremental-and-differential-backups-with-tar

相关内容