From 66fa9bddb59026ee508fd449adac93ea05e17f68 Mon Sep 17 00:00:00 2001
From: Florian Schaal <florian@schaal-24.de>
Date: Thu, 16 Jul 2015 03:47:13 -0400
Subject: [PATCH] FS#3897 - backup - delete unused file (interval = none), fixed mail-backup delete, moved mail-function for failed mounts/umounts
---
server/lib/classes/cron.d/500-backup.inc.php | 23 ++++++++++-------------
1 files changed, 10 insertions(+), 13 deletions(-)
diff --git a/server/lib/classes/cron.d/500-backup.inc.php b/server/lib/classes/cron.d/500-backup.inc.php
index a9fa3f9..e196cb5 100644
--- a/server/lib/classes/cron.d/500-backup.inc.php
+++ b/server/lib/classes/cron.d/500-backup.inc.php
@@ -192,11 +192,16 @@
$web_user = $rec['system_user'];
$web_backup_dir = realpath($backup_dir.'/web'.$web_id);
if(is_dir($web_backup_dir)) {
- exec('sudo -u '.escapeshellarg($web_user).' rm -f '.escapeshellarg($web_backup_dir.'/*'));
- $sql = "DELETE FROM web_backup WHERE server_id = ? AND parent_domain_id = ?";
- $app->db->query($sql, $conf['server_id'], $web_id);
- if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $web_id);
+ $dir_handle = opendir($web_backup_dir.'/');
+ while ($file = readdir($dir_handle)) {
+ if(!is_dir($file)) {
+ unlink ("$web_backup_dir/"."$file");
+ }
+ }
}
+ $sql = "DELETE FROM web_backup WHERE server_id = ? AND parent_domain_id = ?";
+ $app->db->query($sql, $conf['server_id'], $web_id);
+ if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $web_id);
}
}
}
@@ -353,15 +358,7 @@
}
//* end run_backups
if( $server_config['backup_dir_is_mount'] == 'y' ) $app->system->umount_backup_dir($backup_dir);
- } else {
- //* send email to admin that backup directory could not be mounted
- $global_config = $app->getconf->get_global_config('mail');
- if($global_config['admin_mail'] != ''){
- $subject = 'Backup directory '.$backup_dir.' could not be mounted';
- $message = "Backup directory ".$backup_dir." could not be mounted.\n\nThe command\n\n".$server_config['backup_dir_mount_cmd']."\n\nfailed.";
- mail($global_config['admin_mail'], $subject, $message);
- }
- }
+ }
}
// delete files from backup download dir (/var/www/example.com/backup)
--
Gitblit v1.9.1