{"id":14155983,"url":"https://github.com/alunduil/zfs-replicate","last_synced_at":"2025-04-08T08:42:17.500Z","repository":{"id":45165575,"uuid":"146060574","full_name":"alunduil/zfs-replicate","owner":"alunduil","description":"ZFS Replication","archived":false,"fork":false,"pushed_at":"2024-10-29T09:06:02.000Z","size":802,"stargazers_count":23,"open_issues_count":0,"forks_count":3,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-10-29T10:57:28.643Z","etag":null,"topics":["replication","snapshots","zfs"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alunduil.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-25T03:13:19.000Z","updated_at":"2024-10-29T09:06:05.000Z","dependencies_parsed_at":"2023-02-19T12:15:22.367Z","dependency_job_id":"748d9e7b-6ea8-43df-8370-76705e4fd2ed","html_url":"https://github.com/alunduil/zfs-replicate","commit_stats":{"total_commits":284,"total_committers":6,"mean_commits":"47.333333333333336","dds":"0.24647887323943662","last_synced_commit":"5481ed3d3a45ffc71b817a8438677dd7780e806c"},"previous_names":[],"tags_count":43,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fzfs-replicate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fzfs-replicate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fzfs-replicate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fzfs-replicate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alunduil","download_url":"https://codeload.github.com/alunduil/zfs-replicate/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247807035,"owners_count":20999453,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["replication","snapshots","zfs"],"created_at":"2024-08-17T08:05:08.015Z","updated_at":"2025-04-08T08:42:17.464Z","avatar_url":"https://github.com/alunduil.png","language":"Python","funding_links":[],"categories":["others"],"sub_categories":[],"readme":"\u003c!-- vale RedHat.Headings = NO --\u003e\n# zfs-replicate\n\u003c!-- vale RedHat.Headings = YES --\u003e\n\n\u003chttps://github.com/alunduil/zfs-replicate\u003e\n\nBy Alex Brandt \u003calunduil@gmail.com\u003e\n\n## Description\n\nzfs-replicate sends all Zettabyte File System (ZFS) snapshots to a remote host by SSH.  zfs-replicate\ndoes **not** create ZFS snapshots.\n\nzfs-replicate forks [autorepl.py] used by [`FreeNAS`].\n\nzfs-replicate relates to several other projects, which fit other niches:\n\n1. [sanoid]: A full snapshot management system. Its companion,\n   `syncoid`, handles replication with copious options.\n1. [zfs-replicate (BASH)]: A similar project. The major differences include\n   configuration style and system expectations (for example, logging controls).\n   zfs-replicate uses parameters whereas zfs-replicate (BASH) uses a BASH script.\n1. [znapzend]: Another scheduling and replicating system.\n1. [zrep]: A SH script with several control commands for snapshot replication.\n\n## Terms of use\n\nYou are free to copy, change, and distribute zfs-replicate with attribution\nunder the terms of the `BSD-2-Clause` licence. See the [LICENSE] for details.\n\n## Prerequisites\n\n1. A remote system with a ZFS filesystem and the `zfs` command-line tools\n1. If using lz4 compression, local and remote systems must have lz4 in their environments\n1. SSH access to that remote system\n1. If you're not using the root user remotely:\n   1. Ensure the user can mount filesystems\n      1. [FreeBSD]: `sysctl -w vfs.usermount=1`\n   1. Add ZFS permissions\n      1. Command: `zfs allow ${USER} ${PERMISSIONS} ${BACKUP_DATASET}`\n      1. Permissions\n         1. `clone`\n         1. `create`\n         1. `destroy`\n         1. `hold`\n         1. `mount`\n         1. `promote`\n         1. `quota`\n         1. `readonly`\n         1. `receive`\n         1. `rename`\n         1. `reservation`\n         1. `rollback`\n         1. `send`\n         1. `snapshot`\n1. A local ZFS filesystem and `zfs` command-line tools\n\n_N.B., don't use the root user to access your remote system._\n\n## How to use zfs-replicate\n\n1. `poetry install`\n1. `poetry run -- zfs-replicate --help`\n\n## Documentation\n\n* `zfs-replicate --help`: Help for zfs-replicate.\n* [LICENSE]: Licence file explaining usage of zfs-replicate.\n* [Survey of ZFS Replication Tools][survey]: Overview of various ZFS replication\n  tools and their uses.\n* [Working With Oracle Solaris ZFS Snapshots and Clones]: Oracle's guide to\n  working with ZFS snapshots.\n\u003c!-- vale RedHat.Definitions = NO --\u003e\n* [ZFS REMOTE REPLICATION SCRIPT WITH REPORTING]\n\u003c!-- vale RedHat.Definitions = YES --\u003e\n* [ZFS replication without using Root user]: How to configure ZFS replication\n  for a non-root user.\n\n## Getting support\n\n* [GitHub issues]: Report any problems or features requests to GitHub issues.\n\n[autorepl.py]: https://github.com/freenas/freenas/blob/master/gui/tools/autorepl.py\n[FreeBSD]: https://www.freebsd.org/\n[`FreeNAS`]: http://www.freenas.org/\n[GitHub issues]: https://github.com/alunduil/zfs-replicate/issues\n[LICENSE]: ./LICENSE\n[sanoid]: https://github.com/jimsalterjrs/sanoid\n[survey]: https://www.reddit.com/r/zfs/comments/7fqu1y/a_small_survey_of_zfs_remote_replication_tools/\n[Working With Oracle Solaris ZFS Snapshots and Clones]: https://docs.oracle.com/cd/E26505_01/html/E37384/gavvx.html#scrolltoc\n[ZFS REMOTE REPLICATION SCRIPT WITH REPORTING]: https://techblog.jeppson.org/2014/10/zfs-remote-replication-script-with-reporting/\n[zfs-replicate (BASH)]: https://github.com/leprechau/zfs-replicate\n[ZFS replication without using Root user]: https://forums.freenas.org/index.php?threads/zfs-replication-without-using-root-user.21731/\n[znapzend]: http://www.znapzend.org/\n[zrep]: http://www.bolthole.com/solaris/zrep/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falunduil%2Fzfs-replicate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falunduil%2Fzfs-replicate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falunduil%2Fzfs-replicate/lists"}