diff --git a/install.sh b/install.sh index 55b8e9e..168ad81 100644 --- a/install.sh +++ b/install.sh @@ -4,14 +4,21 @@ clear set -e UNINSTALL=false +FORCE_REINSTALL=false -while getopts ":u" opt; do +while getopts ":uf" opt; do case $opt in u) UNINSTALL=true ;; + f) + FORCE_REINSTALL=true + ;; \?) echo -e "${RED}[Ошибка]${NC} Неизвестный параметр: -$OPTARG" >&2 + echo "Использование: $0 [-u] [-f]" + echo " -u Полное удаление" + echo " -f Принудительная переустановка" exit 1 ;; esac @@ -20,20 +27,164 @@ done RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' +BLUE='\033[0;34m' +CYAN='\033[0;36m' NC='\033[0m' log_success() { echo -e "${GREEN}[Успех]${NC} $1"; } log_error() { echo -e "${RED}[Ошибка]${NC} $1"; } +log_info() { echo -e "${BLUE}[Инфо]${NC} $1"; } +log_warning() { echo -e "${YELLOW}[Предупреждение]${NC} $1"; } +log_step() { echo -e "${CYAN}[Шаг]${NC} $1"; } generate_password() { openssl rand -base64 32 | tr -d "=+/" | cut -c1-16 } -full_uninstall() { - echo -e "${YELLOW}[Инфо]${NC} Начинаем полное удаление Altcor... :(" +check_component() { + local component=$1 + local command_check=$2 + local service_check=$3 + if [[ -n "$command_check" && $(command -v "$command_check" 2>/dev/null) ]]; then + if [[ -n "$service_check" ]]; then + if systemctl is-active --quiet "$service_check" 2>/dev/null; then + return 0 # установлен и работает + else + return 1 # установлен, но не работает + fi + else + return 0 # установлен + fi + else + return 2 # не установлен + fi +} + +check_existing_installation() { + log_step "Проверка существующей установки..." + + local apache_status php_status mariadb_status redis_status + local need_reinstall=false + + # Проверка Apache + if [ "$DISTRO_FAMILY" = "debian" ]; then + check_component "Apache2" "apache2" "apache2" + apache_status=$? + else + check_component "Apache (httpd)" "httpd" "httpd" + apache_status=$? + fi + + # Проверка PHP + check_component "PHP" "php" "" + php_status=$? + + # Проверка MariaDB + check_component "MariaDB" "mysql" "mariadb" + mariadb_status=$? + + # Проверка Redis + check_component "Redis" "redis-server" "redis-server" + if [ $? -eq 2 ]; then + check_component "Redis" "redis-cli" "redis" + redis_status=$? + else + redis_status=$? + fi + + echo "" + echo "=== Статус компонентов ===" + + case $apache_status in + 0) echo -e "Apache: ${GREEN}Установлен и работает${NC}" ;; + 1) echo -e "Apache: ${YELLOW}Установлен, но не работает${NC}"; need_reinstall=true ;; + 2) echo -e "Apache: ${RED}Не установлен${NC}"; need_reinstall=true ;; + esac + + case $php_status in + 0) + php_version=$(php -v 2>/dev/null | head -1 | cut -d' ' -f2 | cut -d'.' -f1,2) + if [[ "$php_version" == "8.3" ]]; then + echo -e "PHP: ${GREEN}Установлен (версия $php_version)${NC}" + else + echo -e "PHP: ${YELLOW}Установлен (версия $php_version, требуется 8.3)${NC}" + need_reinstall=true + fi + ;; + 2) echo -e "PHP: ${RED}Не установлен${NC}"; need_reinstall=true ;; + esac + + case $mariadb_status in + 0) echo -e "MariaDB: ${GREEN}Установлен и работает${NC}" ;; + 1) echo -e "MariaDB: ${YELLOW}Установлен, но не работает${NC}"; need_reinstall=true ;; + 2) echo -e "MariaDB: ${RED}Не установлен${NC}"; need_reinstall=true ;; + esac + + case $redis_status in + 0) echo -e "Redis: ${GREEN}Установлен и работает${NC}" ;; + 1) echo -e "Redis: ${YELLOW}Установлен, но не работает${NC}"; need_reinstall=true ;; + 2) echo -e "Redis: ${RED}Не установлен${NC}"; need_reinstall=true ;; + esac + + # Проверка конфигурации базы данных + if [ -f "/var/www/html/db_config.php" ]; then + echo -e "Конфигурация БД: ${GREEN}Найдена${NC}" + else + echo -e "Конфигурация БД: ${RED}Не найдена${NC}" + need_reinstall=true + fi + + echo "" + + if [ "$need_reinstall" = false ] && [ "$apache_status" -eq 0 ] && [ "$php_status" -eq 0 ] && [ "$mariadb_status" -eq 0 ]; then + log_success "Все компоненты уже установлены и работают корректно!" + echo "" + + if [ "$FORCE_REINSTALL" = false ]; then + echo "Что вы хотите сделать?" + echo "1) Продолжить (проверить/обновить конфигурацию)" + echo "2) Принудительно переустановить все компоненты" + echo "3) Выйти" + echo "" + read -p "Выберите опцию (1-3): " choice + + case $choice in + 1) + log_info "Продолжаем с проверкой конфигурации..." + return 1 # продолжить с настройкой + ;; + 2) + log_info "Начинаем принудительную переустановку..." + FORCE_REINSTALL=true + return 0 # полная переустановка + ;; + 3) + log_info "Установка отменена." + exit 0 + ;; + *) + log_warning "Неверный выбор. Продолжаем с проверкой конфигурации..." + return 1 + ;; + esac + else + log_info "Форсируем переустановку всех компонентов..." + return 0 + fi + else + log_info "Обнаружены отсутствующие или неработающие компоненты. Продолжаем установку..." + return 0 + fi +} + +full_uninstall() { + log_step "Начинаем полное удаление Altcor... :(" + + log_info "Остановка сервисов..." systemctl stop nginx apache2 httpd php*-fpm mariadb mysql redis 2>/dev/null || true + log_info "Удаление пакетов..." 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 @@ -41,6 +192,7 @@ full_uninstall() { $PKG_MANAGER remove -y nginx httpd php* mariadb* mysql* redis* 2>/dev/null || true fi + log_info "Удаление файлов конфигурации и данных..." rm -rf \ /etc/nginx \ /etc/apache2 \ @@ -50,9 +202,10 @@ full_uninstall() { /var/lib/mysql* \ /var/lib/redis* \ ~/.mysql_history \ - /root/.mysql_history 2>/dev/null || true + /root/.mysql_history \ + /root/.db_password 2>/dev/null || true - echo -e "${GREEN}[Успешно]${NC} Полное удаление завершено." + log_success "Полное удаление завершено." exit 0 } @@ -61,10 +214,12 @@ if [[ $EUID -ne 0 ]]; then exit 1 fi +log_step "Определение дистрибутива..." if [ -f /etc/os-release ]; then . /etc/os-release DISTRO="$ID" FAMILY="$ID_LIKE" + log_success "Обнаружен дистрибутив: $PRETTY_NAME" else log_error "Не удалось определить дистрибутив." exit 1 @@ -88,102 +243,151 @@ if [ "$UNINSTALL" = true ]; then full_uninstall fi +# Проверка существующей установки +check_existing_installation +INSTALL_TYPE=$? + +if [ "$INSTALL_TYPE" -eq 1 ]; then + # Только настройка конфигурации + SKIP_PACKAGE_INSTALL=true +else + # Полная установка + SKIP_PACKAGE_INSTALL=false +fi + DB_PASSWORD=$(generate_password) -systemctl stop nginx httpd apache2 php*-fpm 2>/dev/null || true -systemctl disable nginx httpd 2>/dev/null || true +if [ "$SKIP_PACKAGE_INSTALL" = false ]; then + log_step "Остановка конфликтующих сервисов..." + systemctl stop nginx httpd apache2 php*-fpm 2>/dev/null || true + systemctl disable nginx httpd 2>/dev/null || true -echo "Установка Altcor..." + echo "" + echo "🚀 Начинаем установку Altcor..." + echo "" -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 -elif [ "$DISTRO_FAMILY" = "rhel" ]; then - $PKG_MANAGER remove -y nginx >/dev/null 2>&1 || true - $PKG_MANAGER remove -y php php7* php80* php81* php82* >/dev/null 2>&1 || true -fi + log_step "Удаление старых версий пакетов..." + 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 + elif [ "$DISTRO_FAMILY" = "rhel" ]; then + $PKG_MANAGER remove -y nginx >/dev/null 2>&1 || true + $PKG_MANAGER remove -y php php7* php80* php81* php82* >/dev/null 2>&1 || true + fi + log_success "Старые пакеты удалены" -if [ "$DISTRO_FAMILY" = "debian" ]; then - apt update -y >/dev/null 2>&1 - apt install -y software-properties-common lsb-release ca-certificates curl wget gnupg2 apt-transport-https unzip >/dev/null 2>&1 -elif [ "$DISTRO_FAMILY" = "rhel" ]; then - $PKG_MANAGER update -y >/dev/null 2>&1 - $PKG_MANAGER install -y epel-release >/dev/null 2>&1 || true - $PKG_MANAGER install -y curl wget gnupg2 unzip >/dev/null 2>&1 -fi - -if [ "$DISTRO_FAMILY" = "debian" ]; then - if ! apt-cache show php8.3 &>/dev/null; then - if ! add-apt-repository ppa:ondrej/php -y >/dev/null 2>&1; then - log_error "Не удалось добавить PPA ondrej/php." - exit 1 - fi - + log_step "Обновление списка пакетов..." + if [ "$DISTRO_FAMILY" = "debian" ]; then apt update -y >/dev/null 2>&1 - + apt install -y software-properties-common lsb-release ca-certificates curl wget gnupg2 apt-transport-https unzip >/dev/null 2>&1 + elif [ "$DISTRO_FAMILY" = "rhel" ]; then + $PKG_MANAGER update -y >/dev/null 2>&1 + $PKG_MANAGER install -y epel-release >/dev/null 2>&1 || true + $PKG_MANAGER install -y curl wget gnupg2 unzip >/dev/null 2>&1 + fi + log_success "Система обновлена, базовые пакеты установлены" + + log_step "Добавление репозиториев для PHP 8.3..." + if [ "$DISTRO_FAMILY" = "debian" ]; then if ! apt-cache show php8.3 &>/dev/null; then - log_error "PHP 8.3 все еще недоступен после добавления PPA." + log_info "Добавление PPA ondrej/php..." + if ! add-apt-repository ppa:ondrej/php -y >/dev/null 2>&1; then + log_error "Не удалось добавить PPA ondrej/php." + exit 1 + fi + + apt update -y >/dev/null 2>&1 + + if ! apt-cache show php8.3 &>/dev/null; then + log_error "PHP 8.3 все еще недоступен после добавления PPA." + exit 1 + fi + log_success "PPA добавлен успешно" + else + log_success "PHP 8.3 уже доступен в репозиториях" + fi + + elif [ "$DISTRO_FAMILY" = "rhel" ]; then + log_info "Добавление репозитория Remi..." + if [ "$DISTRO" = "fedora" ]; then + $PKG_MANAGER install -y https://rpms.remirepo.net/fedora/remi-release-$(rpm -E %fedora).rpm >/dev/null 2>&1 || true + else + $PKG_MANAGER install -y https://rpms.remirepo.net/enterprise/remi-release-$(rpm -E %rhel).rpm >/dev/null 2>&1 || true + fi + + if command -v dnf >/dev/null 2>&1; then + dnf module reset php -y >/dev/null 2>&1 || true + dnf module enable php:remi-8.3 -y >/dev/null 2>&1 || true + fi + + if ! $PKG_MANAGER list available php83* php8.3* >/dev/null 2>&1; then + log_error "PHP 8.3 недоступен в репозиториях." exit 1 fi + log_success "Репозиторий Remi добавлен успешно" fi - -elif [ "$DISTRO_FAMILY" = "rhel" ]; then - if [ "$DISTRO" = "fedora" ]; then - $PKG_MANAGER install -y https://rpms.remirepo.net/fedora/remi-release-$(rpm -E %fedora).rpm >/dev/null 2>&1 || true - else - $PKG_MANAGER install -y https://rpms.remirepo.net/enterprise/remi-release-$(rpm -E %rhel).rpm >/dev/null 2>&1 || true + + log_step "Установка Apache..." + if [ "$DISTRO_FAMILY" = "debian" ]; then + apt install -y apache2 >/dev/null 2>&1 + elif [ "$DISTRO_FAMILY" = "rhel" ]; then + $PKG_MANAGER install -y httpd >/dev/null 2>&1 fi - - if command -v dnf >/dev/null 2>&1; then - dnf module reset php -y >/dev/null 2>&1 || true - dnf module enable php:remi-8.3 -y >/dev/null 2>&1 || true + log_success "Apache установлен" + + log_step "Установка MariaDB..." + if [ "$DISTRO_FAMILY" = "debian" ]; then + apt install -y mariadb-server >/dev/null 2>&1 + elif [ "$DISTRO_FAMILY" = "rhel" ]; then + $PKG_MANAGER install -y mariadb-server >/dev/null 2>&1 fi - - if ! $PKG_MANAGER list available php83* php8.3* >/dev/null 2>&1; then - log_error "PHP 8.3 недоступен в репозиториях." - exit 1 - fi -fi - -if [ "$DISTRO_FAMILY" = "debian" ]; then - apt install -y apache2 >/dev/null 2>&1 - apt install -y mariadb-server >/dev/null 2>&1 - apt install -y redis-server libreoffice default-jre >/dev/null 2>&1 - - PHP_PACKAGES="php8.3 php8.3-cli php8.3-common php8.3-mysql php8.3-curl php8.3-gd \ - php8.3-mbstring php8.3-xml php8.3-zip php8.3-opcache php8.3-intl \ - php8.3-bcmath libapache2-mod-php8.3" - - if ! apt install -y $PHP_PACKAGES >/dev/null 2>&1; then - log_error "Не удалось установить PHP 8.3 и/или его расширения." - exit 1 - fi - -elif [ "$DISTRO_FAMILY" = "rhel" ]; then - $PKG_MANAGER install -y httpd >/dev/null 2>&1 - $PKG_MANAGER install -y mariadb-server >/dev/null 2>&1 - $PKG_MANAGER install -y redis libreoffice java-11-openjdk >/dev/null 2>&1 - - if [ "$DISTRO" = "fedora" ]; then - PHP_PACKAGES="php php-cli php-common php-mysqlnd php-curl php-gd \ - php-mbstring php-xml php-zip php-opcache php-intl \ - php-bcmath" - else - PHP_PACKAGES="php83 php83-php php83-php-cli php83-php-common php83-php-mysqlnd php83-php-curl php83-php-gd \ - php83-php-mbstring php83-php-xml php83-php-zip php83-php-opcache php83-php-intl \ - php83-php-bcmath" - fi - - if ! $PKG_MANAGER install -y $PHP_PACKAGES >/dev/null 2>&1; then - log_error "Не удалось установить PHP 8.3 и/или его расширения." - exit 1 - fi - - if command -v php83 >/dev/null 2>&1 && [ ! -f /usr/bin/php ]; then - ln -sf /usr/bin/php83 /usr/bin/php >/dev/null 2>&1 || true + log_success "MariaDB установлен" + + log_step "Установка дополнительных компонентов (Redis, LibreOffice, Java)..." + if [ "$DISTRO_FAMILY" = "debian" ]; then + apt install -y redis-server libreoffice default-jre >/dev/null 2>&1 + elif [ "$DISTRO_FAMILY" = "rhel" ]; then + $PKG_MANAGER install -y redis libreoffice java-11-openjdk >/dev/null 2>&1 fi + log_success "Дополнительные компоненты установлены" + + log_step "Установка PHP 8.3 и расширений..." + if [ "$DISTRO_FAMILY" = "debian" ]; then + PHP_PACKAGES="php8.3 php8.3-cli php8.3-common php8.3-mysql php8.3-curl php8.3-gd \ + php8.3-mbstring php8.3-xml php8.3-zip php8.3-opcache php8.3-intl \ + php8.3-bcmath libapache2-mod-php8.3" + + if ! apt install -y $PHP_PACKAGES >/dev/null 2>&1; then + log_error "Не удалось установить PHP 8.3 и/или его расширения." + exit 1 + fi + + elif [ "$DISTRO_FAMILY" = "rhel" ]; then + if [ "$DISTRO" = "fedora" ]; then + PHP_PACKAGES="php php-cli php-common php-mysqlnd php-curl php-gd \ + php-mbstring php-xml php-zip php-opcache php-intl \ + php-bcmath" + else + PHP_PACKAGES="php83 php83-php php83-php-cli php83-php-common php83-php-mysqlnd php83-php-curl php83-php-gd \ + php83-php-mbstring php83-php-xml php83-php-zip php83-php-opcache php83-php-intl \ + php83-php-bcmath" + fi + + if ! $PKG_MANAGER install -y $PHP_PACKAGES >/dev/null 2>&1; then + log_error "Не удалось установить PHP 8.3 и/или его расширения." + exit 1 + fi + + if command -v php83 >/dev/null 2>&1 && [ ! -f /usr/bin/php ]; then + ln -sf /usr/bin/php83 /usr/bin/php >/dev/null 2>&1 || true + fi + fi + log_success "PHP 8.3 и расширения установлены" +else + log_info "Пропускаем установку пакетов (используем существующие)" fi +log_step "Настройка Apache и модулей..." if [ "$DISTRO_FAMILY" = "debian" ]; then a2enmod php8.3 rewrite ssl headers expires deflate >/dev/null 2>&1 @@ -208,9 +412,10 @@ LoadModule rewrite_module modules/mod_rewrite.so SetHandler application/x-httpd-php EOF - fi +log_success "Модули Apache настроены" +log_step "Создание конфигурации виртуального хоста..." mkdir -p "$WEBROOT" cat > "$APACHE_CONF" < "$APACHE_CONF" < EOF +log_success "Конфигурация виртуального хоста создана" +log_step "Настройка PHP.ini..." if [ "$DISTRO_FAMILY" = "debian" ]; then PHP_INI_PATH="/etc/php/8.3/apache2/php.ini" elif [ "$DISTRO_FAMILY" = "rhel" ]; then @@ -295,8 +502,13 @@ if [ -f "$PHP_INI_PATH" ]; then sed -i 's/;*expose_php = .*/expose_php = Off/' "$PHP_INI_PATH" sed -i 's/;*display_errors = .*/display_errors = Off/' "$PHP_INI_PATH" sed -i 's/;*log_errors = .*/log_errors = On/' "$PHP_INI_PATH" + + log_success "PHP.ini настроен" +else + log_warning "Файл PHP.ini не найден по пути: $PHP_INI_PATH" fi +log_step "Создание конфигурации базы данных..." if [ "$DISTRO_FAMILY" = "debian" ]; then DB_SOCKET="/var/run/mysqld/mysqld.sock" else @@ -305,17 +517,16 @@ fi cat > "$WEBROOT/db_config.php" << EOF EOF +log_success "Конфигурация БД создана" DOWNLOAD_URL="https://cloud.altcor.ru/setup/download.php" TEMP_DOWNLOAD="/tmp/web_files_$(date +%s)" @@ -351,11 +562,11 @@ echo ""; // Проверка подключения к БД try { - $pdo = new PDO("mysql:host=$db_host;dbname=$db_name;charset=utf8mb4", $db_user, $db_pass); + $pdo = new PDO("mysql:host=" . DB_HOST . ";dbname=" . DB_NAME . ";charset=" . DB_CHARSET, DB_USER, DB_PASS); echo "
"; echo "База данных подключена
"; - echo "База данных: $db_name
"; - echo "Хост: $db_host"; + echo "База данных: " . DB_NAME . "
"; + echo "Хост: " . DB_HOST; echo "
"; } catch (PDOException $e) { echo "
"; @@ -377,6 +588,7 @@ echo ""; EOF } +log_step "Загрузка файлов приложения..." find "$WEBROOT" -type f ! -name "db_config.php" -delete 2>/dev/null || true if curl -f -L --max-time 30 -o "$WEBROOT/index.php" "$DOWNLOAD_URL" 2>/dev/null; then @@ -384,13 +596,14 @@ if curl -f -L --max-time 30 -o "$WEBROOT/index.php" "$DOWNLOAD_URL" 2>/dev/null; create_fallback_index log_warning "Скачанный файл не является PHP-скриптом, создана резервная страница" else - echo "Ещё чуть-чуть..." + log_success "Файлы приложения загружены" fi else create_fallback_index - log_error "Не удалось загрузить файл с $DOWNLOAD_URL, создана резервная страница" + log_warning "Не удалось загрузить файл с $DOWNLOAD_URL, создана резервная страница" fi +log_step "Настройка прав доступа к файлам..." chown $WEBSERVER_USER:$WEBSERVER_USER "$WEBROOT/index.php" chmod 644 "$WEBROOT/index.php" @@ -439,7 +652,9 @@ chown -R $WEBSERVER_USER:$WEBSERVER_USER "$WEBROOT" chmod -R 755 "$WEBROOT" chmod 644 "$WEBROOT/.htaccess" 2>/dev/null || true chmod 600 "$WEBROOT/db_config.php" +log_success "Права доступа настроены" +log_step "Настройка базы данных MariaDB..." MYSQL_TMP_SCRIPT="/tmp/mysql_setup_$(date +%s).sql" cat > "$MYSQL_TMP_SCRIPT" << MYSQL_SCRIPT @@ -465,16 +680,15 @@ if ! mysql -u root < "$MYSQL_TMP_SCRIPT" >/dev/null 2>&1; then exit 1 fi rm -f "$MYSQL_TMP_SCRIPT" +log_success "База данных настроена" +log_step "Проверка конфигурации Apache..." if [ "$DISTRO_FAMILY" = "debian" ]; then if ! apache2ctl configtest >/dev/null 2>&1; then log_error "Конфигурация Apache содержит ошибки." exit 1 fi - systemctl restart apache2 >/dev/null 2>&1 - systemctl enable apache2 >/dev/null 2>&1 - WEBSERVER_SERVICE="apache2" elif [ "$DISTRO_FAMILY" = "rhel" ]; then @@ -483,11 +697,17 @@ elif [ "$DISTRO_FAMILY" = "rhel" ]; then exit 1 fi - + WEBSERVER_SERVICE="httpd" +fi +log_success "Конфигурация Apache проверена" + +log_step "Запуск и включение сервисов..." +if [ "$DISTRO_FAMILY" = "debian" ]; then + systemctl restart apache2 >/dev/null 2>&1 + systemctl enable apache2 >/dev/null 2>&1 +elif [ "$DISTRO_FAMILY" = "rhel" ]; then systemctl restart httpd >/dev/null 2>&1 systemctl enable httpd >/dev/null 2>&1 - - WEBSERVER_SERVICE="httpd" fi systemctl restart mariadb >/dev/null 2>&1 @@ -496,6 +716,9 @@ systemctl restart redis-server >/dev/null 2>&1 || systemctl restart redis >/dev/ systemctl enable mariadb >/dev/null 2>&1 systemctl enable redis-server >/dev/null 2>&1 || systemctl enable redis >/dev/null 2>&1 || true +log_success "Все сервисы запущены и добавлены в автозагрузку" + +log_step "Финальная проверка работоспособности..." if ! systemctl is-active --quiet $WEBSERVER_SERVICE; then log_error "Веб-сервер не запущен" exit 1 @@ -511,6 +734,9 @@ if ! php -r "echo phpversion();" >/dev/null 2>&1; then exit 1 fi +log_success "Все компоненты работают корректно" + +log_step "Сохранение учетных данных..." DB_CREDENTIALS_FILE="/root/.db_password" cat > "$DB_CREDENTIALS_FILE" << EOF # Учетные данные базы данных ALTCor @@ -522,20 +748,29 @@ DB_NAME=ALTCor EOF chmod 600 "$DB_CREDENTIALS_FILE" +log_success "Учетные данные сохранены в $DB_CREDENTIALS_FILE" IP_ADDR=$(hostname -I | awk '{print $1}') +log_success "Установка Altcor успешно завершена" echo "" -echo "Установка Altcor успешно завершена." -echo " Доступ к сайту:" +echo "🌐 Доступ к сайту:" echo " • http://localhost/" echo " • http://$IP_ADDR/" echo "" -echo " Доступ к БД:" -echo " • Логин: root " +echo "🗄️ Доступ к БД:" +echo " • Хост: localhost" +echo " • Логин: root" echo " • Пароль: $DB_PASSWORD" +echo " • База данных: ALTCor" echo "" +echo "📁 Расположение файлов:" +echo " • Веб-корень: $WEBROOT" +echo " • Конфигурация БД: $WEBROOT/db_config.php" +echo " • Логи Apache: /var/log/apache2/ или /var/log/httpd/" echo "" -echo -e "${YELLOW}[Инфо]${NC} При необходимости, пароль от базы данных" -echo -e "находится в следующим пути: $DB_CREDENTIALS_FILE" +echo "ℹ️ Дополнительная информация:" +echo " • Учетные данные БД: $DB_CREDENTIALS_FILE" +echo " • Для переустановки: ./install.sh -f" +echo " • Для удаления: ./install.sh -u" echo "" \ No newline at end of file