Backup¶
We automatically back up your files to another server every night.
Tip
We strongly recommend that you do not rely solely on our backup. Keep a backup of your own at another location.
Warning
We exclude all folders with the following names from backup: no_backup
tmp
.cache
cache
Files¶
We keep daily backups of the last seven days, and weekly backups going back seven weeks.
Restoring from the backup¶
You can access your hosts backup at /backup
:
[isabell@stardust ~]# ls -l /backup/
total 56
dr-xr-xr-x. 19 root root 4096 Jul 30 22:29 current
lrwxrwxrwx. 1 root root 7 May 30 22:10 daily.0 -> current
dr-xr-xr-x. 19 root root 4096 Jul 30 22:29 daily.1
dr-xr-xr-x. 19 root root 4096 Jul 30 01:57 daily.2
lrwxrwxrwx. 1 root root 8 Jul 29 15:21 daily.3 -> weekly.1
dr-xr-xr-x. 19 root root 4096 Jul 27 22:19 daily.4
dr-xr-xr-x. 19 root root 4096 Jul 26 22:14 daily.5
dr-xr-xr-x. 18 root root 4096 Jul 25 22:13 daily.6
dr-xr-xr-x. 18 root root 4096 Jul 24 22:12 daily.7
dr-xr-xr-x. 19 root root 4096 Jul 29 11:09 weekly.1
dr-xr-xr-x. 17 root root 4096 Jul 22 22:11 weekly.2
dr-xr-xr-x. 17 root root 4096 Jul 15 22:11 weekly.3
dr-xr-xr-x. 17 root root 4096 Jul 8 22:10 weekly.4
dr-xr-xr-x. 17 root root 4096 Jul 1 22:10 weekly.5
dr-xr-xr-x. 17 root root 4096 Jun 24 22:10 weekly.6
dr-xr-xr-x. 17 root root 4096 Jun 17 22:10 weekly.7
Let’s say you accidentally deleted the folder /var/www/virtual/isabell/html/blog
three days ago. No problem, there is a complete backup at /backup/daily.3/var/www/virtual/isabell/html/blog
:
[isabell@stardust ~]$ ls -ld /backup/daily.3/var/www/virtual/isabell/html/blog
drwxr-xr-x 12 isabell isabell 4096 Jul 28 23:31 /backup/daily.3/var/www/virtual/isabell/html/blog
You can use standard Linux commands such as ls
, cp
, rsync
, etc. to look around and restore files and folders from the backup. rsync
lets you do a dry run first which won’t modify anything yet:
[isabell@stardust ~]$ rsync --dry-run --verbose --recursive --links --perms --times --hard-links --acls --xattrs /backup/daily.3/var/www/virtual/isabell/html/blog/ /var/www/virtual/isabell/html/blog/
If the output of your dry run looks good, you can restore the backup:
[isabell@stardust ~]$ rsync --verbose --recursive --links --perms --times --hard-links --acls --xattrs /backup/daily.3/var/www/virtual/isabell/html/blog/ /var/www/virtual/isabell/html/blog/
Note
Because the backup is mounted as an NFS share, it has a different SELinux context than your target directory. To avoid permission problems, run restorecon -R
on your restored data, e.g. restorecon -R /var/www/virtual/isabell/html/blog/
.
If you need help, don’t hesitate to contact us at hallo@uberspace.de.
Warning
Do not use symlinks such as ~/html
when restoring your backup – that won’t work because the backed-up symlink still points to the actual target /var/www/virtual/$USER/html
instead of the target’s backup (/backup/daily.3/var/www/virtual/$USER/html
).
MySQL¶
We dump and backup all databases every night and keep backups of the last 21 days. You can access your hosts database backups at /mysql_backup
.
The last backup is stored in /mysql_backup/current/$USER
and not dated:
[isabell@stardust ~]# ls -l /mysql_backup/current/isabell
total 56
-rw-r-----. 2 root isabell 520200 Oct 11 04:23 isabell_nextcloud.sql.xz
-rw-r-----. 2 root isabell 596 Oct 11 04:23 isabell.sql.xz
Dated backups can be found in /mysql_backup/old/$USER
:
[isabell@stardust ~]# ls -l /mysql_backup/old/isabell
total 516
-rw-r-----. 2 root isabell 596 Oct 09 04:23 isabell.2018-10-09.1539051623.sql.xz
-rw-r-----. 2 root isabell 520200 Oct 09 04:23 isabell_nextcloud.2018-10-09.1539051623.sql.xz
-rw-r-----. 2 root isabell 596 Oct 10 04:23 isabell.2018-10-10.1539138023.sql.xz
-rw-r-----. 2 root isabell 520200 Oct 10 04:23 isabell_nextcloud.2018-10-10.1539138023.sql.xz
-rw-r-----. 2 root isabell 596 Oct 11 04:23 isabell.2018-10-11.1539224423.sql.xz
-rw-r-----. 2 root isabell 520200 Oct 11 04:23 isabell_nextcloud.2018-10-11.1539224423.sql.xz
Restoring from the backup¶
You can use xzcat
and mysql
to restore dumps. Let’s say you want to reset every database to the latest backup:
[isabell@stardust ~]# xzcat /mysql_backup/current/isabell/*.sql.xz | mysql isabell
[isabell@stardust ~]#