RoboBackup is a Windows service for orchestrating file backups via robocopy
utility. The GUI aims to provide user-friendly interface for the backup tasks management without the need to understand the robocopy
utility itself. The service runs with Local System privileges, allowing it to work independently on the GUI user or on any interactive session. The service manages scheduling, logging and retention of the backups.
The goal of RoboBackup is not to be robust, secure and enterprise-ready, but to be small, simple and lower the difficulty of creating and scheduling robocopy
commands.
Backups can be created in 3 modes:
yyyy-MM-dd_HH-mm-ss
format under the destination directory for each backup run. Files are hardlinked from the subdirectory of the previous backup (if there is one) and then only the differences between the source directory and the previous backup are synchronized. This feature speeds up the whole backup process and reduces required filesystem space. In linux world, similar effect can be achieved using rsync
tool with --link-dest
parameter.Backup retention is set as a number of timestamped directories with previous backups. When the retention limit is exceeded, excessive subdirectories with the oldest timestamps are deleted. With retention set to 1, differential and full methods behave the same. They do not create timestamped directories and only differentially synchronize the contents of the source directory to the destination directory.
Note about network shares: By default, Windows map drives only for interactive user sessions and open the mapping only when the drive is first used. This means that the mapped drives are not visible for the service account. GUI automatically resolves the mapped drives to UNC network paths, which are reachable for the service, but still requires you to enter the network credentials, so the service can open the resource to successfully run the backup. Both source and destination can be entered as UNC network paths and the service figures out when to use the credentials automatically, however they should not be network shares both at the same time.