Imported Upstream version 3.3.1
[debian/amanda] / packaging / sun-pkg / server / postinstall.src
diff --git a/packaging/sun-pkg/server/postinstall.src b/packaging/sun-pkg/server/postinstall.src
new file mode 100755 (executable)
index 0000000..c4ab56e
--- /dev/null
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+LOGFILE=`mktemp /tmp/deb-log-amanda_enterprise-client.XXXXXXXXXXX`
+if [ $? -ne 0 ]; then
+    echo "Unable to mktemp!" 1>&2
+    exit 1
+fi
+amanda_user=amandabackup; export amanda_user
+amanda_group=disk; export amanda_group
+AMANDAHOMEDIR="${BASEDIR}/%%AMANDAHOMEDIR%%"; export AMANDAHOMEDIR
+os=SunOS; export os
+arch=%%ARCH%%; export arch
+LOGDIR="${BASEDIR}/%%LOGDIR%%"; export LOGDIR
+INSTALL_LOG="${LOGDIR}/install.log"; export INSTALL_LOG
+SYSCONFDIR="${BASEDIR}/etc"; export SYSCONFDIR
+SBINDIR="${BASEDIR}/usr/sbin"; export SBINDIR
+AMTMP="/tmp/amanda"
+
+AMANDATES=${SYSCONFDIR}/amandates; export AMANDATES
+
+exit_msg="Amanda installation log can be found in '${INSTALL_LOG}'."
+
+# ---------- Common functions ------------
+%%COMMON_FUNCTIONS%%
+%%POST_INST_FUNCTIONS%%
+
+# -------- End Common functions ----------
+
+add_service
+rel=`uname -r`
+if [ "$rel" = "5.8" ]; then
+    check_inetd "amandaserver"
+    case $? in
+      0) backup_inetd "amandaserver"
+           install_inetd "amandaserver"
+      ;;
+      1) install_inetd "amandaserver" ;;
+      2) logger "Error: Amanda service not installed because inetd config was not found: either inetd config is not present or inetd is a directory." ;;
+    esac
+    # Amanda clients should not have the server xinetd installed.
+    check_inetd "amandaclient"
+    case $? in
+      0) backup_inetd "amandaclient" ;;
+    esac
+    reload_inetd
+else
+    # Solaris 10+ uses smf, but we can't differentiate server from client, all
+    # entries end up named "amanda"
+    case check_smf "amanda"
+      0) backup_smf || logger "Warning: Backup of existing service failed. continuing..."
+         install_smf "amandaserver" || \
+            logger "Warning: Amanda service not installed."
+      ;;
+      1) install_smf "amandaserver" ;;
+    esac
+fi
+
+create_amandates
+check_amandates
+create_gnupg
+check_gnupg
+create_amandahosts
+check_amandahosts_entry ${amanda_user} amdump
+check_amandahosts_perms
+create_ssh_key client
+create_profile
+check_profile
+install_client_conf
+create_amtmp
+
+logger "Amanda installation complete."
+cat $LOGFILE >> $INSTALL_LOG
+rm $LOGFILE
+
+echo "${exit_msg}"