72 lines
1.7 KiB
Bash
72 lines
1.7 KiB
Bash
#!/bin/bash
|
||
|
||
function do_and_check_cmd() {
|
||
if [ "$CHANGE_DIR" != "" ] ; then
|
||
cd "$CHANGE_DIR"
|
||
fi
|
||
output=$("$@" 2>&1)
|
||
ret="$?"
|
||
if [ $ret -ne 0 ] ; then
|
||
echo "❌ Error from command : $*"
|
||
echo "$output"
|
||
exit $ret
|
||
fi
|
||
#echo $output
|
||
return 0
|
||
}
|
||
|
||
|
||
# Check if we are root
|
||
if [ $(id -u) -ne 0 ] ; then
|
||
echo "❌ Run me as root"
|
||
exit 1
|
||
fi
|
||
|
||
# Detect OS
|
||
OS=""
|
||
if [ "$(grep Debian /etc/os-release)" != "" ] ; then
|
||
OS="debian"
|
||
elif [ "$(grep Ubuntu /etc/os-release)" != "" ] ; then
|
||
OS="ubuntu"
|
||
elif [ "$(grep CentOS /etc/os-release)" != "" ] ; then
|
||
OS="centos"
|
||
fi
|
||
if [ "$OS" = "" ] ; then
|
||
echo "❌ Unsupported Operating System"
|
||
exit 1
|
||
fi
|
||
|
||
# Stop nginx
|
||
systemctl status nginx > /dev/null 2>&1
|
||
if [ $? -eq 0 ] ; then
|
||
echo "ℹ️ Stop nginx service"
|
||
do_and_check_cmd systemctl stop nginx
|
||
fi
|
||
|
||
# Reload old nginx.service file
|
||
echo "ℹ️ Restore old nginx service"
|
||
do_and_check_cmd mv /lib/systemd/system/nginx.service.bak /lib/systemd/system/nginx.service
|
||
do_and_check_cmd systemctl daemon-reload
|
||
|
||
# Remove UI service
|
||
systemctl status bunkerweb-ui > /dev/null 2>&1
|
||
if [ $? -eq 0 ] ; then
|
||
echo "ℹ️ Stop bunkerweb-ui service"
|
||
do_and_check_cmd systemctl stop bunkerweb-ui
|
||
fi
|
||
echo "ℹ️ Remove bunkerweb-ui service"
|
||
do_and_check_cmd systemctl disable bunkerweb-ui
|
||
do_and_check_cmd rm -f /lib/systemd/system/bunkerweb-ui.service
|
||
do_and_check_cmd systemctl daemon-reload
|
||
do_and_check_cmd systemctl reset-failed
|
||
do_and_check_cmd sed -i "s@nginx ALL=(root:root) NOPASSWD: /opt/bunkerweb/ui/linux.sh@@" /etc/sudoers
|
||
|
||
# Remove /opt/bunkerweb
|
||
if [ -e "/opt/bunkerweb" ] ; then
|
||
echo "ℹ️ Remove /opt/bunkerweb"
|
||
do_and_check_cmd rm -rf /opt/bunkerweb
|
||
fi
|
||
|
||
# We're done
|
||
echo "ℹ️ BunkerWeb successfully uninstalled"
|