diff --git a/install/sql/incremental/upd_0082.sql b/install/sql/incremental/upd_0082.sql
new file mode 100644
index 0000000000000000000000000000000000000000..2bd852a25322d32f09aa016b0ba0e6557173f54a
--- /dev/null
+++ b/install/sql/incremental/upd_0082.sql
@@ -0,0 +1,2 @@
+ALTER TABLE `mail_backup` CHANGE `filesize` `filesize` VARCHAR(20) NOT NULL DEFAULT '';
+ALTER TABLE `web_backup` CHANGE `filesize` `filesize` VARCHAR(20) NOT NULL DEFAULT '';
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index 6c57ce00f0cda8c4804f55d8aa1b52661b58a2de..8b791657f9d4ec7f973bb498fafcfef319017e0c 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -703,7 +703,7 @@ CREATE TABLE `mail_backup` (
   `backup_mode` varchar(64) NOT NULL DEFAULT  '',
   `tstamp` int(10) unsigned NOT NULL DEFAULT '0',
   `filename` varchar(255) NOT NULL DEFAULT '',
-  `filesize` VARCHAR(10) NOT NULL DEFAULT '',
+  `filesize` VARCHAR(20) NOT NULL DEFAULT '',
   PRIMARY KEY (`backup_id`)
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
 
@@ -1746,7 +1746,7 @@ CREATE TABLE `web_backup` (
   `backup_mode` varchar(64) NOT NULL DEFAULT  '',
   `tstamp` int(10) unsigned NOT NULL DEFAULT '0',
   `filename` varchar(255) NOT NULL DEFAULT '',
-  `filesize` VARCHAR(10) NOT NULL DEFAULT '',
+  `filesize` VARCHAR(20) NOT NULL DEFAULT '',
   PRIMARY KEY (`backup_id`)
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
 
diff --git a/interface/web/mail/templates/mail_user_backup_list.htm b/interface/web/mail/templates/mail_user_backup_list.htm
index 87f1ea32dcba03a3f4a5f0b75e54cc7b4e7f4c57..7c611172f1aa993e7000eef4bf06855664909478 100644
--- a/interface/web/mail/templates/mail_user_backup_list.htm
+++ b/interface/web/mail/templates/mail_user_backup_list.htm
@@ -26,8 +26,8 @@
 			    <td>{tmpl_var name="filesize"}</td>
                             <td class="text-right">
                                 <div class="buttons">
-                                    <button class="btn btn-default formbutton-default" type="button" onclick="confirm_action('mail/mail_user_edit.php?id={tmpl_var name='parent_id'}&next_tab=backup&backup_action=restore&backup_id={tmpl_var name='backup_id'}','{tmpl_var name='restore_confirm_txt'}');">{tmpl_var name="restore_backup_txt"}</button>
-<!--                                    <button class="btn btn-default formbutton-default" type="button" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='parent_id'}&next_tab=backup&backup_action=download&backup_id={tmpl_var name='backup_id'}">{tmpl_var name="download_backup_txt"}</button>
+                                    <button class="btn btn-default formbutton-default" type="button" onclick="confirm_action('mail/mail_user_edit.php?id={tmpl_var name='parent_id'}&next_tab=backup&backup_action=mailrestore&backup_id={tmpl_var name='backup_id'}','{tmpl_var name='restore_confirm_txt'}');">{tmpl_var name="restore_backup_txt"}</button>
+<!--                                    <button class="btn btn-default formbutton-default" type="button" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='parent_id'}&next_tab=backup&backup_action=maildownload&backup_id={tmpl_var name='backup_id'}">{tmpl_var name="download_backup_txt"}</button>
 -->
                                 </div>
                             </td>
diff --git a/server/plugins-available/backup_plugin.inc.php b/server/plugins-available/backup_plugin.inc.php
index 863ac9829cb781d8167a723777296d921b431253..04e67505b49c7435857f9ed4e39c2f903faede78 100644
--- a/server/plugins-available/backup_plugin.inc.php
+++ b/server/plugins-available/backup_plugin.inc.php
@@ -53,7 +53,8 @@ class backup_plugin {
 		//* Register for actions
 		$app->plugins->registerAction('backup_download', $this->plugin_name, 'backup_action');
 		$app->plugins->registerAction('backup_restore', $this->plugin_name, 'backup_action');
-
+		$app->plugins->registerAction('backup_mailrestore', $this->plugin_name, 'backup_action');
+		
 	}
 
 	//* Do a backup action
@@ -64,7 +65,7 @@ class backup_plugin {
 		$backup = $app->dbmaster->queryOneRecord("SELECT * FROM web_backup WHERE backup_id = $backup_id");
 		$mail_backup = $app->dbmaster->queryOneRecord("SELECT * FROM mail_backup WHERE backup_id = $backup_id");
 
-		if(is_array($backup)) {
+		if(is_array($backup) && ($action_name != 'backup_mailrestore')) {
 
 			$app->uses('ini_parser,file,getconf,system');
 
@@ -159,7 +160,7 @@ class backup_plugin {
 				$app->log('Backup directory not ready.', LOGLEVEL_DEBUG);
 			}
 		//* Restore a mail backup - florian@schaal-24.de
-		} elseif (is_array($mail_backup) && $action_name == 'backup_restore') {
+		} elseif (is_array($mail_backup) && ($action_name == 'backup_mailrestore')) {
 			$app->uses('ini_parser,file,getconf');
 
 			$server_config = $app->getconf->get_server_config($conf['server_id'], 'server');