Overview #
Cutback is a backup system with the goal of creating smaller, more focused backups by generating filtered file lists before archiving and keeping records of easily reaquirable files.
The backup strategy is broken up into discrete steps, each handled by a user-defined external application, and producing one or more files.
Before the backup is started, an identifier is generated from the date and the current backup index, which is incremented by 1 on each build for that date.
All files generated will have this identifier as it's file basename.
Search #
This step searches for files according to the following rules:
- Directories listed in the
paths
configuration variable are searched recursively. - Files matching patterns listed in the
excludes
configuration variable are excluded entirely. - Files matching patterns listed in the
records
configuration variable are added to a list of files to keep a record of.
Records are usually files that are low priority and easily reaquirable, such as movies, music, tv shows, etc.
This vastly improves the duration of the backup process, as well as the size of the resulting archive.
This list of records is located in the output directory, denoted with a
.records
suffix.
All other files found within the search, are added to a list in the output directory,
called the manifest, and denoted with a .manifest
suffix.
Archive #
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi eu lectus velit. Duis tristique risus tincidunt convallis mollis. Duis cursus commodo tempor. Aliquam pellentesque velit et nulla congue, vitae rutrum orci pharetra. Curabitur id diam erat. Nullam ex diam, gravida ac ultrices vel, sodales sodales leo. Suspendisse rhoncus ligula ut lacinia bibendum. Donec pretium pharetra magna. Phasellus quis erat odio. Pellentesque aliquet nulla id ex tempus fermentum. Phasellus magna leo, tempus at purus in, maximus eleifend massa. Praesent eleifend purus et ex congue egestas. Integer vel rutrum turpis. Nullam rutrum enim sed nunc auctor consectetur. Fusce id nisi nec elit varius pulvinar nec tempor metus.
Compress # (Optional)
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi eu lectus velit. Duis tristique risus tincidunt convallis mollis. Duis cursus commodo tempor. Aliquam pellentesque velit et nulla congue, vitae rutrum orci pharetra. Curabitur id diam erat. Nullam ex diam, gravida ac ultrices vel, sodales sodales leo. Suspendisse rhoncus ligula ut lacinia bibendum. Donec pretium pharetra magna. Phasellus quis erat odio. Pellentesque aliquet nulla id ex tempus fermentum. Phasellus magna leo, tempus at purus in, maximus eleifend massa. Praesent eleifend purus et ex congue egestas. Integer vel rutrum turpis. Nullam rutrum enim sed nunc auctor consectetur. Fusce id nisi nec elit varius pulvinar nec tempor metus.
Encrypt # (Optional)
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi eu lectus velit. Duis tristique risus tincidunt convallis mollis. Duis cursus commodo tempor. Aliquam pellentesque velit et nulla congue, vitae rutrum orci pharetra. Curabitur id diam erat. Nullam ex diam, gravida ac ultrices vel, sodales sodales leo. Suspendisse rhoncus ligula ut lacinia bibendum. Donec pretium pharetra magna. Phasellus quis erat odio. Pellentesque aliquet nulla id ex tempus fermentum. Phasellus magna leo, tempus at purus in, maximus eleifend massa. Praesent eleifend purus et ex congue egestas. Integer vel rutrum turpis. Nullam rutrum enim sed nunc auctor consectetur. Fusce id nisi nec elit varius pulvinar nec tempor metus.
Generate #
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi eu lectus velit. Duis tristique risus tincidunt convallis mollis. Duis cursus commodo tempor. Aliquam pellentesque velit et nulla congue, vitae rutrum orci pharetra. Curabitur id diam erat. Nullam ex diam, gravida ac ultrices vel, sodales sodales leo. Suspendisse rhoncus ligula ut lacinia bibendum. Donec pretium pharetra magna. Phasellus quis erat odio. Pellentesque aliquet nulla id ex tempus fermentum. Phasellus magna leo, tempus at purus in, maximus eleifend massa. Praesent eleifend purus et ex congue egestas. Integer vel rutrum turpis. Nullam rutrum enim sed nunc auctor consectetur. Fusce id nisi nec elit varius pulvinar nec tempor metus.