Compare commits

...

4 Commits

Author SHA1 Message Date
Asif Bacchus 257667f12a grant pilerUser permission to write to tmp dir 2019-07-25 12:42:20 -06:00
Asif Bacchus 9c8c250318 change 'cd exportDir' error code 2019-07-25 12:42:02 -06:00
Asif Bacchus 649d162d4c add piler user param and err check 2019-07-25 12:30:11 -06:00
Asif Bacchus c3aa35ab15 fix error in tmp directory removal cmd 2019-07-25 12:16:09 -06:00
2 changed files with 31 additions and 8 deletions

View File

@ -4,15 +4,15 @@
"fsPath": "$ROOTPATH$/pilerbackup.sh",
"bookmarks": [
-1,
201,
301,
46,
386,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1
637
]
}
]

View File

@ -43,7 +43,11 @@ badParam () {
elif [ "$1" = "svc" ]; then
printf "${err}\nError: '%s %s': Service does not exist!${norm}\n\n" \
"$2" "$3"
exit 1
exit 1
elif [ "$1" = "user" ]; then
printf "${err}\nError: '%s %s': User does not exist!${norm}\n\n" \
"$2" "$3"
exit 1
fi
}
@ -64,7 +68,7 @@ cleanup () {
fi
fi
# remove EML temporary directory
if ! rm -f "$exportDir" 2>>"$logFile"; then
if ! rm -rf "$exportDir" 2>>"$logFile"; then
printf "${warn}[%s] -- [WARNING] Could not remove EML export tmp dir:" \
"$(stamp)" >> "$logFile"
printf "\n%s\n" "$exportDir" >> "$logFile"
@ -203,6 +207,7 @@ webroot="/usr/share/nginx/html"
exportAll=0
exportStart=$( date -d 'yesterday' +'%Y.%m.%d' )
exportEnd=$( date -d 'yesterday' +'%Y.%m.%d' )
pilerUser='piler'
### process startup parameters
@ -293,6 +298,19 @@ while [ $# -gt 0 ]; do
badParam empty "$@"
fi
;;
--user)
# specify piler user account name
if [ -n "$2" ]; then
if id ${pilerUser} > /dev/null 2>&1; then
pilerUser="$2"
shift
else
badParam user "$@"
fi
else
badParam empty "$@"
fi
;;
*)
printf "${err}\nUnknown option: %s\n" "$1"
printf "${cyan}Use '--help' for valid options.{$norm}\n\n"
@ -373,8 +391,12 @@ printf "${cyan}[%s] -- [INFO] Exporting EML files from piler --${norm}\n" \
if ! exportDir=$( mktemp -d 2>>"$logFile" ); then
exitError 111 "Could not create temporary directory for exported EML files"
fi
# grant pilerUser permission to write to temporary directory
if ! chown root:${pilerUser} "$exportDir" && chmod 660 "$exportDir"; then
exitError 112 "Could not set permissions on temporary directory"
fi
if ! cd "$exportDir"; then
exitError 112 "Unable to change to temporary export directory"
exitError 113 "Unable to change to temporary export directory"
fi
printf "${cyan}[%s] -- [INFO] EML files will be temporarily stored in:" \
"$(stamp)" >> "$logFile"
@ -619,7 +641,8 @@ exit 0
# 3: borg not installed
# 99: TERM signal trapped
# 111: could not create tmp dir for EML dump from piler-export
# 112: could not change to tmp dir to start export operation
# 112: could not set permissions on tmp dir
# 113: could not change to tmp dir to start export operation
# 115: problem during piler-export operation
# 130: null configuration variable in details file
# 131: invalid configuration variable in details file