aktualizace incremental_backup.sh
This commit is contained in:
parent
d54c6ea13e
commit
a0c025f1c6
@ -3,6 +3,21 @@
|
||||
# Nastavení proměnných
|
||||
ZDROJ="/cesta/k/zdrojovému/adresáři"
|
||||
CIL="/cesta/k/záložnímu/adresáři"
|
||||
POSLEDNI_ZALOHA=$(ls -td $CIL/backup_* | head -1)
|
||||
|
||||
# Seznam souborů a adresářů k vyloučení ze zálohování
|
||||
EXCLUDE_LIST=(
|
||||
"cache"
|
||||
"*.tmp"
|
||||
"node_modules"
|
||||
"*.log"
|
||||
)
|
||||
|
||||
# Sestavení příkazů --exclude pro rsync
|
||||
EXCLUDES=()
|
||||
for item in "${EXCLUDE_LIST[@]}"; do
|
||||
EXCLUDES+=("--exclude=$item")
|
||||
done
|
||||
|
||||
# Datum a čas
|
||||
DATUM=$(date +"%Y-%m-%d_%H-%M-%S")
|
||||
@ -11,8 +26,12 @@ DATUM=$(date +"%Y-%m-%d_%H-%M-%S")
|
||||
NOVY_CIL="$CIL/backup_$DATUM"
|
||||
mkdir -p "$NOVY_CIL"
|
||||
|
||||
# Zálohování pomocí rsync s možností mazání smazaných souborů ve zdrojovém adresáři
|
||||
rsync -av --delete "$ZDROJ" "$NOVY_CIL"
|
||||
# Kontrola poslední zálohy a použití --link-dest pro inkrementální zálohy
|
||||
if [ -n "$POSLEDNI_ZALOHA" ]; then
|
||||
rsync -av --delete --link-dest="$POSLEDNI_ZALOHA" "${EXCLUDES[@]}" "$ZDROJ/" "$NOVY_CIL/"
|
||||
else
|
||||
rsync -av --delete "${EXCLUDES[@]}" "$ZDROJ/" "$NOVY_CIL/"
|
||||
fi
|
||||
|
||||
# Výpis stavu zálohy
|
||||
if [ $? -eq 0 ]; then
|
||||
|
Loading…
Reference in New Issue
Block a user