Metadata-Version: 2.1
Name: pyrap
Version: 0.0.5
Summary: Rsync Wrapper to Backup/Restore all Users.
Home-page: https://github.com/tslight/pyrap
Author: Toby Slight
Author-email: tobyslight@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Description-Content-Type: text/markdown
Requires-Dist: treepick
Requires-Dist: yorn

# BACKUP & RESTORE SCRIPTS

Backup or restore all user profiles on a host.

## USAGE

```
usage: pyrap [-h] (-b | -r) [-u] [-x] [-v | -q] url

Backup or restore users to an rsync server.

positional arguments:
  url             A valid rsync url.

optional arguments:
  -h, --help      show this help message and exit
  -b, --backup    Backup users to rsync server or path.
  -r, --restore   Restore users on from last backup.
  -u, --users     Automate user selection.
  -x, --excludes  Automate excludes selection.
  -v, --verbose   Increase output verbosity.
  -q, --quiet     Run silently.
```

## ARGUMENTS

**[URL]**

Takes an rsync url as an argument:

`rsync://user@host:port/path/to/PARENT/of/Users`

Or alternatively, any mountpoint will work:

`/Volumes/Backups`

## PITFALLS & CAVEATS

**THE PATH ON THE REMOTE HOST MUST POINT TO PARENT OF USERS, NOT USERS!**

Once mounted the mountpoint should contain the Users directory underneath it.

The script backups to or restores from the following directory layout underneath
the mountpoint:

`/mountpoint/Users/user.name/date`

And logs to:

`/mountpoint/Logs/CopyType/user.name/date.log`

*Where CopyType equals either Backup or Restore.*

**If this layout does not exist it will be created under the mountpoint.**

User, group and permissions will be retained and each backup will be hard-linked
against the last to save space and mimic the functionality of Time Machine.

<https://blog.interlinked.org/tutorials/rsync_time_machine.html>

It's also worth pointing out that for the time being preserving extended
attributes is not supported.

## EXAMPLES

To backup from /Users to a rsync server, without prompting for each user:

`pyrap -bu rsync://user@host:port/backups`

To restore from /Users to a rsync server, with increased verbosity:

`pyrap -rv rsync://user@host:port/backups`


