- Registriert
- 15. Juli 2013
- Beiträge
- 117
- Reaktionspunkte
- 7
- Punkte
- 18
Hallo zusammen,
ich habe ein Skript in dem ich die Berechtigungen und Gruppen von Ordnern und den darin befindlichen Dateien ändern möchte und anschließend filebot ausführen möchte.
Leider habe ich etwas Probleme und wäre um Hilfe dankbar.
Das Skript sieht wie folgt aus:
Nun zu meinen Problemen:
1.) Ich möchte das Skript nicht als root ausführen. Allerdings benötigt das Setzen der Berechtigungen root-Rechte. Daher suche ich einen Weg, dass die sudo-Befehle im Skript, aber nur im Skript, ohne Passwortabfrage durchgeführt werden können. Daher habe ich versucht die sudoers Datei zu editieren. Leider ohne Erfolg bisher...
Folgende 2 Dinge habe ich versucht:
MeinUser ALL = NOPASSWD: find /volume1/downloads/Diverses -type d -exec chown -R MeinUser:administrators {} +
Leider bekomme ich dann einen Syntaxfehler...
MeinUser ALL = NOPASSWD: /volume1/03_Diverses/filebot.sh
Leider kommt danach die Passwortabfrage nach wie vor...
2.) Im Filebotbefehl scheinen Fehler zu sein. Bei der Ausführung bekomme ich folgende Fehler:
SyntaxError: expecting ':', found 'Special'
javax.script.ScriptException: SyntaxError: expecting ':', found 'Special'
at net.filebot.format.ExpressionFormat.compile(ExpressionFormat.java:117 )
at net.filebot.format.ExpressionFormat.<init>(ExpressionFormat.java:75)
at net.filebot.cli.CmdlineOperations.rename(CmdlineOperations.java:97)
at net.filebot.cli.ScriptShellBaseClass.rename(ScriptShellBaseClass.java :336)
at Script1$_run_closure72.doCall(Script1.groovy:377)
at Script1.run(Script1.groovy:362)
at net.filebot.cli.ScriptShell.evaluate(ScriptShell.java:62)
at net.filebot.cli.ScriptShell.runScript(ScriptShell.java:72)
at net.filebot.cli.ArgumentProcessor.runScript(ArgumentProcessor.java:11 4)
at net.filebot.cli.ArgumentProcessor.run(ArgumentProcessor.java:29)
at net.filebot.Main.main(Main.java:120)
3.) Ist das Vorgehen aus Sicherheitsperspektive gefährlich?
4.) Kann ich einem Befehl im Skript (dem Filebot-Aufruf) mitgeben, dass dieser immer als User MeinUser ausgeführt wird?
Danke und viele Grüße
justkidding
ich habe ein Skript in dem ich die Berechtigungen und Gruppen von Ordnern und den darin befindlichen Dateien ändern möchte und anschließend filebot ausführen möchte.
Leider habe ich etwas Probleme und wäre um Hilfe dankbar.
Das Skript sieht wie folgt aus:
Rich (BBCode):
#!/bin/sh
#Javapfad
# PATH=$PATH:/var/packages/java/target/bin
#Pfade
QUELLE="/volume1/downloads/Diverses"
SERIEN="/volume1/03_Diverses/02 Serien"
FILME="/volume1/03_Diverses/01 Movies"
ZIEL="/volume1/03_Diverses"
#Filebot
FILEBOT="/volume1/@appstore/filebot/filebot.sh"
KONFLIKT=skip
AKTION=move
SPRACHE=en
IGNORE=.nfo,.txt,.url,.rar,.jpg
CLEAN=y
LOG="/volume1/90_Vertraulich/99 Logs/filebot.log"
#Formate
SERIE="{n}/{episode.special ? '\''Special'\'' : '\''Staffel '\''+s}/{n} - {episode.special ? '\''S00E'\''+special.pad(2) : s00e00} - {t} {vf} {ac} {af}"
FILM="{n.upperInitial()} ({y})/{n.upperInitial()} ({y}) {file.path.contains('\''3D'\'') || file.path.contains('\''3-D'\'') ? '\''3D '\'':'\'\''}{file.path.contains('\''HSBS'\'') ? '\''HSBS '\'':'\'\''}{file.path.contains('\''FSBS'\'') ? '\''FSBS '\'':'\'\''} {source} {vf} {vc} {ac} {af}"
#Kodi
KODI="192.168.X.XX"
#User/Gruppe
USER=MeinUser
GROUPA=administrators
GROUPB=users
####################################################################
# Berechtigung auf Quelle setzen
sudo find $QUELLE -type d -exec chown -R $USER:$GROUPA {} +
#Filebot-Kommando
$FILEBOT -script 'fn:amc' $QUELLE --output "$ZIEL" --conflict $KONFLIKT --action $AKTION -non-strict --lang $SPRACHE --log info --log-file $LOG --def ignore=$IGNORE --def subtitles=$SPRACHE clean=$CLEAN xbmc=$KODI "seriesFormat=$SERIEN/$SERIE" "movieFormat=$FILME/$FILM" 'excludeList=.excludes'
# Berechtigungen auf Ziel setzen
sudo find $FILME -type d -exec chown -R $USER:$GROUPB {} +
sudo find $SERIEN -type d -exec chown -R $USER:$GROUPB {} +
exit 0
Nun zu meinen Problemen:
1.) Ich möchte das Skript nicht als root ausführen. Allerdings benötigt das Setzen der Berechtigungen root-Rechte. Daher suche ich einen Weg, dass die sudo-Befehle im Skript, aber nur im Skript, ohne Passwortabfrage durchgeführt werden können. Daher habe ich versucht die sudoers Datei zu editieren. Leider ohne Erfolg bisher...
Folgende 2 Dinge habe ich versucht:
MeinUser ALL = NOPASSWD: find /volume1/downloads/Diverses -type d -exec chown -R MeinUser:administrators {} +
Leider bekomme ich dann einen Syntaxfehler...
MeinUser ALL = NOPASSWD: /volume1/03_Diverses/filebot.sh
Leider kommt danach die Passwortabfrage nach wie vor...
2.) Im Filebotbefehl scheinen Fehler zu sein. Bei der Ausführung bekomme ich folgende Fehler:
SyntaxError: expecting ':', found 'Special'
javax.script.ScriptException: SyntaxError: expecting ':', found 'Special'
at net.filebot.format.ExpressionFormat.compile(ExpressionFormat.java:117 )
at net.filebot.format.ExpressionFormat.<init>(ExpressionFormat.java:75)
at net.filebot.cli.CmdlineOperations.rename(CmdlineOperations.java:97)
at net.filebot.cli.ScriptShellBaseClass.rename(ScriptShellBaseClass.java :336)
at Script1$_run_closure72.doCall(Script1.groovy:377)
at Script1.run(Script1.groovy:362)
at net.filebot.cli.ScriptShell.evaluate(ScriptShell.java:62)
at net.filebot.cli.ScriptShell.runScript(ScriptShell.java:72)
at net.filebot.cli.ArgumentProcessor.runScript(ArgumentProcessor.java:11 4)
at net.filebot.cli.ArgumentProcessor.run(ArgumentProcessor.java:29)
at net.filebot.Main.main(Main.java:120)
3.) Ist das Vorgehen aus Sicherheitsperspektive gefährlich?
4.) Kann ich einem Befehl im Skript (dem Filebot-Aufruf) mitgeben, dass dieser immer als User MeinUser ausgeführt wird?
Danke und viele Grüße
justkidding
