PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [Debian] Cronjob für das Decoder Bash Script unter Debian



shalalala
21.03.2012, 21:39
Hallo,
ich habe den OTR Decoder (Standard und statisch) unter Debian installiert.
Zudem habe ich das Bashcript aus dem wiki angelegt.

Nun die Frage:
Wie habe ich das Bashscript in crontab einzutragen.
Egal wie ich es eintrage -- es wird nicht ausgeführt! Manuell geht es ohne Probleme.

Wäre top wenn ihr mir einfach kurz eine Beispielzeile nennt.

Vielen Dank!

Artemis1121
22.03.2012, 14:27
bin nicht so der Profi mit cronjobs.. und grundsätzlich sehen meine Cronjobs ähnlich aus, aber ich würde beide Verzeichnis(skript und dateien) vollständig angeben:

*/5 * * * * root /home/userxy/otrscript /mnt/filme/otr/*.otrkey

shalalala
22.03.2012, 15:00
Hallo,
vielen Dank für die Hilfe :)
Das Skript scheint jetzt schon ausgeführt zu werden. Jedoch dekodiert er irgendwie nicht.
Also wenn der crontab durchläuft, dann verschwindet die *.otrkey Datei. Die Avi datei wird aber nicht abgelegt.
Das würde für mich darauf schließen lassen, dass vielleicht der Decoder nicht richtig gestartet wird und somit nur das rm $arg aus der Bash ausgeführt wird?!?

Was ist eurer Ansicht nach falsch?

Grüße

shalalala
22.03.2012, 15:23
ich hab jetzt einfach mal chmod 777 auf den decoder gemacht. Allerdings ist jetzt immer noch keine avi im Ordner sondern es wird nur die *.otrkey gelöscht :/

Hier mal die Log:


Mar 22 16:22:01 ******* /USR/SBIN/CRON[3670]: (root) CMD (/opt/lampp/htdocs/himym/otrscript /opt/lampp/htdocs/himym/*.otrkey)

Mar 22 16:22:03 ******* /USR/SBIN/CRON[3669]: (CRON) info (No MTA installed, discarding output)


Ich frage mich, was das mit dem MTA soll. Braucht er doch gar nicht?!

monarc99
22.03.2012, 15:30
Das Skript scheint jetzt schon ausgeführt zu werden. Jedoch dekodiert er irgendwie nicht.
Also wenn der crontab durchläuft, dann verschwindet die *.otrkey Datei. Die Avi datei wird aber nicht abgelegt.

Was ist eurer Ansicht nach falsch?

Wohin soll er denn die AVI speichern?

In deinen Script sehe ich kein output directory angeben.
Dann speichert er ins aktuelle Verzeichnis. Keine Ahnung, was das bei deinem Cron Job ist.



-o DIRECTORY use DIRECTORY as default output directory (default: .)

shalalala
22.03.2012, 19:45
Hey,
also dass er die Avis in das gleiche Verzeichnis packt ist für mich keinerlei Problem. Das passt so.
Gibt es für mich irgendeinen Weg herauszufinden warum der Cronjob nicht tut? Gibts da noch eine genauere Möglichkeit des Loggings o.ä.

EDIT
@RocknRollf sorry hatte vergessen F5 zu drücken und deine Antwort deshalb erst nicht gesehen.

Kurz einige Fragen dazu:
Ist es ein Problem wenn ich das Skript als root ausführe? Ich denke wenn ich chmod o-wrx habe sollte ja nichts passieren ?!

Dein Skript finde ich zwar interessant, jedoch sehe ich als Problem, das ich zum ausführen immer die OTR-Datei angeben muss. (Die Namen sind ja teils auch noch sehr lang :) )
Aber müsste es bei deinem Skript nicht auch mit
myotr /path/*.otrkey gehen?

Wo kann ich das multicut Skript finden? Damit habe ich noch gar nicht gearbeitet :))
Edit:
habs im Wiki gefunden :) Jedoch weiß ich nicht wie ich das insgesamt alles zu installieren habe (avidemuxer usw) . Bin noch nicht so lange auf Linux unterwegs.

Vielen Dank für deine Hilfe !

Grüße

shalalala
23.03.2012, 12:43
Hi,
so ich habe jetzt avidemux installiert :) Habe als OS Debian 6 Squeeze 32Bit Minimal.
Ich habe dein Skript nun einmal testweise übernommen. Und es mit den Pfadanpassungen auch zum Laufen bekommen.
Multicut funktioniert jedoch nicht - ich verstehe aber nicht ganz warum. Braucht man dazu einen x-server oder etwas ähnliches?
Als Anmerkung noch: Ich arbeite auf einem Virtual Private Server, also kein dedicated.

Hier mal ein Testlauf mit How I met your mother :thinking:


root@****:/opt/lampp/htdocs/himym# ./cutscript
ls: cannot access /home/root: No such file or directory

How_I_Met_Your_Mother_12.03.21_21-45_pro7_30_TVOON_DE.mpg.HQ.avi
Hole Uebersicht (nach Namen) von cutlist.at ...
2 Cutlists gefunden

How_I_Met_Your_Mother_12.03.21_21-45_pro7_30_TVOON_DE.mpg.HQ.avi

[1] Schnitte: 2 (Frameangaben) Spielzeit: 00:20:08 (hh:mm:ss)
HQ! Bewertung: 5.00 (7/82) Autor: DN41 (5)
Kommentar: How I Met Your Mother - S07E11 - Plan B, Schnitte geprüft, exakt. - FFDS 16:9
Dateiname: How I Met Your Mother - S07E11 - Plan B

[2] Schnitte: 2 (Frameangaben) Spielzeit: 00:20:08 (hh:mm:ss)
HQ! Bewertung: 5.00 (1/12) Autor: TobyK (4)
Kommentar: Mit ColdCut geschnitten
Dateiname: How_I_Met_Your_Mother_12.03.21_21-45_pro7_30_TVOON_DE

[0] Keine Auswahl. Diesen Film nicht schneiden.


Auswahl: 1

Smart-Modus 1/1

Schneide How_I_Met_Your_Mother_12.03.21_21-45_pro7_30_TVOON_DE.mpg.HQ.avi
Verwende Frameangaben
Framerate : 25 fps
Aspect Ratio : 4:3

commandline read: avidemux2_gtk
commandline read: --force-smart
commandline read: --run
commandline read: /tmp/multicut/project.js
commandline read: --quit

~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.2.10 |~~~~~~~~~~~~~~~~~~~~~~~~~~
(c) 2001-2008 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH
----------------------------------------------------------------

(*) DirectFB/Core: Single Application Core. (2010-06-30 18:37)
(!) Direct/Util: opening '/dev/fb0' and '/dev/fb/0' failed
--> No such file or directory
(!) DirectFB/FBDev: Error opening framebuffer device!
(!) DirectFB/FBDev: Use 'fbdev' option or set FRAMEBUFFER environment variable.
(!) DirectFB/Core: Could not initialize 'system_core' core!
--> Initialization error!

(avidemux2_gtk:5686): Gtk-WARNING **: cannot open display:
(!) [ 5686: 0.000] --> Caught signal 11 (at 0x4, invalid address) <--
./multicut.sh: line 516: 5686 Aborted nice -n 15 $avidemux --force-smart --run $tempdir/project.js --quit > /dev/null


Smart-Modus 1/1

Pruefe How_I_Met_Your_Mother_12.03.21_21-45_pro7_30_MERGED.mpg.HQ.avi
Schnitte mit mplayer zeigen -> Eingabetaste


Bitte eine Bewertung fuer die Cutlist abgeben...

[0] Dummy oder keine Cutlist
[1] Anfang und Ende grob geschnitten
[2] Anfang und Ende halbwegs genau geschnitten
[3] Schnitt ist annehmbar, Werbung entfernt
[4] doppelte Szenen wurde nicht entfernt oder schoenere Schnitte moeglich
[5] Saemtliches unerwuenschtes Material wurde framegenau entfernt
[#] Jetzt nicht bewerten

Auswahl: #

Waehle einen Dateinamen zum editieren aus:

[1] How I Met Your Mother - S07E11 - Plan B
[2] How_I_Met_Your_Mother_12.03.21_21-45_pro7_30_TVOON_DE

[#] How_I_Met_Your_Mother_12.03.21_21-45_pro7_30_MERGED.mpg.HQ.avi-cut.avi
[0] Eigenen Namen eingeben

Auswahl: #
mv: cannot stat `/home/Multicut/cut/How_I_Met_Your_Mother_12.03.21_21-45_pro7_30_MERGED-cut.HQ.avi': No such file or directory

mv: cannot stat `/home/Multicut/cut/*.avi': No such file or directory


Weitere Anmerkungen: Der cut Ordner ist leer. Meine Ausgangsavi (uncut) ist weg.
Mein von dir übernommenes Cutscript:



#!/bin/bash

/root/bin/otrdecoder -i $1 -e ***@gmail.com -p ***
rm $1
cd /home/Multicut
./multicut.sh -smart /opt/lampp/htdocs/himym/*.avi
mv /home/Multicut/cut/*.avi /opt/lampp/htdocs/himym

Mediv
23.03.2012, 12:50
Ja, das sieht so aus, als würde avidemux ein display brauchen. Es gibt allerdings auch eine Konsolenversion von Avudemux: aidemix-cli.
Außerdem bist du noch immer root.

RocknRolf
23.03.2012, 15:15
Also
a. du bist root auf nem Server, ein absolutes nogo.
b. du schneidest HQ Dateien. Multicutskript lesen und verstehen (wine VirtualDub).
c. hast du beim decodieren vergessen -o zu setzen!!!

Deine files liegen damit also in /home/root/
Wobei ich das jetzt auch das erste mal sehe das es /home/root/ gibt aber das nur am Rande. Ein gut gemeinter Rat. Wenn du noch mehr Sachen auf deinem Server machst lass dringend jemand mit Ahnung sich das angucken. Du bist verantwortlich und gegebenenfalls haftbar für den Mist der auf deinem Server läuft.

shalalala
23.03.2012, 18:03
Hi,
vielen Dank an euch Beide für eure Antworten :)
Mir ist bewusst dass ich noch Root bin. Allerdings muss ich mich dann aktuell nicht mit Berechtigungen rumärgern. (siehe unter b und c)

b.) Wo soll ich es lesen. Das Skript an sich? Auf HQ Dateien kann ich auch verzichten wenn es das unnötig kompliziert macht [=wine + vd]
c.) Gut dann werde ich den Parameter setzen. Vielleicht ist das auch das Problem. /home/root gibt es nämlich auch bei mir nicht ;)

Zur weiteren Info
Auf dem VPS lasse ich atm nichts anderes laufen außer den FTP. Auf dem logge ich mich schlauer Weise nicht als root ein und benutze auch TLS zur Authentifizierung.
Mir ist bewusst, dass es generell gefährlich ist mit Root zu hantieren. Jedoch richte ich gerade erst alles nach und nach ein.
Und weil ich mich mit einer komplexen Absicherung noch nicht gleich auseinandersetzen kann (erst alles nacheinander :) ) lasse ich auch noch keine potentiell gefährlichen Dienste wie mysql oder apache laufen die einer weiteren Absicherung bedürfen.

Wenn Ihr natürlich Zeit und Lust habt mir bei meinen Fragen zu helfen bzw mal drüber zu schauen bzgl. der Sicherheit seid ihr gerne willkommen wenn ich mich auf Euch verlassen kann :) [einfach PN an mich]

Grüße

Edit:
Olé ich habe gerade meinen ersten erfolgreichen Cut realisiert :)

Ist es kompliziert den Cut von HQ / HD Aufnahmen zu realisieren?

Mediv
26.03.2012, 08:23
Normalerweiße hält sich der Aufwand in Grenzen. Kannst ja mal hier im Wiki nachlesen, wie es funktioniert: http://wiki.onlinetvrecorder.com/index.php/Cutlist-Austausch/Linux-Skripte#Multicut_light
Wenn es Fragen gibt dann einfach melden. Es sind vermutlich genügend Leute da, die helfen können.

SGE
27.03.2012, 01:09
Zur weiteren Info
Auf dem VPS lasse ich atm nichts anderes laufen außer den FTP. Auf dem logge ich mich schlauer Weise nicht als root ein und benutze auch TLS zur Authentifizierung.
Mir ist bewusst, dass es generell gefährlich ist mit Root zu hantieren. Jedoch richte ich gerade erst alles nach und nach ein.
Und weil ich mich mit einer komplexen Absicherung noch nicht gleich auseinandersetzen kann (erst alles nacheinander :) ) lasse ich auch noch keine potentiell gefährlichen Dienste wie mysql oder apache laufen die einer weiteren Absicherung bedürfen.


Wenn du Linux nacheinander lernen willst ist das sehr löblich.Trotz alledem steht bei diesem MEHRBENUTZERSYSTEM immer noch an erster Stelle das man *nicht* als Root arbeitet sondern seine Aufgaben als normaler User erledigt. Man sollte seine schlechten Gewohnheiten von M$ nicht sofort auf andere System übertragen. Alles was mit OTR zu tun hat kann ein normaler User ausführen.
Da geht es auch nicht um die Bedrohung von sonstwo wenn du von aussen erreichbare Dienste laufen lässt, sondern darum das man sich das System als Root ganz schnell zerschiessen kann, einfach indem man mal ein paar Skripten von hier und da ausführt ohne zu wissen was sie tun. rm -rf / regelt.
Aber jeder wie er mag.