Skip to content

Encrypted Backup on external Storage - Open Source GPL

Notifications You must be signed in to change notification settings

mcmilk/USB-Backup

Repository files navigation

USB-Backup

USB-Backup is a free backup solution for creating encrypted backups to external USB media.

For the compression and the backup format itself the proven and very stable software 7-Zip is used.

Features

  • local disks, such as the system disk C: can be backed up by using shadow copies (warning, this requires administrator privileges)
  • the use of the program is user-friendly and has been developed in cooperation with users
  • Network drives and UNC paths can also be backed up
  • Installation: no setup, just one AutoIT script (put together into one executable)
  • Security:
    • during the initial backup, a password is set - without a password, you can not back up!
    • when the external disk will be lost, a stranger can not really see what was backed up
    • only username@pc are stored plaintext, but this is used to distinguish the backups in case of emergency
    • an encrypted index is stored on the external disk, so that a restore at any time and on any computer is possible
  • to each directory, you can create exception lists
  • after a setable time, USB-Backup reminds the user to update the existing backup
  • the degree of compression and other 7-Zip parameters can be completely adapted in the USB Backup.ini
  • Automatic updates of program and help file are possible, but you can disable this also
  • the help file is currently not finished, sorry about that :(
    • you can help me with that :)

Screenshots

  • no stick -> no usb media plugged in
  • with stick -> some unknown media
  • reg. stick -> with plugged in registered stick

Requirements

  • Hardware
    • Intel Pentium III, 500MHz, 512MB RAM, 2MB Harddisk
  • Operation System:
    • Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10
    • Windows Server 2003, Windows Server 2008, Windows Server 2012
  • Software:
    • for restoring the backups, 7-Zip Zstd is needed, when zstd was used for the backups

Installation

  • the program does not require installation and is run under default user privileges
  • USB-Backup should be put into the Startup folder, so that it starts with windows - it is seen then in the system tray
  • the per user configuration can be found in this folder: %APPDATA%\USB-Backup

Configuration

  • the program uses the file USB Backup.ini for it's settings
Option=Default value Description
MaxFullBackups=0 This number defines how many Full Backups are okay, before old ones get deleted. When zero, no limit is used.
FullBackupIn=365 This number defines the days, until a new full backup will be created, instead of an update.
ShowUpdateHint=7 Number of days until an backup becomes obsolete and the user will get some hint about this.
ShowEditConfig=1 Enable "Edit configuration" in the menu.
ShowEditIndex=0 Enable "Edit index" in the menu.
ShowWriteIndex=0 Enable "Write index" in the menu.
ShowStatusMessage=1 When set, the user will get a MsgBox() with Status information about the backup createt (success/failure).
EnableVSS=0 Should USB-Backup use Volume Shadow Copies. This needs the password for the user administrator
DebugVSCSCCmd=0 Turn on debugging of VSS.
UsePowerPlan=1 Turn on the creation of an temporary USB-Backup powerplan. Needed for disabling Suspend Mode and so on, while creating some a backup.
DebugPowerPlan=0 Turn on debugging of the powerplan changes.
CheckForUpdate=1 Defines, if USB-Backup should check for updates.
NewVersionHint=300 Number of seconds, for showing the user some hint for a new version of USB-Backup.
FileNameLen=16 Length of the filenames, generated by USb-Backup.
Editor=notepad.exe Some command for editing files. This is used for opening the configuration.
RunBeforeCmd= Can be used for executing some command before backup starts.
RunAfterCmd= Can be used for executing some command after backup is finished.
7ZipPriority=idle Possible: idle/normal. Defines, if 7-Zip process should run in background or normal mode.
Debug7ZipCmd=0 Turn on debugging of the compression process / 7-Zip.
IniVersion=6 Internal use, do not change!

These two options are the compression and the update command line of 7-Zip:

  • 7ZipCreateCmd=7zg-mini a "%A" %o -m0=LZMA2 -mx9 -ms=on -mhe -slp -ssc -ssw -scsWIN -p"%P" "%p"
  • 7ZipUpdateCmd=7zg-mini u "%A" %o -m0=LZMA2 -mx9 -ms=on -mhe -slp-ssc -ssw -scsWIN -p"%P" -u- -up0q3r2x2y2z0w2!"%U" "%p"

Download

See Also