Structure of the JSON database:
{ "dataset" : {...}, "backups" : {...}, "vault" : "", "storage" : ["", ...], // destinations used for this backup "version" : [major, minor, revision], "timestamp" : , "moved" : {...} (optional), "lastbackup" : "" }
"backups" contains:
"" : [ "file1", "file2", ... ]
"dataset" contains:
"" : { "deleted" : ["", ...], // Lists in which backups this file was deleted "checksum" : "", // Currently known version (blank if currently deleted) "memberof" : ["", ...] // Which backups this file exists in }
"moved" contains:
"" : { "reference" : "", "original" : "<original filename with path in >" }
Manifest:
{ "deleted" : [...], "moved" : {...}, "modified" : {...}, "previousbackup", "" }
"deleted" contains:
All files which were deleted since last run
"moved" contains:
"" : { "reference" : "", "original" : "<original filename with path in >" }
"modified" contains:
"" : { "deleted" : ["", ...], // Lists in which backups this file was deleted "checksum" : "", // Currently known version (blank if currently deleted) "memberof" : ["", ...] // Which backups this file exists in }
| Version | Changes |
|---|---|
| 1.0.0 | Added version and timestamp fields along with dataset, backups and vault. |
| 1.0.1 | Internal move detection, manifest gained moved entries. Database format unchanged. |
| 1.1.0 | Database now records moved entries and lastbackup of the previous run. Version key changed to an integer array. |