
Client Manual v2.0219 by Dominic
TimeDicer Client (TimeDicer.cmd) is a Windows command-line program which can perform attended or unattended push backups to a TimeDicer Server, optionally using Windows Volume Shadow Services; it can also show and recover previous versions of files from the TimeDicer Server. It is essentially a Windows wrapper for rdiff-backup. For more information visit the TimeDicer website.
Usage
TimeDicer.cmd [Options] [recover_file]
User Files
TimeDicer requires a ConfigFile (see example TimeDicer.txt below) which should hold- variable definitions and
- a comma-separated list of source-directories and destination-directories.
TimeDicer requires a private key file (.ppk) created with puttygen. By default this file should be named privatekey.ppk and saved at %APPDATA%\TimeDicer.
A cumulative log file is created at %APPDATA%\TimeDicer\timedicer-log.html (or as set by %log% - see below). With the compare option, the log is also sent to the console.
Options
Options are case insensitive, and dash can be used instead of slash:
- /c : compare rather than backup (--compare)
- /d : force deletion of pre-existing volume shadow sets (overrides setting in ConfigFile)
- /f conf : use ConfigFile 'conf'
- /g : run with debug messages
- /h /? : see these instructions (html)
- /q : reduce output messages (quiet)
- /t : do everything except call rdiff-backup (test)
- /v : show version of TimeDicer
- /x : if error occurs, proceed to exit at end of run instead of pausing
- List Versions: [recover_path\file] on command line will list timediced versions of file
- Recover Options: [/r] [/o] [recover_path\file] [when] [recover_to]
- /r : recover a file
- /o : with /r, allow overwrite of existing local file
- recover_path\file : the original-path\file to recover
- when : optionally, if recovering, specify datetime of version to recover - after recover_file
- recover_to : optionally, if recovering, specify where to recover to - default %TEMP%
Error Codes
- 1: failure at second call of vshadow
- 2: unable to access mapped drive - ensure source drive is formatted with NTFS or use vss=n
- 3: Windows Volume Shadow Services not operating correctly - if it has worked on this machine before, try rebooting, otherwise do Start/Run services.msc and check for Volume Shadow Copy which should be started, then retry. If you still have problems, check this thread: http://forums.seagate.com/stx/board/message?board.id=onetouch&message.id=1727
- 4: cannot find excludelist file on local machine - check SET excludelist= setting
- 5: missing dependency file
- 7: vshadow -da was unable to delete existing shadow copies - reboot to fix
- 8: cannot find private key file on local machine - check SET key= setting and/or .ppk file location
- 9: cannot connect to Server
- 10: cannot find configuration file
- 11: needs to be run with administrative privileges
- 12: cannot run under this version of Windows
- 13: cannot complete
- 14: cannot connect to rdiff-backup on Server
- 15: server undefined, or invalid configuration file
- 16: cannot decode short date format
- 17: recovering - cannot identify source directory as one used by TimeDicer
- 18: recovering/listing - an error occurred when recovering, or listing versions of, the specified file
- 20: error at second invocation of vshadow - try running with /d option
- 30: error performing rdiff-backup
- 50: error performing rdiff-backup + error with vshadow
- 101+: internal error - please report
TimeDicer.txt Example
#TimeDicer.txt file - example/template config file #Lines that are blank or any text after # on a line are ignored, lines #beginning with SET are processed, all other lines are assumed to be part #of the list of sources and destinations. The file must terminate with #an end-of-line. #The only required lines are one beginning SET server= (specifying the address #of the TimeDicer Server), and at least one comma-separated line specifying a #source folder and destination archive. #'server' is the DNS name or IP address of the TimeDicer Server, and #must be supplied here. SET server=192.168.100.125 #'excludelist' optionally identifies a file which lists (in Windows format, #case insensitive) files/paths to be excluded from backup e.g. thumbs.db. #Each file/path should appear on a separate line in the file. Do not begin #or end an entry in the list with * as this is prefixed/suffixed #anyway, and do not use quotes. So a line: #"C:\Documents And Settings\Fred\My Documents\thumbs.*" #should instead be written as: #C:\Documents And Settings\Fred\My Documents\thumbs. #or even: #thumbs. #(which will exclude all files or paths which contain the text 'thumbs.') #SET excludelist=c:\exclfolders.txt #Backups:a comma-separated list of source directories and their #destination archives, with an optional third parameter holding extra #parameters to be added to the rdiff-backup command line (these appear before #any 'excludelist' and 'options' parameters and thus are #processed after them). Environment variables can be embedded as shown. #Directories should not have surrounding quotes, and there should not #be any terminating backslash (\). %USERPROFILE%\My Documents,mydocs,--exclude **/*.accd? --exclude **/*.md? %USERPROFILE%\Desktop,desktop c:\Utils,utils c:\Bas,bas
TimeDicer.txt file - Advanced Options
You will not normally need to use these more advanced options:
#'user' is the login name of the user on the TimeDicer Server, it is #optional and defaults to lower-case %USERNAME%-%USERDOMAIN% with #any spaces stripped. 'user' must not contain spaces SET user=fred #'key' is ppk file (created with Puttygen and containing private key, the #corresponding public key must be saved on the TimeDicer Server in # ~/.ssh/authorized_keys). For TimeDicer to run unattended, the public key #must be saved without passphrase. 'key' is optional; if not supplied it #defaults to %APPDATA%\TimeDicer\privatekey.ppk. SET key=C:\Documents and Settings\Fred\mykey.ppk #'port' is the ssh port on or to the TimeDicer Server, default 22. SET port=21 #'basearchive' is optional, all archive destinations will have this prefix. #Unless 'basearchive' starts with / it will be defined in relation to the home #directory of the user on the TimeDicer Server; if it is undefined, archives #will be directly located in that home directory. If using ecryptfs under #Ubuntu then 'basearchive=Private' should provide good protection against data #theft resulting from physical theft of the TimeDicer Server, but it does not #prevent the administrator of the TimeDicer Server (superuser) getting access #to your data. Note that 'basearchive' is case sensitive. SET basearchive=archives/ #'options' is optional and contains additional command-line options for #rdiff-backup, it appears before 'excludelist' and thus is processed after it. SET options=-v5 #'vss' is optionally y or n (default: y) - set to n to disable Volume Shadow #Services. You need to do this is if the source drive is formatted with FAT32 #(or FAT) or if you are backing up from a non-local drive. SET vss=n #'skip_on_no_change' is optionally y or n (default: y) - set to n to disable #skipping of backup if the source data has not changed since last time. After #each run TimeDicer records the date of each successful backup and if #'skip_on_no_change' is 'y' then it looks for changes in the source data #(using xcopy) since [and including] that date. Backup is skipped if there #are no changes. This can avoid bloating of backups on the TimeDicer Server #especially with sources that rarely change. SET skip_on_no_change=n #'skip-rdiff-backup-test' is optionally y (default: n) - this forces TimeDicer #to skip an initial test for the presence and version of rdiff-backup on the #server. In rare situations, e.g. restricted access rights to the server, this #might be helpful. SET skip-rdiff-backup-test=y #'log' is optional location for log file and it defaults to #%APPDATA%\TimeDicer\timedicer-log.txt. If you do not want a log set it to NUL. SET log=J:\mylog.txt
Dependencies (all free) software
- On Linux server:
- rdiff-backup
- openssh (normally installed by default)
- On Windows client (in same folder as TimeDicer):
- rdiff-backup.exe (Windows port)
- Microsoft Visual 2008 Redistributables
- ssed.exe (Windows port)
- plink.exe
- and if you wish to use Volume Shadowing with NTFS (recommended) you also need:
Questions? Send an email to Dominic dominic@timedicer.co.uk