ISPConfig – web backups mit Filegröße 8


Um die Größe der Backups einer Domain im Interface anzuzeigen, sind nur ein paar minimale Änderungen erforderlich. Die geänderten Files sind hier als Download verfügbar.

filesize

In interface/web/sites/lib/lang/en_web_backup_list.lng eine Zeile einfügen:

$wb['filesize_txt'] = 'Filesize';

interface/web/sites/templates/web_backup_list.htm um zwei Zeilen erweitern:

<th class="tbl_col_filename" scope="col"><tmpl_var name="filename_txt"></th>
<th class="tbl_col_filename" scope="col"><tmpl_var name="filesize_txt"></th>
<th class="tbl_col_limit" scope="col">{tmpl_var name='search_limit'}</th>

[...]

<td class="tbl_col_filename">{tmpl_var name="filename"}</td>
<td class="tbl_col_filesize">{tmpl_var name="filesize"}</td>
<td class="tbl_col_buttons">

/usr/local/ispconfig/server/cron_daily.php ergänzen (ab Zeile 741):


######################################################################
// Create website backups
######################################################################
function formatBytes($size, $precision = 2) {
  $base=log($size)/log(1024);
  $suffixes=array('','k','M','G','T');
  return round(pow(1024, $base-floor($base)), $precision) . $suffixes[floor($base)];
}

Zeile 806 ändern:
$sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (" . $conf['server_id'] . "," . $web_id . ",'web','" . $backup_mode . "'," . time() . ",'" . $app->db->quote($web_backup_file) . "')";

wird zu

$sql = "INSERT INTO web_backup (server_id,parent_domain_id, backup_type, backup_mode, tstamp, filename, filesize) VALUES (" . $conf['server_id'] . "," . $web_id . ",'web','" . $backup_mode . "',".time() . ",'" . $app->db->quote($web_backup_file) . "','" . formatBytes(filesize($web_backup_dir . '/' . $web_backup_file)) . "')";

Zeile 932 wird von:
$sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (" . $conf['server_id'] . ",$web_id,'mysql','sqlgz',".time() . ",'" . $app->db->quote($db_backup_file) . ".gz')";

zu

$sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename,filesize) VALUES (" . $conf['server_id'] . ",$web_id,'mysql','sqlgz'," . time() . ",'" . $app->db->quote($db_backup_file) . ".gz','" . formatBytes(filesize($db_backup_dir . '/' . $db_backup_file)) . "')";

Zum Schluss muss nur noch die Tabelle web_backup in der Datenbank erweitert werden (bspw. mit phpMyAdmin).

ALTER TABLE `web_backup` ADD `filesize` VARCHAR(10) NOT NULL AFTER `filename`;


Hinterlasse einen Kommentar zu Florian Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

8 Gedanken zu “ISPConfig – web backups mit Filegröße