Merge remote-tracking branch 'origin/master' into debian

This commit is contained in:
fabian 2024-03-17 14:09:24 +01:00
commit f23a40f524
2 changed files with 58 additions and 28 deletions

View File

@ -186,26 +186,29 @@ colours() {
# ex - archive extractor # ex - archive extractor
# usage: ex <file> # usage: ex <file>
ex () ex() {
{ if [[ ! -f "$1" ]]; then
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;;
*.tar.gz) tar xzf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) unrar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xf $1 ;;
*.tbz2) tar xjf $1 ;;
*.tgz) tar xzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1;;
*.7z) 7z x $1 ;;
*) echo "'$1' cannot be extracted via ex()" ;;
esac
else
echo "'$1' is not a valid file" echo "'$1' is not a valid file"
return 1;
fi fi
# FIXME 7z kann (theoretisch) tar
outdir=${1%.*}
case "$1" in
*.tar.bz2 | *.tbz | *.tbz2)
tar xjf $1 -C $outdir;;
*.tar.gz | *.tgz)
tar xzf $1 -C $outdir;;
*.tar)
tar xf $1 -C $outdir;;
*.7z | *.zip | *.gz | *.bz | *.bz2)
7z x -o$outdir $1;;
*.rar)
unrar x $1;;
*.Z)
uncompress $1;;
*)
echo "'$1' cannot be extracted via ex()";;
esac
} }
# BEGIN_KITTY_SHELL_INTEGRATION # BEGIN_KITTY_SHELL_INTEGRATION

View File

@ -10,20 +10,47 @@ shopt -s expand_aliases # make aliases work
############################### ###############################
BACKUP_DIR=/sync/backup BACKUP_DIR=/sync/backup
ensureDirectory $BACKUP_DIR
BACKUP_DIR_HOME=$BACKUP_DIR/home BACKUP_DIR_HOME=$BACKUP_DIR/home
rsync_backup $HOME/.ssh/ $BACKUP_DIR_HOME/.ssh/ ensureDirectory $BACKUP_DIR_HOME
backupDirectory $HOME/.ssh/ $BACKUP_DIR_HOME/.ssh/
BACKUP_DIR_ROOT=$BACKUP_DIR/root/etc BACKUP_DIR_ROOT=$BACKUP_DIR/root/etc
sd rsync_backup /etc/ddclient/ $BACKUP_DIR_ROOT/ddclient/ ensureRootDirectory $BACKUP_DIR_ROOT
sd rsync_backup /etc/ddclient.conf $BACKUP_DIR_ROOT/
sd rsync_backup /etc/letsencrypt/ $BACKUP_DIR_ROOT/letsencrypt/
sd rsync_backup /etc/nginx/ $BACKUP_DIR_ROOT/nginx/
sd rsync_backup /etc/ssh/ $BACKUP_DIR_ROOT/ssh/
sd rsync_backup /etc/wireguard/ $BACKUP_DIR_ROOT/wireguard/
sd rsync_backup /etc/hosts $BACKUP_DIR_ROOT/ sd rsync_backup /etc/hosts $BACKUP_DIR_ROOT/
sd rsync_backup /etc/docker/daemon.json $BACKUP_DIR_ROOT/docker/ sd rsync_backup /etc/ddclient.conf $BACKUP_DIR_ROOT/
backupRootDirectory /etc/ddclient/ $BACKUP_DIR_ROOT/ddclient/
backupRootDirectory /etc/letsencrypt/ $BACKUP_DIR_ROOT/letsencrypt/
backupRootDirectory /etc/nginx/ $BACKUP_DIR_ROOT/nginx/
backupRootDirectory /etc/ssh/ $BACKUP_DIR_ROOT/ssh/
backupRootDirectory /etc/wireguard/ $BACKUP_DIR_ROOT/wireguard/
backupRootDirectory /etc/docker/daemon.json $BACKUP_DIR_ROOT/docker/
backupRootDirectory() {
ensureRootDirectory $2
sd rsync_backup $1 $2
}
backupDirectory() {
ensureDirectory $2
rsync_backup $1 $2
}
ensureRootDirectory() {
ensureDirectory $1
sudo chown root:root $1
}
ensureDirectory() {
if [[ ! -e $1 ]]; then
mkdir -p $1
fi
}
##################### #####################
### upload backup ### ### upload backup ###
##################### #####################