The backup was configured as a scheduled Virtualmin backup and stored remotely using SFTP.
The backup destination used a date-based filename:
mytestbackup-%Y-%m-%d.tar.gz
This resulted in a backup file similar to:
mytestbackup-2026-07-10.tar.gz
Using date-based filenames has another advantage: it allows Virtualmin to identify older backups for automatic cleanup.
If you want to keep multiple backups and keep them for x days, Virtualmin can then remove x days old backups.
Single archive file backup
The first backup format tested was:
Single archive file
I created the folders on my backup server to receive the file.
e.g.
/BACKUP/DOMAIN/DAILY/
In setting up the configuration for the schedule on the host website which I want to backup:
File on server =
/BACKUP/DOMAIN/DAILY/mytestbackup-%Y-%m-%d.tar.gz
This creates one main backup archive containing the virtual server data.
Example:
/BACKUP/DOMAIN/DAILY/mytestbackup-2026-07-10.tar.gz
For scheduled backups, this format is convenient because the backup is a single portable file.
This saves you having to download the file to a PC then upload again, saving time and bandwidth.
When restoring, Virtualmin expects the actual backup archive file.
The restore test was performed from my Virtualmin Failover installation.
In the restore source, enter the SFTP details of your storage server.
Critical: enter the actual backup filename, for example:
mytestbackup-2026-07-10.tar.gz
The result:
Checking contents of the backup ..
.. found 1 virtual servers and 7 global Virtualmin settings
This confirmed that Virtualmin could read the archive and identify the virtual server successfully.
The backup was not just created — it was proven recoverable.
One file per server backup
The second format tested was:
One file per server
This creates separate backup files for each virtual server.
A typical backup set looks like:
mydomain.tar.gz
mydomain.dom
mydomain.info
When you set up destination SFTP details, this differs.
File on server =
BACKUP/DOMAIN/DAILY/
(do not enter a filename here)
Restoring using the SFTP source again:
BACKUP/DOMAIN/DAILY/
is enough.
Important: I have not tested this, but I think the idea is if you backup, let's say, 100 domains and you want to restore 100 domains, you need to find the best way for you.
It really is an individual thing, and you need to test restores and document what you did in the event of a recovery-needed situation.