Skripte/Mount/OneDrive.sh

47 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
# === IMPORTS ===
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "$SCRIPT_DIR/../Utility/NetworkCheck.sh"
source "$SCRIPT_DIR/../Utility/Log.sh"
# === Hilfe-Seite ===
if [[ "$*" == *"-h"* ]]; then
echo "Benutzung: $0 <PROFILE_NAME>"
echo
echo "Optionen:"
echo " -h Zeigt diese Hilfenachricht an"
echo " PROFILE_NAME Der Name des rclone-Profils, das eingehängt werden soll."
echo
echo "Folgende Pakete müssen installiert sein: rclone"
echo
echo "Dieses Skript bindet ein vorher angelegtes rclone-Profil im Dateisystem ein."
echo "Empfohlen wird die Verwendung für OneDrive."
exit 0
fi
# === Variablen ===
MOUNT_POINT="/media/$1"
PROFILE_NAME="$1"
# === Hauptskript ===
wait_for_internet_connection
if rclone listremotes | grep -q "^${PROFILE_NAME}:"; then
mkdir -p "$MOUNT_POINT"
if rclone listremotes | grep -q "^${PROFILE_NAME}:"; then
mkdir -p "$MOUNT_POINT"
if rclone mount "${PROFILE_NAME}:" "$MOUNT_POINT" --vfs-cache-mode writes --daemon; then
log "${PROFILE_NAME} wurde eingehängt."
else
log "Fehler beim Ausführen von rclone. Überprüfen Sie die rclone-Konfiguration und versuchen Sie es erneut."
fi
else
log "Kein rclone-Profil mit dem Namen '${PROFILE_NAME}' gefunden."
fi
else
log "Kein rclone-Profil mit dem Namen '${PROFILE_NAME}' gefunden."
fi