Hallo,
ich habe folgendes Problem:
Ich habe auf meiner Dbox TV-Aufnahmen (2GB-4GB) liegen. Diese Dateien möchte ich gerne auf meinen Server runterladen und dort abspeichern. Ein Kopierprozess geht per FTP und dauert etwa 15-20 min per LAN.
Nun zu meiner Frage, ich möchte gerne mit PHP auf einer Website auslösen das für ein entsprechendes File der Kopierprozess angestoßen wird und durchläuft. Es soll dafür keine Rückmeldung oder Visualisierung geben. Mein Plan zur Zeit sieht so aus per system() ein Shellskript zu starten und per nohup damit einen wget Prozess auszuführen. Oder gibt es dafür eine einfachere oder bessere Methode?
Vielen Dank für Tipps.
Gruß kami
Ankündigung
Einklappen
Keine Ankündigung bisher.
File kopieren von Dbox
Einklappen
Neue Werbung 2019
Einklappen
X
-
Hi,
okay das mir schon klar. Aber was müsste ich dann als Output sehen und welchen PHP Befehl soll ich nutzen?
Gruß kami
-
Ein Gast antwortete#!/bin/bash
Andy
Einen Kommentar schreiben:
-
Hi,
also ich habe die shelldatei schon überall hingelegt auch in den selben order wie die PHP datei. Wie soll ich das mit Bash testen?
Gruß kami
Einen Kommentar schreiben:
-
Ein Gast antwortetePfadproblem? Wo liegt downdbox.sh? Im gleichen Ordner,wie die aufrufende PHP? Darf PHP sh aufrufen? Mal mit bash getestet?
Andy
Einen Kommentar schreiben:
-
Hi,
ja der User darf das ausführen, welche Sachen muss man den noch berücksichtigen? wie kriege ich mal einen Error angezeigt und welchen befehl nehme ich am besten (system(),exec(), shell_exec())???
vielen dank für Hilfe.
Gruß kami
Einen Kommentar schreiben:
-
Ein Gast antworteteDarf der User (www-data) das Script ausführen? Stichwort sudoers
Andy
Einen Kommentar schreiben:
-
Hi,
das ist ja genau mein Problem ich kriege keinen Error angezeigt und weiß auch in diesem Fall nicht wie ich Ihn erzeugt kriege? Hat dazu jemand einen Tipp?
Gruß kami
Einen Kommentar schreiben:
-
Passiert leider nix. Was mache ich also falsch?
Entweder das PHP script hat einen Fehler (z.B. shell_exec nicht erlaubt), dann kannst du dir den Fehler anzeigen lassen (error_reporting). Sollte dort kein Fehler auftauchen, liegt es nicht an der PHP Seite sondern deinem shellscript.
So oder so gilt: Debugging wie immer -> Fehler anzeigen, Testausgaben etc.
Einen Kommentar schreiben:
-
Beim Posten bitte bbCode verwenden ([php] für PHP, [html] für HTML, [code] für den Rest (Dumps, Queries..)) und Code einrücken.
Einen Kommentar schreiben:
-
Hi,
wie meint ihr das? ich habe jetzt ein Shell skript, das wie folgt aussieht:
Code:#!/bin/sh nohup wget -O - ftp://root:test@192.168.2.1/../hdd/$1 > /home/kami/Dbox/$1 &
PHP-Code:$cmd="./downdbox.sh ".$row['filename'];
echo $cmd;
echo shell_exec($cmd);
Gruß kami
Einen Kommentar schreiben:
-
ein Cronjob könnte auch direkt Systembefehle nutzen um zu kopieren xD
Einen Kommentar schreiben:
-
Du kannst dir dafür nen Cronjob schreiben und dann per shell_exec oder einfach nur exec deinen Kopiervorgang anstoßen
Einen Kommentar schreiben:
Einen Kommentar schreiben: