Setup, Scheduling, and more..
Creating backup sets:
BackUp operates on "backup sets", which live inside
BackUp.ini. A simple backup set might look like this..
Inside the backup set* is a simple list things you would like to backup. These "things" can either be file paths; that is, file system locations with file masks; or Windows registry paths. A simple file backup command could look like this..
Which instructs BackUp to backup everything in my toolbars folder. You can have any number of such commands inside each backup set. Registry backup is explained in more detail, below. Once you have created a set, you simply run the backup set.
* Anything underneath its
[name]is considered to be "inside" the backup set, right up until BackUp encounters another
multiple file masks..
You can add as many file masks as you need, separated by commas, and use wild cards, too (e.g.
*, which basically means "anything", so
*.* mean all files). This next example would backup all of the eight specified preference file types from my entire programs folder..
You probably noticed that I used the "token"
@programsdir to refer to
C:\Program Files, read on..
Tokens are special strings, preceded with an at sign ("@", aka. "commercial at"), that you can insert into your backup sets. Tokens are automagically transformed into their current value at run-time..
You don't have to use tokens, simply supply a regular valid path, but using tokens saves you some typing, and importantly, typos. There are other advantages, too..
User-specific tokens (like
@appdatadir) will be expanded to whatever user is running the backup set. So, if you schedule a backup to run as user "foo", the token
@homedir (for example) would be expanded to
C:\Documents and Settings\foo. BackUp's portability enables settings to be optionally centralized, for simple, global administration of batch-specific parameters, or alternatively, enable settings in user's own home folders. And so long as a valid password is supplied during the schedule's creation, backups for any user can run inside any user's account.
It's a potential gotcha, but it means that you can run the exact same backup set under different credentials, and get different, user-specific backups. Very handy. Of course, you can simply specify full, real paths instead of tokens, and create different sets for each user. It's entirely up to you.
NOTE: If a directory entry is preceded by a pipe character ("|"), BackUp won't dig into the inner directories, and will backup only matching files from the top folder. e.g..
In a very similar way as we add files to a backup, we can add registry keys..
Many applications store their settings in the Windows Registry, and a backup of this information can save you a lot of time if you ever need to rewind your settings, or reinstall the application, or even windows itself; a procedure which inevitably obliterates all your carefully tuned preferences.
In my world, moving a window to position A, or putting a toolbar just there, is considered a task, one that took time, and one I'd rather not repeat, ever; especially those pesky toolbars. Same for any windows explorer setting. Along with many application preferences, these settings are stored in the Windows Registry.
Incorporating registry data in your backup is very easy; instead of
path=mask, you simply do
%=registry key. The percent character "%" instructs BackUp to treat the following command as a registry path, and backup will export that part of the registry to a plain text
.reg file, for inclusion in the backup, like so..
You can use "short names" for registry paths, too;
HKEY_LOCAL_MACHINE, etc., either works fine. Right-clicking on any section of the registry (inside regedit.exe) and selecting
Copy Key Name will get you your man, every time.
As with regular file paths, you can add as many registry keys (paths) as you need, to each backup set - this is especially useful for making backups of an application's settings where some are stored in regular ini/config files, and some are stored in the registry. BackUp allows you to grab both, and place them conveniently in the same backup.
The command-line syntax (aka. "how to get BackUp to do your evil bidding") is very simple; add the name of your chosen backup set. For example, to run a backup set called "prefs", do..
note: if you are running your backup command from a DOS prompt/shell/cmd.exe/Run..., etc., you will probably need to put quotes "" around any paths with spaces in them, for example..
"C:\Long Path\To\BackUp.exe" prefs
Same story if name of the backup set has spaces in it (quite valid)..
C:\Path\To\BackUp.exe "my daily backup"
You can run multiple backup sets with a single command, too; simply separate their names with pipes, e.g..
If any of the backup sets have spaces in their names, put quotes around the whole thing, like so..
C:\Path\To\BackUp.exe "prefs|my documents|business reports"
If you add switches to a multi-backup command, the switches will apply to ALL the backups, overriding the backup set's in-built switches and settings, if applicable.
You can override most of your default parameters both inside the batch sets themselves, or with simple command-line switches. Combine as many as you need, in any order, for example, to run the "test" backup set with progress tip you would do..
C:\Path\To\BackUp.exe t test
Here are the available switches, so far..
s = synchronize the backup (add new and changed files to an existing backup of the same name)
t = show progress tip
l = log everything (default is to log only errors)
If these are already set positively in your preferences, you can disable them on the command-line, like so..
-s = do not synchronize (replace existing backup with fresh files)
-t = disable progress tip
-l = log nothing, even if there were errors.
There is also a special switch..
r = report only (log what *would* have happened, but do not backup)
note: enable switches override disable switches, so if you enable the tooltip and also disable the tooltip on the same command-line (crazy person!) it will ultimately be enabled. Just so you know.
For a full explanation of the individual settings, see
Backups can be schedule to occur at any time, usually some time when you are asleep. This can be setup very easily using the
Add Scheduled Task wizard inside your system's
Scheduled Tasks Control Panel..
Simply click on the
Add Scheduled Task wizard, and run through the options. At the end of the wizard, ensure you check the
Open advanced properties... checkbox, so you can add the name of the backup set onto the end of the "Run:" command, which is the actual command-line that will be executed when the scheduled item runs.
If you prefer, scheduling a backup can also be achieved with a simple shell command (i.e.. from a "run" dialog/shell prompt/batch file/etc.) using Windows' built-in
schtasks program, like this (although it may split in your browser, the following command goes all on one line) ..
schtasks /create /sc daily /tn "my backup" /st 14:00:00 /tr "\"C:\Path\To\BackUp.exe\" daily" /ru UserName /rp PassWord
.. which would run the backup set
[daily] at 2pm every day. Alter the details to suit your needs, correct username and password, etc. NOTE,
schtasks has a lot more options; if you need more, the Windows Tech Centre at Microsoft has all the gory details. You can get to all the settings from the
Scheduled Tasks Control Panel, if need be.
Depending on demand and other factors, future versions of BackUp may offer a GUI, and a button for this. You can schedule backups for multiple users, too. See the above notes about "Tokens" more details about multi-user backups.
BackUp usually operates as a regular installed desktop application, keeping its settings inside your user folder, but BackUp can also operate in a completely portable state, and happily works from a pen-drive, DVD, floppy disk, or wherever you happen to be.
To activate portable mode, simply drop a
BackUp.ini file next to
It's no problem to use both kinds of installation simultaneously, or to run BackUp in portable mode on a machine where BackUp is already installed, even run them both at once. Simply put, if there's a
BackUp.ini next to it, BackUp will use it, and if there isn't an ini file there, BackUp uses the one in your user data folder (aka. "Application Data", aka. "AppData").
Archives can be automatically date and time stamped, and more. Check out the ini file for details of the specific settings.
no known bugs.
It should be noted that BackUp uses the last part of the paths as the name for the folder, so if you added a path which was..
the backup for that area would be in a folder called "concepts". This is a nice system, but if you were to include another path in this backup set, perhaps something like..
because it too ends in "concepts", its files would be stored in the same folder as the first, which may or may not be what you want, files from later paths (in the backup set) overwriting files from earlier paths. If synchronization is enabled, the later files would only be copied into the backup if they were different from the earlier files.
Something to keep in mind when you create your backup sets.
note: registry backups use the full registry path as the file name, I don't know of a useful reason to allow them to overlap in any way.