Skip to main content

Rsync Wrapper to Backup/Restore all Users.

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyrap, version 0.0.5
Filename, size File type Python version Upload date Hashes
Filename, size pyrap-0.0.5-py3-none-any.whl (6.7 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size pyrap-0.0.5.tar.gz (4.2 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page