diff options
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 29 |
1 files changed, 26 insertions, 3 deletions
@@ -1,4 +1,8 @@ # -- BUGS -- # +- /path/ is not recognized as configured, when only /path explicitly is + configured. +- After a failure, the .backup directory is in a bad state (contains backup + data labeled as old, however not related to the destination). # -- TODO -- # - For ssh, set up one single connection (maybe configurable?). @@ -6,13 +10,11 @@ -oControlMaster=yes \ -oControlPersist $remote /bin/true `- ssh -oControlPath=/tmp/root-readable/something.sock -- Replace echo by printf(-functions). - Set up default configuration file. - [consider] When installing, copy the config file to both /etc and /usr/share, such that sourcing from the latter location removes the need to specify default options in the script itself. - Test for read/write access at some point. -- Better error reporting. - Use autotools. - Per dirpath rsync_args. - Allow for resuming of backups. @@ -21,7 +23,7 @@ `- Not a good idea if a notable amount of time passed. `- [question] What happens in case of partially transferred files? `- --delete-during, --delete-excluded -- Shell completion of configured backup paths. +- [consider] Shell completion of configured backup paths. - Better error handling on failure (of rsync). - Use ask(). `- Allow for configuration of default answer. @@ -29,6 +31,12 @@ - [consider] Get date on source host. - Named backups to allow for different destinations per source (and shorter names). +- Test suite. +- Check for several file systems in a tree (and error upon locating such). +- [consider] Add fallback if no local mirror of the source file tree is + available. +- Only store the last mirror locally, but date it. +- [consider] --one-file-system as default option. # -- PROBLEMS -- # - rsync bug: https://bugzilla.samba.org/show_bug.cgi?id=13445 @@ -56,3 +64,18 @@ `- For now, -v or -vv in rsync_args should work fine. - non-intercative option. - rsync_network_options (when remote src or dest, e.g. for --compress). +- Write metadata. +- Use wrappers for the functions possibly non locally executed. +- Compare src:work/$old_date and dest:$old_date for consistency. +- Run script instead of function remotely + `- ssh host 'bash -s' -- < script_file args + `- In case of dependencies, the otherwise sourced files could just be + included in the stdin of ssh. + `- cat script_file dep_file | ssh host 'bash -s' -- args +- Use stdout of functions to return a string value and stderr for everything + else. + `- Optional: Prefixes determining whether normal or error. + `- Convert at the end (remove prefix and pipe to stderr / stdout). +- Only keep the respectively latest backup on the source. + `- Or the last two, which would allow to reuse the second-last as new + mirror (for a probably negligible gain, if any). |