php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.04.2011, 10:34  
Neuer Benutzer
 
Registriert seit: 15.09.2008
Beiträge: 3
TiCar befindet sich auf einem aufstrebenden Ast
Standard exec findet Datei nicht?

Hi,

da ich BASH-Skript nicht mächtig bin, habe ich mir per PHP ein kleines Skript gebaut das mir die mySQL Datenbank sichert und zippen soll, um sie dann per FTP zum download zur Verfügung stellen soll.

Das sieht wiefolgt aus:
Code:
<?php
$log = "**** Datensicherung sqldump.php am " . date('d.m.Y H:i:s') . "\r\n";
$fp = fopen('/root/dblist','r');

while ($data = fscanf($fp, "%s %s %s %s %s %s %s")) {
    list ($check, $host, $user, $password, $db, $webpath) = $data;
    if( $check == 1 ) {
    $log .= "Check: $check, Host: $host, User: $user, Password: $password, DB: $db, Webpath: $webpath \r\n";
    
    if( strrchr($webpath, '/') != '/' ) $webpath = $webpath ."/";
    
    $target = $webpath . $db . '_' . date("Y_m_d") . '.sql';
    $command = "/usr/bin/mysqldump ";
    $command .= "--user=$user --password=$password -B $db > $target";
    
//    echo $command . "\r\n";
    exec ($command,$status, $error);
    $log .= "$command, Status: $error \r\n";
    exec ("gzip -f $taget", $status);
    exec ("chown $user:$user $target.gz", $status, $error);
    $dh = opendir($webpath);
    $days = 7*24*60*60;
    while( ($file = readdir($dh)) != false ) {
        if( strncmp($file, $db, strln($db) ) == 0 ) {
        if( fileatime($webpath . $file) < time()-$days ) {
            $delfile = $webpath . $file;
            
            if( is_file($delfile) ) {
            if( @ unlink($delfile) ) {
                $log .= "Datei $delfile gelöscht! \\n";
            }
            }
        }
        }
    }
    closedir($dh);
    }

}

fclose($fp);

$log .= "\r\n\r\n";
$dh_log = fopen('/root/sqldump.log', 'a+');
fwrite($dh_log, $log);
fclose($dh_log);

?>
Er bringt mir dann immer die schöne Meldung:
sh: /mysqldump: datei oder Verzeichnis nicht gefunden

Was mir hier auffällt:
- Wieso /mysqldump?
Ich habe extra den Pfad zur Datei angegeben, obwohl diese im Librarypfad steht. Die Datei dblist bekommt er - hab ich geprüft.

Wenn ich den Befehl per Echo ausgeben lasse und manuell eintippe funktioniert der Befehl problemlos.

Das gleiche nutze ich noch auf meinem 2. Server und da funktioniert es ebenfalls Problemlos, d.h. bin jetzt komplett ratlos woran das liegen könnte

PS: Ich rufe das ganze mit php-cgi /root/sqldump.php auf
__________________
Gruß,
Lars
TiCar ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.04.2011, 10:40  
Neuer Benutzer
 
Registriert seit: 15.09.2008
Beiträge: 3
TiCar befindet sich auf einem aufstrebenden Ast
Standard

Wenn ich es mit /usr/lib/cgi-bin/php5 /root/sqldump.php aufrufe das gleiche Spiel
__________________
Gruß,
Lars
TiCar ist offline   Mit Zitat antworten
Alt 06.04.2011, 11:09  
Erfahrener Benutzer
 
Registriert seit: 19.06.2009
Beiträge: 837
PHP-Kenntnisse:
Fortgeschritten
Jens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nett
Standard

Leite bei Deinen execs mal bitte STDERR in Dein Log um und schreib jeweils die Zeilenangabe mit. Bei welchem der Execs tritt die Fehlermeldung auf? Was steht zum Zeitpunkt des Fehlers in $data?

Und fehlt bei Deinen execs nicht noch einiges an Escaping?

Gruß Jens
Jens Clasen ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wert in externer Datei speichern Abakay PHP Tipps 2008 6 04.12.2008 18:56
Datei per Buttonklick runterladen... go1denboy PHP Tipps 2008 7 14.06.2008 20:25
Shell exec Befehl ... Zum ausführen einer shell datei KeyT0ast3r Scriptbörse 1 31.01.2008 12:49
Großer Baum -> Große Datei -> Hohe Ladezeit :( PsychoEagle PHP Tipps 2008 7 22.09.2007 12:44
.gz Datei entpacken und mit dem Inhalt weiterarbeiten R4v3r PHP Tipps 2007 8 02.02.2007 14:49
String als Datei speichern Zangelo PHP Tipps 2006 23 25.08.2006 14:13
Datei durchsuchen Wöllchen Beitragsarchiv 3 02.03.2006 22:23
Datei mehrmals öffnen und schließen in einem Skript PHP Tipps 2005-2 14 14.07.2005 18:12
unzip per exec() funktioniert leider nicht PHP-Fortgeschrittene 7 27.06.2005 15:33
Ordner Struktur auslesen bestimmte datei finden .... silverghost PHP Tipps 2005 3 24.05.2005 13:55
Includete Datei nicht gleich ausgeben Madden PHP-Fortgeschrittene 1 12.05.2005 00:19
xfdf Datei mit PHP an eMail senden Problem: Leere Datei PHP Tipps 2004-2 1 07.12.2004 12:25
[Erledigt] datei editieren PHP Tipps 2004 1 10.09.2004 20:33
(ich schonwieder) Link seite automatisch imported_DJ Nuno PHP Tipps 2004 14 19.08.2004 17:42
Wie kann ich eine PHP Datei in eine HTML Datei umwandeln PHP Tipps 2004 2 12.08.2004 18:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
exec php datei, php shell_exec findet command nicht, bash exec datei nicht gefunden, php exec nicht gefunden, php webpath keine url ausgabe, php exec date command, php exec sieht nicht alle dateien im verzeichnis, bash verzeichnis auslesen exec php script, exec script wird nicht gefunden, php exec sh datei nicht gefunden, exec php datei aufrufen, unzip exec php, php exec findet datei nicht, php exec r, php exec auf datei, exec findet keine commands php, php exec sh, php exec mysqldump, automatischer ftp download mit php exec, php findet datei nicht

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:32 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum