Sollte der MySQL Server während der Durchlaufzeit des Cronscripts nicht erreichbar sein, löscht das Cronscript das Lockfile nicht. Das hat eine Flut von Fehlermails zur Folge. (Eine Email pro Cronscript-Durchlauf!) Das Problem existiert meines Wissen nur unter Debian Etch in Kombination mit Mysql 5.1. Folgendes Workaround dafür…
Datei:
/var/www/syscp/scripts/cronscript.php
Suchen nach:
/** * Includes the MySQL-Connection-Class */
Danach einfügen:
$mysqldown = false;
Suchen nach:
if($db->link_id == 0 || $db_root->link_id == 0)
Ersetzen durch:
if($db->link_id == 0 || $db_root->link_id == 0 || $mysqldown)
Datei:
/var/www/syscp/lib/class_mysqldb.php
Suchen nach:
function showerror($errormsg,$mysqlActive = true) { global $filename;
Ersetzen durch:
function showerror($errormsg,$mysqlActive = true) { global $filename, $mysqldown; $mysqldown = true;
Der Fix ist zwar nicht gerade sauber aber reicht als schnelle Abhilfe.