From ebae69708295bb25191da64b8c50cbdbe3d814c1 Mon Sep 17 00:00:00 2001 From: hosh1 Date: Sun, 10 Aug 2025 02:51:34 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=B2=D0=BE=D0=B7=D0=BC=D0=BE=D0=B6=D0=BD=D0=BE=D1=81?= =?UTF-8?q?=D1=82=D1=8C=20=D1=83=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F?= =?UTF-8?q?,=20=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20?= =?UTF-8?q?=D0=BB=D0=BE=D0=B3=D0=B8=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- install.sh | 51 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 49 insertions(+), 2 deletions(-) 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/"