diff --git a/install.sh b/install.sh index 659c3de..e5d15d3 100644 --- a/install.sh +++ b/install.sh @@ -1,6 +1,20 @@ #!/bin/bash set -e +UNINSTALL=false + +while getopts ":u" opt; do + case $opt in + u) + UNINSTALL=true + ;; + \?) + echo -e "${RED}[ERROR]${NC} Неизвестный параметр: -$OPTARG" >&2 + exit 1 + ;; + esac +done + RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' @@ -37,9 +51,42 @@ else exit 1 fi +if [ "$UNINSTALL" = true ]; then + full_uninstall +fi + +full_uninstall() { + echo -e "${YELLOW}[INFO]${NC} Начинаем полное удаление LAMP-окружения..." + + systemctl stop nginx apache2 httpd php*-fpm mariadb mysql redis 2>/dev/null || true + + if [ "$DISTRO_FAMILY" = "debian" ]; then + apt purge -y nginx* apache2* php* mariadb* mysql* redis* 2>/dev/null || true + apt autoremove -y 2>/dev/null || true + else + $PKG_MANAGER remove -y nginx httpd php* mariadb* mysql* redis* 2>/dev/null || true + fi + + rm -rf \ + /etc/nginx \ + /etc/apache2 \ + /etc/httpd \ + /etc/php* \ + /var/www/html/* \ + /var/lib/mysql* \ + /var/lib/redis* \ + ~/.mysql_history \ + /root/.mysql_history 2>/dev/null || true + + echo -e "${GREEN}[SUCCESS]${NC} Полное удаление завершено!" + exit 0 +} + systemctl stop nginx httpd apache2 php*-fpm 2>/dev/null || true systemctl disable nginx httpd 2>/dev/null || true +echo "Установка Altcor..." + if [ "$DISTRO_FAMILY" = "debian" ]; then apt remove -y nginx nginx-common nginx-core >/dev/null 2>&1 || true apt remove -y php7.* php8.0* php8.1* php8.2* libapache2-mod-php7.* libapache2-mod-php8.0* libapache2-mod-php8.1* libapache2-mod-php8.2* >/dev/null 2>&1 || true @@ -321,7 +368,7 @@ if curl -f -L --max-time 30 -o "$WEBROOT/index.php" "$DOWNLOAD_URL" 2>/dev/null; create_fallback_index log_error "Скачанный файл не является PHP-скриптом, создана резервная страница" else - log_success "Файл index.php успешно загружен" + echo "Ещё чуть-чуть... fi else create_fallback_index @@ -451,7 +498,7 @@ fi IP_ADDR=$(hostname -I | awk '{print $1}') echo "" -echo "Установка успешно завершена." +echo "Установка Altcor успешно завершена." echo " Доступ к сайту:" echo " • http://localhost/" echo " • http://$IP_ADDR/"