Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Permission Denied Fehler mit Skript

Featured Replies

Hallo Leute, 

 

Ich bin neuer Unraid User und habe ein Skript über das User Script plugin hinzugefügt um alte videoaufzeichnungen automatisch zu löschen.

Ich kriege jedoch ständig den folgende Fehler beim ausführen des Skripts angezeigt:

 

Quote

Script location: /tmp/user.scripts/tmpScripts/DelCamRec/script
Note that closing this window will abort the execution of this script
.
./.bash_history
./.config
./.config/sakura
./.config/sakura/sakura.conf
./.bashrc
./.bash_profile
./.docker
./.ssh
./.wget-hsts
/tmp/user.scripts/tmpScripts/DelCamRec/script: line 3: /mnt/user/CamRecords/video/ZTLVF/1_2024-04-21_18-54-37_449.mkv: Permission denied

DONE

 

Hab natürlich versucht über andere Beiträge das Problem zu lösen jedoch ohne erfolg.

Hab es über chmod probiert und auch über unraid direkt mit der docker safe  new perms.

 

Freue mich über eure Vorschläge.

  • Community Expert
1 hour ago, unDog said:

Freue mich über eure Vorschläge.

Zeig doch mal das script

  • Author
5 minutes ago, cz13 said:

Zeig doch mal das script

Bitteschön:

 

Quote

