2 Commits
Author SHA1 Message Date
Hartmut Bauer fe5d3487c2 fix tar cmd line 2025-12-19 11:48:58 +01:00
Hartmut Bauer a2d9b6a74e exclude container overlays from backup 2025-12-18 14:46:12 +01:00
5 changed files with 20 additions and 9 deletions

No files matched your search

+2 -2
View File
@@ -1,5 +1,5 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# Mail via GMX-Relay versenden (Podman-Image "smtp-relay") # Mail via Proton-Relay versenden (Podman-Image "smtp-relay")
# #
# Klappt nur direkt im Container, daher ggf. via ssh aufrufen (Annahme: remote user == local user) # Klappt nur direkt im Container, daher ggf. via ssh aufrufen (Annahme: remote user == local user)
# #
@@ -64,7 +64,7 @@ CONTENT=$(cat ${1:--})
MAILCMD="$PODMANCMD exec -i $MAILCONTAINER /usr/sbin/sendmail -i -t" MAILCMD="$PODMANCMD exec -i $MAILCONTAINER /usr/sbin/sendmail -i -t"
# construct mail header + content and pipe to sendmail # construct mail header + content and pipe to sendmail
cat <<EOMB | $MAILCMD cat <<EOMB | $MAILCMD
FROM: hb42@gmx.de FROM: server@keinekekse.net
TO: ${TO} TO: ${TO}
DATE: $(date -R) DATE: $(date -R)
MIME-Version: 1.0 MIME-Version: 1.0
+2 -2
View File
@@ -495,8 +495,8 @@ tar_dir() {
if [[ "$(uname)" == "Darwin" ]]; then if [[ "$(uname)" == "Darwin" ]]; then
sort="" sort=""
fi fi
log $DEBUG "$DBG > tar -c -z --numeric-owner --one-file-system $sort --exclude \"@eaDir\" -C \"$root\" \"$dir\" | gpg --batch -c --passphrase xxxx -o \"$archive\"" log $DEBUG "$DBG > tar -c -z --warning="no-file-ignored" --numeric-owner --one-file-system $sort --exclude \"@eaDir\" -C \"$root\" \"$dir\" | gpg --batch -c --passphrase xxxx -o \"$archive\""
tar -c -z --numeric-owner --one-file-system $sort --exclude "@eaDir" -C "$root" "$dir" 2>>$LOG_FILE | gpg --batch -c --passphrase $PASSPHRASE -o "$archive" 2>>$LOG_FILE tar -c -z--warning=no-file-ignored --numeric-owner --one-file-system $sort --exclude "@eaDir" -C "$root" "$dir" 2>>$LOG_FILE | gpg --batch -c --passphrase $PASSPHRASE -o "$archive" 2>>$LOG_FILE
check_pipe_rc ${PIPESTATUS[@]} check_pipe_rc ${PIPESTATUS[@]}
return $? return $?
} }
+13 -3
View File
@@ -3,10 +3,20 @@
# entrypoint for all actions # entrypoint for all actions
# #
# 2.3.1. 16.08.2025 - 30 min delay for mail.sh # 2.3.4 19.12.2025 - fix tar param: --warning="no-file-ignored"
# 2.3.3 18.12.2025 - smtp-relay läuft durch, dadurch ändern sich ggf. Dateien im Container, was
# zu Fehlern beim tar führt. Deshalb wird das Verzeichnis
# /var/home/container/.local/share/containers vom Backup ausgenommen.
# Die Container-Overlays, die hier liegen können aus dem jeweiligen Image
# wiederhergestellt werden, es geht also nichts verloren.
# Außerdem kann tar über Sockets stolpern und unnötige Warnungen produzieren.
# Abhilfe schafft der Parameter --warning=no-file-ignored.
# Den mail delay im synology backup wieder entfernt.
# 2.3.2 18.09.2025 - synology backup: wait 60 min before mailing
# 2.3.1 16.08.2025 - 30 min delay for mail.sh
# 2.3.0 12.08.2025 - new function for backup & encryption of Proton exports # 2.3.0 12.08.2025 - new function for backup & encryption of Proton exports
# 2.2.4 30.07.2025 - inc delay (again) for container startup-check (2m) # 2.2.4 30.07.2025 - inc delay (again) for container startup-check (2m)
# 2.2.3 24.06.2025 - Export-Disk kann exfat- oder vfat-formatiert sein, # 2.2.3 24.06.2025 - Export-Disk kann exfat- oder vfat-formatiert sein
# Export-Disk mit mehreren Partitonen erkennen # Export-Disk mit mehreren Partitonen erkennen
# 2.2.2 19.06.2025 - inc delay for container startup check, fix error in log output # 2.2.2 19.06.2025 - inc delay for container startup check, fix error in log output
# 2.2.1 16.06.2025 - delay container startup check # 2.2.1 16.06.2025 - delay container startup check
@@ -24,7 +34,7 @@
# 2.1.7 29.04.2025 - 1. Schritt zur Umstellung auf podman # 2.1.7 29.04.2025 - 1. Schritt zur Umstellung auf podman
# 2.1.6 29.04.2025 - weekly backup Sa->SO # 2.1.6 29.04.2025 - weekly backup Sa->SO
VER="2.3.1" VER="2.3.4"
HERE=$(dirname "$0") HERE=$(dirname "$0")
THIS_SCRIPT=$0 THIS_SCRIPT=$0
+1 -1
View File
@@ -10,7 +10,7 @@ NAS_TARGET="$NAS_ROOT/daily/$HOST_NAME/backup.$DAY"
backup_daily1() { backup_daily1() {
BACKUP_SOURCE="/var" BACKUP_SOURCE="/var"
BACKUP_EXCLUDE_DIRS=(containers) BACKUP_EXCLUDE_DIRS=(containers home/container/.local/share/containers)
} }
backup_daily2() { backup_daily2() {
+2 -1
View File
@@ -25,6 +25,7 @@ before_backup() {
} }
after_backup() { after_backup() {
# nothing to do # wait for mail server backup
## sollte sich erledigt haben ## sleep 60m
echo echo
} }