HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux sci 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: tpdc (1002)
PHP: 7.4.3-4ubuntu2.29
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/lib/dpkg/info/nutanix-guest-agent.preinst
#!/bin/sh
# This `DEBIAN/preinst` script is run pre-installation
set -e

NGT_ROOT=/usr/local/nutanix/ngt
NGT_DAEMON_NAME=ngt_guest_agent
SSR_DAEMON_NAME=ngt_self_service_restore
DAEMON_CONFIG_DIR=/etc/init.d/
NGT_DAEMON_PATH=$DAEMON_CONFIG_DIR/$NGT_DAEMON_NAME
SSR_DAEMON_PATH=$DAEMON_CONFIG_DIR/$SSR_DAEMON_NAME
NGT_CONFIG_DIR=$NGT_ROOT/config/
NGT_MARKER_FILENAME=ngt_marker
OLD_NGT_MARKER_PATH=$NGT_CONFIG_DIR/$NGT_MARKER_FILENAME
NGT_INSTALL_MARKER_FILENAME=ngt_install
NGT_UPGRADE_MARKER_FILENAME=ngt_upgrade
OLD_NGT_INSTALL_MARKER_PATH=$NGT_ROOT/$NGT_INSTALL_MARKER_FILENAME
OLD_NGT_UPGRADE_MARKER_PATH=$NGT_ROOT/$NGT_UPGRADE_MARKER_FILENAME

precheck() {
    if [ -f $NGT_DAEMON_PATH ]; then
        $NGT_DAEMON_PATH stop >/dev/null 2>&1 || :
        update-rc.d -f $NGT_DAEMON_NAME remove >/dev/null 2>&1 || :
        rm -rf $NGT_DAEMON_PATH;
    fi;
    if [ -f $SSR_DAEMON_PATH ]; then
        $SSR_DAEMON_NAME stop >/dev/null 2>&1 || :
        update-rc.d -f $SSR_DAEMON_NAME remove >/dev/null 2>&1 || :
        rm -rf $SSR_DAEMON_PATH;
    fi;
    # Cleanup existing folder except config and logs
    # in case if any user do upgrade from legacy to rpm.
    if [ -d $NGT_ROOT ]; then
        find $NGT_ROOT -maxdepth 1 -mindepth 1 ! -name logs ! -name config -exec rm -rf {} \;
    fi
}

remove_old_ngt_marker() {
    if [ -f $OLD_NGT_MARKER_PATH ]; then
        rm -rf $OLD_NGT_MARKER_PATH;
    fi;
    if [ -f $OLD_NGT_INSTALL_MARKER_PATH ]; then
        rm -rf $OLD_NGT_INSTALL_MARKER_PATH;
    fi;
    if [ -f $OLD_NGT_UPGRADE_MARKER_PATH ]; then
        rm -rf $OLD_NGT_UPGRADE_MARKER_PATH;
    fi;
}

# Write a marker file to indicate completion of pre-installation steps.
case "$1" in
    "install")
        echo "Pre: Nutanix Guest Agent debian package is getting install."
        precheck
        remove_old_ngt_marker
        mkdir -p $NGT_ROOT
        touch $NGT_ROOT/ngt_install
    ;;
    "upgrade")
        echo "Pre: Nutanix Guest Agent debian package is getting upgraded."
        remove_old_ngt_marker
        mkdir -p $NGT_ROOT
        touch $NGT_ROOT/ngt_upgrade
    ;;
esac