#!/bin/bash
find 
/mnt/user/CamRecords/video/ZTLVF/*.mkv -mtime +1 -type f -exec rm -f {}\;

 

lass mal über die Console die Dateirechte anzeigen:

 

ls

ls -lah  /mnt/user/CamRecords/video/ZTLVF/

 

  • Author
6 minutes ago, Archonw said:

lass mal über die Console die Dateirechte anzeigen:

 

ls

ls -lah  /mnt/user/CamRecords/video/ZTLVF/

 

Ausgabe:

 

Quote

drwxrwxrwx 1 nobody users   70 Apr 21 18:54 ./
drwxrwxrwx 1 nobody users   58 Apr 21 08:54 ../
-rw-rw-rw- 1 nobody users 4.4M Apr 21 18:55 1_2024-04-21_18-54-37_449.mkv
drwxrwxrwx 1 nobody users    6 Apr 21 08:54 grabs/
drwxrwxrwx 1 nobody users   86 Apr 21 18:54 thumbs/

 

Okay. Berechtigungen sehen gut aus. 

Welches Dateisystem hast du dort im Einsatz? 

  • Author
4 minutes ago, Archonw said:

Okay. Berechtigungen sehen gut aus. 

Welches Dateisystem hast du dort im Einsatz? 

Als Storage ist Cache->Array ausgewählt.

Cache ist btrfs und die disk ist xfs.

Kannst du schauen, auf welchem Datenträger die Datei liegt? 

Capture.thumb.PNG.d8693c84e6f668799746ee5de58637e9.PNG

 

  • Author
49 minutes ago, Archonw said:

Kannst du schauen, auf welchem Datenträger die Datei liegt? 

Capture.thumb.PNG.d8693c84e6f668799746ee5de58637e9.PNG

 

Liegt auf Disk 1.

Ich bin mir leider nicht sicher was da jetzt klemmt.

Du kannst mal schauen, ob du die Datei über die Console erfolgreich löschen kannst, wenn du magst.

 

 

rm /mnt/user/CamRecords/video/ZTLVF/1_2024-04-21_18-54-37_449.mkv

 

8 hours ago, unDog said:

Bitteschön:

 

Quote

#!/bin/bash
find 
/mnt/user/CamRecords/video/ZTLVF/*.mkv -mtime +1 -type f -exec rm -f {}\;

Boah... Ich hoffe das ist ein Fehler das du hier eine neue Zeile hast... Der syntax gefällt mir nicht wirklich hier...

Das skript versucht dein /root verzeichnis zu löschen...

 

Bitte mach es doch ein wenig anders:

#!/bin/bash
cd /mnt/user/CamRecords/video/ZTLVF
find . -name "*.mkv" -mtime +1 -type f -exec rm -f {} \;

 

Zuerst gehst du ins Verzeichnis mit cd dann fürhst du find im aktuellen Verzeichnis mit . aus und suchst nach allen Dateien die mit "*.mkv" enden im verzeichnis und allen unterverzeichnissen.

 

 

EDIT: Wenn du nur im Verzeichnis "/mnt/user/CamRecords/video/ZTLVF" ohne Unterverzeichnissen suchen willst dann muss das so aussehen:

#!/bin/bash
cd /mnt/user/CamRecords/video/ZTLVF
find . -maxdepth 1 -name "*.mkv" -mtime +1 -type f -exec rm -f {} \;

 

  • Author
1 hour ago, ich777 said:

Boah... Ich hoffe das ist ein Fehler das du hier eine neue Zeile hast... Der syntax gefällt mir nicht wirklich hier...

Das skript versucht dein /root verzeichnis zu löschen...

 

Bitte mach es doch ein wenig anders:

#!/bin/bash
cd /mnt/user/CamRecords/video/ZTLVF
find . -name "*.mkv" -mtime +1 -type f -exec rm -f {}\;

 

Zuerst gehst du ins Verzeichnis mit cd dann fürhst du find im aktuellen Verzeichnis mit . aus und suchst nach allen Dateien die mit "*.mkv" enden im verzeichnis und allen unterverzeichnissen.

 

 

EDIT: Wenn du nur im Verzeichnis "/mnt/user/CamRecords/video/ZTLVF" ohne Unterverzeichnissen suchen willst dann muss das so aussehen:

#!/bin/bash
cd /mnt/user/CamRecords/video/ZTLVF
find . -maxdepth 1 -name "*.mkv" -mtime +1 -type f -exec rm -f {} \;

 

Bei dem ersten vorgeschlagen Code kriege ich folgende Ausgabe:

 

Quote

Script location: /tmp/user.scripts/tmpScripts/DelCamRec/script
Note that closing this window will abort the execution of this script
find: missing argument to `-exec'

 Beim 2. Code: 

Quote

Script location: /tmp/user.scripts/tmpScripts/DelCamRec/script
Note that closing this window will abort the execution of this script
 

 

  • Author
2 hours ago, Archonw said:

Ich bin mir leider nicht sicher was da jetzt klemmt.

Du kannst mal schauen, ob du die Datei über die Console erfolgreich löschen kannst, wenn du magst.

 

 

rm /mnt/user/CamRecords/video/ZTLVF/1_2024-04-21_18-54-37_449.mkv

 

Über die Konsole wurde die Datei gelöscht.

Edited by unDog

  • Author

Seltsamerweise komme ich über meine Dateimanager App in jeden share rein, nur nicht in den CamRecords Ordner. 

"Zugriff abgelehnt"

Hallo unDog

 

1 hour ago, unDog said:

find: missing argument to `-exec'

Der Grund bei dem ersten Befehl ist ein fehlender Abstand nach den Schlaufenklammern "{}\;" -> "{} \;"

 

Der zweite Befehl hat geklappt, deswegen hast du nach "Note that closing this window will abort the execution of this script" keine weitere Meldung mehr erhalten.

 

Ich werde dir gleich noch was basteln, just a moment 😉

 

 

#!/bin/bash

# Pfad zum Verzeichnis
TARGET_DIR="/mnt/user/CamRecords/video/ZTLVF"

# Dateimuster, nach dem gesucht werden soll
FILE_PATTERN="*.mkv"

# Mindestanzahl von Tagen, die eine Datei alt sein muss, bevor sie gelöscht wird
MIN_DAYS=1

# Maximale Tiefe der Verzeichnissuche
MAX_DEPTH=1

#----------------------------------------------------------------------------------------------------

# Finde und lösche Dateien "-type f" in TARGET_DIR, die sich MAX_DEPTH im Verzeichniss befinden,
# älter als MIN_DAYS sind und dem Muster FILE_PATTERN entsprechen

find "$TARGET_DIR" -maxdepth "$MAX_DEPTH" -type f -name "$FILE_PATTERN" -mtime +"$MIN_DAYS" -exec rm {} \;

if [ $? = 0 ]; then
    echo "Skript erfolgreich ausgeführt."
else
    echo "Es ist ein Fehler im Skript aufgetreten."
fi

 

Etwas leichter zu handhaben, einfach die Variablen oberhalb der Trennlinie ändern und das Skript ausführen.

Zusätzlich etwas Erklärung dazu.

 

Grüsse

 

Edited by Amane

  • Author
2 hours ago, Amane said:
#!/bin/bash

# Pfad zum Verzeichnis
TARGET_DIR="/mnt/user/CamRecords/video/ZTLVF"

# Dateimuster, nach dem gesucht werden soll
FILE_PATTERN="*.mkv"

# Mindestanzahl von Tagen, die eine Datei alt sein muss, bevor sie gelöscht wird
MIN_DAYS=1

# Maximale Tiefe der Verzeichnissuche
MAX_DEPTH=1

#----------------------------------------------------------------------------------------------------

# Finde und lösche Dateien "-type f" in TARGET_DIR, die sich MAX_DEPTH im Verzeichniss befinden,
# älter als MIN_DAYS sind und dem Muster FILE_PATTERN entsprechen

find "$TARGET_DIR" -maxdepth "$MAX_DEPTH" -type f -name "$FILE_PATTERN" -mtime +"$MIN_DAYS" -exec rm {} \;

if [ $? = 0 ]; then
	echo "Skript erfolgreich ausgeführt."
else
	echo "Es ist ein Fehler im Skript aufgetreten."
fi

 

Etwas leichter zu handhaben, einfach die Variablen oberhalb der Trennlinie ändern und das Skript ausführen.

Zusätzlich etwas Erklärung dazu.

 

Grüsse

Hallo Amane, vielen Dank, sehr nett von dir. 

Ich hab das mal jetzt so eingefügt und es gab keine Fehlermeldung.

Wenn morgen die 24h rum sind, sehe ich ob die von mir erstellte Datei dann gelöscht wird.

 

Zusätzlichen Dank auch an ich777 und Archonw.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.