install.sh aktualisiert
This commit is contained in:
57
install.sh
57
install.sh
@ -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!"
|
Reference in New Issue
Block a user