diff options
Diffstat (limited to 'sysutils/bacula/pkg-install')
-rw-r--r-- | sysutils/bacula/pkg-install | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/sysutils/bacula/pkg-install b/sysutils/bacula/pkg-install new file mode 100644 index 0000000..5dccbf6c --- /dev/null +++ b/sysutils/bacula/pkg-install @@ -0,0 +1,48 @@ +#!/bin/sh + +PATH=/bin:/usr/sbin +if [ -z "${BACULA_DIR}" ]; then + BACULA_DIR=/var/db/bacula +fi + +case $2 in +PRE-INSTALL) + USER=bacula + GROUP=${USER} + UID=910 + GID=${UID} + + if pw group show "${GROUP}" 2>/dev/null; then + echo "You already have a group \"${GROUP}\", so I will use it." + else + if pw groupadd ${GROUP} -g ${GID}; then + echo "Added group \"${GROUP}\"." + else + echo "Adding group \"${GROUP}\" failed..." + exit 1 + fi + fi + + if pw user show "${USER}" 2>/dev/null; then + echo "You already have a user \"${USER}\", so I will use it." + if pw usermod ${USER} -d ${BACULA_DIR} -G operator + then + echo "Changed home directory of \"${USER}\" to \"${BACULA_DIR}\"" + else + echo "Changing home directory of \"${USER}\" to \"${BACULA_DIR}\" failed..." + exit 1 + fi + else + if pw useradd ${USER} -u ${UID} -g ${GROUP} -G operator -h - \ + -d ${BACULA_DIR} -s /sbin/nologin -c "Bacula Daemon" + then + echo "Added user \"${USER}\"." + else + echo "Adding user \"${USER}\" failed..." + exit 1 + fi + fi + + chown -R ${USER}:${GROUP} ${BACULA_DIR} + ;; +esac |