install.sh aktualisiert

This commit is contained in:
2025-01-30 18:34:43 +00:00
parent 7e00d7e938
commit e4a9e49496

View File

@ -1,44 +1,48 @@
#!/bin/bash
# Skript muss mit sudo ausgeführt werden
# 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
# Verzeichnisse definieren
# Variablen
INSTALL_DIR="/opt/nextcloud_log_alert"
CONF_FILE="$INSTALL_DIR/webhook.conf"
CONFIG_FILE="$INSTALL_DIR/config.conf"
SERVICE_FILE="/etc/systemd/system/nextcloud_log_alert.service"
PYTHON_SCRIPT="$INSTALL_DIR/nextcloud_log_alert.py"
PYTHON_SCRIPT="nextcloud_log_alert.py"
DEFAULT_LOG_FILE="/home/data/nextcloud.log"
# Verzeichnis erstellen
# Erstellen des Installationsverzeichnisses
mkdir -p "$INSTALL_DIR"
# Prüfen, ob die Python-Datei vorhanden ist
if [ ! -f "$PYTHON_SCRIPT" ]; then
echo "Fehler: Die Datei $PYTHON_SCRIPT existiert nicht. Bitte stellen Sie sicher, dass das Skript im Installationsverzeichnis vorhanden ist."
exit 1
# 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
# Webhook vom Nutzer abfragen
if [ ! -f "$CONF_FILE" ]; then
echo "Webhook-URL für Discord eingeben:"
read -r webhook
echo "WEBHOOK_URL=$webhook" | tee "$CONF_FILE" > /dev/null
fi
# Erstellen der Konfigurationsdatei
echo "WEBHOOK_URL=$WEBHOOK_URL" > "$CONFIG_FILE"
echo "LOG_FILE=$LOG_FILE" >> "$CONFIG_FILE"
chmod 600 "$CONFIG_FILE"
# Rechte setzen
chmod +x "$PYTHON_SCRIPT"
# Systemd-Service erstellen
tee "$SERVICE_FILE" > /dev/null <<EOF
# Erstellen des Systemd-Service-Files
cat <<EOF > "$SERVICE_FILE"
[Unit]
Description=Nextcloud Log Alert Service
After=network.target
[Service]
ExecStart=/usr/bin/env python3 $PYTHON_SCRIPT
ExecStart=/usr/bin/python3 $INSTALL_DIR/$PYTHON_SCRIPT
WorkingDirectory=$INSTALL_DIR
Restart=always
User=root
@ -46,8 +50,15 @@ User=root
WantedBy=multi-user.target
EOF
# Service aktivieren und starten
# 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
systemctl status nextcloud_log_alert.service
# Status des Dienstes anzeigen
systemctl status nextcloud_log_alert.service --no-pager
echo "Setup abgeschlossen!"