#!/bin/sh

# backup.sh
# 2016-07-11
# by Gernot WALZL

# Creates a backup of important directories
# {/home, /root, /etc, /var/www/htdocs}

OUTPUT=${OUTPUT:-"/mnt/ntfs/backup"}
HOST=$(hostname)
DATE=$(date +%Y-%m-%d)

mkdir -p "$OUTPUT" || exit 1

for DIR in $(find /home -mindepth 1 -maxdepth 1 -type d); do
  USER=$(basename "$DIR")
  FILE="home-${USER}_${HOST}_${DATE}.tar.gz"
  tar --exclude 'nobackup' -cvpzf "$OUTPUT/$FILE" "$DIR"
#  FILE="home-${USER}_${HOST}_${DATE}.tar"
#  tar --exclude 'nobackup' --exclude '.*' -cvpf "$OUTPUT/$FILE" "$DIR"
#  find "$DIR" \( -name '.ssh' -o -name '.gnupg' \) -print0 \
#    | xargs -0 tar -rvpf "$OUTPUT/$FILE"
#  find "$DIR" \( -name '.svn' -o -name '.hg' -o -name '.git' \) -print0 \
#    | xargs -0 tar -rvpf "$OUTPUT/$FILE"
#  find "$DIR" \( -name '.xchat2' -o -name '.purple' \) -print0 \
#    | xargs -0 tar -rvpf "$OUTPUT/$FILE"
#  gzip "$OUTPUT/$FILE"
done

FILE="root_${HOST}_${DATE}.tar.gz"
tar --exclude 'nobackup' -cvpzf "$OUTPUT/$FILE" /root

tar -cvpzf "$OUTPUT/etc_${HOST}_${DATE}.tar.gz" /etc
tar -cvpzf "$OUTPUT/var-www-htdocs_${HOST}_${DATE}.tar.gz" /var/www/htdocs