Some fixes, not tested!
authorHeiko Schlittermann <hs@schlittermann.de>
Tue, 03 May 2016 17:10:43 +0200
changeset 1 cd277b242dca
parent 0 71a3a2a6663d
child 2 3bea787fbeda
Some fixes, not tested!
backup2Archiv2
--- a/backup2Archiv2	Tue May 03 14:39:45 2016 +0200
+++ b/backup2Archiv2	Tue May 03 17:10:43 2016 +0200
@@ -4,25 +4,32 @@
 # Company: schlittermann internet & unix support <http://schlittermann.de>
 # License: GPLv3 <http://www.gnu.org/licenses/gpl-3.0.html>
 
-BACKUPDIR="/home/samba/Archiv2"
-LOGFILE="/var/log/backup2Archiv-$(date -I)"
-LOGTAG="B2Archiv2"
-GROUP="Domain Users"
+set -e
+LC_ALL=POSIX
 
-if [ "$#" == "0" ]; then
-  echo "USAGE: $0 /path/to/backup"
-  echo;echo;
-  echo "NOTICE: It is best to do the backup from the parent dir of path"
-  echo "        to backup"
+BACKUPDIR=/home/samba/Archiv2
+LOGFILE=/var/log/backup2Archiv-$(date -I)
+LOGTAG=B2Archiv2
+GROUP='Domain Users'
+
+if [ $# == 0 ]; then
+  cat <<_
+Usage: $0 /path/to/backup...
+_
   exit 1
 fi
 
-if [ ! -e $LOGFILE ];then
-  touch $LOGFILE
+echo "BACKUP $(date)" >> "$LOGFILE"
+
+logger -t "$LOGTAG" "STARTING $0 $@"
+
+# vielleicht lieber die Variable testen
+if [ -z "$BACKUPDIR" ]; then
+    logger "$BACKUPDIR variable is empty!"
+    exit 1
 fi
-echo "BACKUP $(date)" >> $LOGFILE
 
-logger -t $LOGTAG "STARTING $0 $@"
+# FIXME: Quoten!
 
 if [ ! -d $BACKUPDIR ]; then
   logger "$BACKUPDIR does not exist"
@@ -33,22 +40,21 @@
   exit 1
 fi
 
+umask 077
+
 while (( "$#" )); do
-  if [ ! -e "$1" ]; then
-    logger "$1 does not exist"
-    exit 1
-  fi
 
   PATH2BACKUP="$1"
-  SUBSTR=`expr match "$PATH2BACKUP" '\/*.*\/'`
-  NAME=${PATH2BACKUP:SUBSTR}
+  # tar wird doch auch feststellen, dass was fehlt
+  #if [ ! -e "$PATH2BACKUP" ]; then
+  #  logger "$1 does not exist"
+  #  exit 1
+  #fi
+
+  NAME=$(basename "$PATH2BACKUP")
   ARCHIV="$BACKUPDIR/$NAME.tar.xz"
-  ACLFILE="$PATH2BACKUP/$NAME.acls.txt"
-  ATTRFILE="$PATH2BACKUP/$NAME.attr.txt"
-
-  touch $ACLFILE && chmod go-rwx $ACLFILE
-  touch $ATTRFILE && chmod go-rwx $ATTRFILE
-  
+  ACLFILE="$PATH2BACKUP/$NAME.acls"
+  ATTRFILE="$PATH2BACKUP/$NAME.attr"
 
   getfacl --recursive \
           --logical \