fix: fix weekly backup
This commit is contained in:
parent
9d62432ab9
commit
7ff771ce13
2 changed files with 6 additions and 3 deletions
|
@ -52,6 +52,9 @@ FROMSSHUSER="" # The ssh user of the system from which the
|
||||||
# files will be backed up
|
# files will be backed up
|
||||||
FROMSSHPORT=22 # The ssh port of the system from which the
|
FROMSSHPORT=22 # The ssh port of the system from which the
|
||||||
# files will be backed up
|
# files will be backed up
|
||||||
|
WEEKS=5 # For how many weeks shall we save backups?
|
||||||
|
# This will keep weekly backups for at most 5
|
||||||
|
# weeks.
|
||||||
```
|
```
|
||||||
|
|
||||||
### Crontab example
|
### Crontab example
|
||||||
|
|
|
@ -25,11 +25,11 @@ FROMSSHUSER="" # The ssh user of the system from which the
|
||||||
# files will be backed up
|
# files will be backed up
|
||||||
FROMSSHPORT=22 # The ssh port of the system from which the
|
FROMSSHPORT=22 # The ssh port of the system from which the
|
||||||
# files will be backed up
|
# files will be backed up
|
||||||
|
WEEKS=5 # For how many weeks shall we save backups?
|
||||||
|
|
||||||
## Command variables,
|
## Command variables,
|
||||||
# These should be fine, but if something doesn't work these can be adjusted
|
# These should be fine, but if something doesn't work these can be adjusted
|
||||||
MOUNT="/bin/mount"; FGREP="/bin/fgrep"; SSH="/usr/bin/ssh"
|
MOUNT="/bin/mount"; FGREP="/bin/fgrep"; SSH="/usr/bin/ssh"; EXPR="/usr/bin/expr"
|
||||||
LN="/bin/ln"; ECHO="/bin/echo"; DATE="/bin/date"; MKDIR="/bin/mkdir"
|
LN="/bin/ln"; ECHO="/bin/echo"; DATE="/bin/date"; MKDIR="/bin/mkdir"
|
||||||
DPKG="/usr/bin/dpkg"; AWK="/usr/bin/awk"; MAIL="/usr/bin/mail"
|
DPKG="/usr/bin/dpkg"; AWK="/usr/bin/awk"; MAIL="/usr/bin/mail"
|
||||||
CUT="/usr/bin/cut"; TR="/usr/bin/tr"; RSYNC="/usr/bin/rsync"
|
CUT="/usr/bin/cut"; TR="/usr/bin/tr"; RSYNC="/usr/bin/rsync"
|
||||||
|
@ -139,6 +139,7 @@ WEEKDAY=$($DATE +"%u") # %a = weekday as number
|
||||||
DAY=$($DATE +"%d") # %d = day in month as number
|
DAY=$($DATE +"%d") # %d = day in month as number
|
||||||
MONTH=$($DATE +%m) # %m = month as number
|
MONTH=$($DATE +%m) # %m = month as number
|
||||||
HOUR=$($DATE +"%H") # %H = hour as number
|
HOUR=$($DATE +"%H") # %H = hour as number
|
||||||
|
WEEK=$($EXPR $($DATE +"%W") % $WEEKS) # %W = week as number, used to save backups for the past $WEEKS weeks
|
||||||
|
|
||||||
# Create a backup every first day in a month
|
# Create a backup every first day in a month
|
||||||
if [[ $DAY = 01 ]]; then
|
if [[ $DAY = 01 ]]; then
|
||||||
|
@ -147,7 +148,6 @@ fi
|
||||||
|
|
||||||
# Create a special backup approx every week
|
# Create a special backup approx every week
|
||||||
if [[ $WEEKDAY = 7 ]]; then
|
if [[ $WEEKDAY = 7 ]]; then
|
||||||
let WEEK=$($DATE +"%W")%5 # save past 5 weeks
|
|
||||||
backup "weekly/$WEEK"
|
backup "weekly/$WEEK"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue