#!/bin/bash # Prüfen, ob das Skript mit sudo ausgeführt wird if [[ $EUID -ne 0 ]]; then echo "Dieses Skript muss mit sudo ausgeführt werden." exit 1 fi # Variablen INSTALL_DIR="/opt/nextcloud_log_alert" CONFIG_FILE="$INSTALL_DIR/config.conf" SERVICE_FILE="/etc/systemd/system/nextcloud_log_alert.service" PYTHON_SCRIPT="nextcloud_log_alert.py" DEFAULT_LOG_FILE="/home/data/nextcloud.log" # Erstellen des Installationsverzeichnisses mkdir -p "$INSTALL_DIR" # Verschieben des Python-Skripts mv "$PYTHON_SCRIPT" "$INSTALL_DIR/" chmod +x "$INSTALL_DIR/$PYTHON_SCRIPT" # Benutzerabfragen read -p "Bitte die WEBHOOK_URL eingeben: " WEBHOOK_URL read -p "Bitte den Pfad zur Nextcloud-Logdatei eingeben (leer lassen für Standard: $DEFAULT_LOG_FILE): " LOG_FILE # Standardwert setzen, falls keine Eingabe if [ -z "$LOG_FILE" ]; then LOG_FILE="$DEFAULT_LOG_FILE" fi # Erstellen der Konfigurationsdatei echo "WEBHOOK_URL=$WEBHOOK_URL" > "$CONFIG_FILE" echo "LOG_FILE=$LOG_FILE" >> "$CONFIG_FILE" chmod 600 "$CONFIG_FILE" # Erstellen des Systemd-Service-Files cat < "$SERVICE_FILE" [Unit] Description=Nextcloud Log Alert Service After=network.target [Service] ExecStart=/usr/bin/python3 $INSTALL_DIR/$PYTHON_SCRIPT WorkingDirectory=$INSTALL_DIR Restart=always User=root [Install] WantedBy=multi-user.target EOF # Setzen der korrekten Berechtigungen chmod 644 "$SERVICE_FILE" # Systemd-Dienst aktivieren und starten systemctl daemon-reload systemctl enable nextcloud_log_alert.service systemctl start nextcloud_log_alert.service # Status des Dienstes anzeigen systemctl status nextcloud_log_alert.service --no-pager echo "Setup abgeschlossen!"