diff --git a/usenet-scripts/movetdarr.sh b/usenet-scripts/movetdarr.sh index 8671483..4e8024f 100644 --- a/usenet-scripts/movetdarr.sh +++ b/usenet-scripts/movetdarr.sh @@ -145,14 +145,19 @@ register_lease() { } if command -v flock >/dev/null 2>&1; then - flock -w 900 "$LEASE_LOCK" -c 'set -e' || true # Lock-Datei anlegen - exec 9>"$LEASE_LOCK" - if ! flock -w 900 9; then + # BusyBox flock hat kein -w (timeout) → -n (non-blocking) mit Retry-Loop + LEASE_ACQUIRED=false + for i in $(seq 1 900); do + if flock -n "$LEASE_LOCK" -c true 2>/dev/null; then + LEASE_ACQUIRED=true + break + fi + sleep 1 + done + if [ "$LEASE_ACQUIRED" != "true" ]; then log "WARNUNG: Lease-Lock nach 15 Minuten nicht erhalten; fahre ohne Lock fort" - register_lease - else - register_lease fi + register_lease else register_lease fi