обавлен скрипт для автоматической установки синхронизации

This commit is contained in:
2026-04-13 23:37:01 +03:00
parent 52b65c88ad
commit 8affd84963

39
bash/setup_sync.sh Normal file
View File

@@ -0,0 +1,39 @@
#!/bin/bash
# ==============================================================================
# Скрипт: setup_sync.sh
# Описание: Автоматически настраивает ежечасное скачивание репозитория server-tools
# ==============================================================================
set -e
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'
echo -e "${GREEN}=== Настройка автоматической синхронизации скриптов ===${NC}"
# Проверяем, запущен ли скрипт с правами суперпользователя (root)
if [ "$EUID" -ne 0 ]; then
echo -e "${YELLOW}Пожалуйста, запустите эту команду через sudo или от имени root.${NC}"
exit 1
fi
# Ссылка на наш скрипт синхронизации
SYNC_SCRIPT_URL="https://gitlab.alex2py.ru/uristalex/server-tools/raw/branch/main/auto-update/sync_scripts.sh"
# Команда, которая будет выполняться каждый час (0 минут каждого часа)
CRON_JOB="0 * * * * bash <(curl -sSL $SYNC_SCRIPT_URL) > /var/log/sync_scripts.log 2>&1"
# Проверяем, нет ли уже такой задачи в cron, чтобы избежать дублей
if crontab -l 2>/dev/null | grep -q "$SYNC_SCRIPT_URL"; then
echo -e "${YELLOW}Задача уже настроена в планировщике (cron). Пропускаю...${NC}"
else
# Добавляем задачу в cron
(crontab -l 2>/dev/null; echo "$CRON_JOB") | crontab -
echo -e "${GREEN}[+] Задача успешно добавлена в cron. Обновление будет идти каждый час.${NC}"
fi
echo -e "\n${GREEN}=== Выполняю первую синхронизацию прямо сейчас ===${NC}"
# Запускаем скрипт синхронизации по ссылке
bash <(curl -sSL "$SYNC_SCRIPT_URL")
echo -e "\n${GREEN}Настройка полностью завершена! Скрипты лежат в /opt/server-tools${NC}"