Compare commits
2 Commits
e01ce0b019
...
b9b3a5c077
| Author | SHA1 | Date | |
|---|---|---|---|
| b9b3a5c077 | |||
| ad1d3bdb6c |
1
.gitignore
vendored
1
.gitignore
vendored
@ -33,3 +33,4 @@ core
|
|||||||
|
|
||||||
.fleet
|
.fleet
|
||||||
.idea
|
.idea
|
||||||
|
.vscode
|
||||||
|
|||||||
@ -25,13 +25,13 @@ RESTART_COUNT=$(<"$RESTART_COUNT_FILE")
|
|||||||
|
|
||||||
# === Hilfe-Seite ===
|
# === Hilfe-Seite ===
|
||||||
if [[ "$*" == *"-h"* ]]; then
|
if [[ "$*" == *"-h"* ]]; then
|
||||||
echo "Benutzung: $0 <DEVICE_MAC> <WEBDAV_URL> <NFS_PATH>"
|
echo "Benutzung: $0 <WEBDAV_URL> [DEVICE_MAC] [NFS_PATH]"
|
||||||
echo
|
echo
|
||||||
echo "Optionen:"
|
echo "Optionen:"
|
||||||
echo " -h Zeigt diese Hilfenachricht an"
|
echo " -h Zeigt diese Hilfenachricht an"
|
||||||
echo " DEVICE_MAC Die MAC-Adresse des Geräts"
|
echo " WEBDAV_URL Die WebDAV-URL des Dateisystems (Pflichtfeld)"
|
||||||
echo " WEBDAV_URL Die WebDAV-URL des Dateisystems"
|
echo " DEVICE_MAC Die MAC-Adresse des Geräts (optional, für Wake-on-LAN)"
|
||||||
echo " NFS_PATH Der NFS-Pfad des Dateisystems"
|
echo " NFS_PATH Der NFS-Pfad des Dateisystems (optional, wenn NFS genutzt wird)"
|
||||||
echo
|
echo
|
||||||
echo "Dieses Skript muss als root ausgeführt werden! Bsp. sudo $0"
|
echo "Dieses Skript muss als root ausgeführt werden! Bsp. sudo $0"
|
||||||
echo "Folgende Pakete müssen installiert sein: davfs2, nfs-common, nmap-common, wakeonlan, wget"
|
echo "Folgende Pakete müssen installiert sein: davfs2, nfs-common, nmap-common, wakeonlan, wget"
|
||||||
@ -50,15 +50,15 @@ if [[ $EUID -ne 0 ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# === PARAMETER-ÜBERPRÜFUNG ===
|
# === PARAMETER-ÜBERPRÜFUNG ===
|
||||||
if [[ "$#" -ne 3 ]]; then
|
if [[ "$#" -lt 1 ]]; then
|
||||||
echo "Benutzung: $0 <DEVICE_MAC> <WEBDAV_URL> <NFS_PATH>"
|
echo "Benutzung: $0 <WEBDAV_URL> [DEVICE_MAC] [NFS_PATH]"
|
||||||
remove_lock
|
remove_lock
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
DEVICE_MAC="$1"
|
WEBDAV_URL="$1"
|
||||||
WEBDAV_URL="$2"
|
DEVICE_MAC="${2:-}"
|
||||||
NFS_PATH="$3"
|
NFS_PATH="${3:-}"
|
||||||
|
|
||||||
# === KONFIGURATION ===
|
# === KONFIGURATION ===
|
||||||
MOUNT_POINT="/media/HiDrive" # Gemeinsamer Einhängepunkt für NFS/WebDAV
|
MOUNT_POINT="/media/HiDrive" # Gemeinsamer Einhängepunkt für NFS/WebDAV
|
||||||
@ -143,7 +143,8 @@ if ! check_nfs_installed && ! check_webdav_installed; then
|
|||||||
restart_script "$@"
|
restart_script "$@"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Gerät erreichbar?
|
if [[ -n "$DEVICE_MAC" && -n "$NFS_PATH" ]]; then
|
||||||
|
log "Wake-on-LAN wird genutzt für Gerät mit MAC: $DEVICE_MAC"
|
||||||
DEVICE_IP=$(wake_device "$DEVICE_MAC")
|
DEVICE_IP=$(wake_device "$DEVICE_MAC")
|
||||||
|
|
||||||
if [[ -n "$DEVICE_IP" ]]; then
|
if [[ -n "$DEVICE_IP" ]]; then
|
||||||
@ -167,7 +168,21 @@ else
|
|||||||
if is_mounted "$MOUNT_POINT"; then
|
if is_mounted "$MOUNT_POINT"; then
|
||||||
unmount "$MOUNT_POINT"
|
unmount "$MOUNT_POINT"
|
||||||
fi
|
fi
|
||||||
if check_webdav_installed && check_webdav_credentials; then
|
if check_webdav_installed; then
|
||||||
|
mount_webdav || restart_script "$@"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
log "WebDAV ist bereits gemountet."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
log "Kein Gerät angegeben. Direktes Einbinden von WebDAV..."
|
||||||
|
if ! is_webdav_mounted "$MOUNT_POINT"; then
|
||||||
|
log "WebDAV ist nicht gemountet. Einbinden..."
|
||||||
|
if is_mounted "$MOUNT_POINT"; then
|
||||||
|
unmount "$MOUNT_POINT"
|
||||||
|
fi
|
||||||
|
if check_webdav_installed; then
|
||||||
mount_webdav || restart_script "$@"
|
mount_webdav || restart_script "$@"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user