net/syncffsd - The NetBSD Packages Collection

FFS file system mirroring using rsync

syncffsd uses rsync(1) to replicate a directory tree to another host.
This involves detecting changes, something NetBSD is not well prepared to
handle. The kqueue(2) interface can detect changes, but it needs to use a
file descriptor for every node monitored, and this does not scales very
well for huge directories trees.

syncffsd attempts to improve the situation until kqueue(2) gets better,
by using FFS superblock's fs_time field, which is updated on every
file system change. This lets syncffsd detects a change immediately if the
file system is mounted synchronous, or after a few seconds if mounted with
WAPBL(4) enabled.

Once a change is detected, the relevant nodes are found by walking source
looking for files that changed since the previous file system modification.
The resulting nodes are deduped (i.e.: we do not retain a node in
a directory if the directory itself changed), and are fed to rsync(1).

Build dependencies

pkgtools/mktools pkgtools/cwrappers

Runtime dependencies

(none)

Binary packages

OSArchitectureVersion
NetBSD 10.0aarch64syncffsd-0.8.tgz
NetBSD 10.0aarch64syncffsd-0.8.tgz
NetBSD 10.0aarch64ebsyncffsd-0.8.tgz
NetBSD 10.0aarch64ebsyncffsd-0.8.tgz
NetBSD 10.0alphasyncffsd-0.8.tgz
NetBSD 10.0alphasyncffsd-0.8.tgz
NetBSD 10.0earmv4syncffsd-0.8.tgz
NetBSD 10.0earmv6hfsyncffsd-0.8.tgz
NetBSD 10.0earmv6hfsyncffsd-0.8.tgz
NetBSD 10.0earmv6hfsyncffsd-0.8.tgz
NetBSD 10.0earmv7hfsyncffsd-0.8.tgz
NetBSD 10.0earmv7hfsyncffsd-0.8.tgz
NetBSD 10.0earmv7hfsyncffsd-0.8.tgz
NetBSD 10.0i386syncffsd-0.8.tgz
NetBSD 10.0i386syncffsd-0.8.tgz
NetBSD 10.0m68ksyncffsd-0.8.tgz
NetBSD 10.0powerpcsyncffsd-0.8.tgz
NetBSD 10.0powerpcsyncffsd-0.8.tgz
NetBSD 10.0powerpcsyncffsd-0.8.tgz
NetBSD 10.0sparc64syncffsd-0.8.tgz
NetBSD 10.0sparc64syncffsd-0.8.tgz
NetBSD 10.0sparcsyncffsd-0.8.tgz
NetBSD 10.0sparcsyncffsd-0.8.tgz
NetBSD 10.0vaxsyncffsd-0.8.tgz
NetBSD 10.0vaxsyncffsd-0.8.tgz
NetBSD 10.0x86_64syncffsd-0.8.tgz
NetBSD 10.0x86_64syncffsd-0.8.tgz
NetBSD 9.0aarch64syncffsd-0.8.tgz
NetBSD 9.0aarch64syncffsd-0.8.tgz
NetBSD 9.0alphasyncffsd-0.8.tgz
NetBSD 9.0alphasyncffsd-0.8.tgz
NetBSD 9.0earmv6hfsyncffsd-0.8.tgz
NetBSD 9.0earmv6hfsyncffsd-0.8.tgz
NetBSD 9.0earmv6hfsyncffsd-0.8.tgz
NetBSD 9.0earmv7hfsyncffsd-0.8.tgz
NetBSD 9.0earmv7hfsyncffsd-0.8.tgz
NetBSD 9.0earmv7hfsyncffsd-0.8.tgz
NetBSD 9.0i386syncffsd-0.8.tgz
NetBSD 9.0i386syncffsd-0.8.tgz
NetBSD 9.0powerpcsyncffsd-0.8.tgz
NetBSD 9.0powerpcsyncffsd-0.8.tgz
NetBSD 9.0powerpcsyncffsd-0.8.tgz
NetBSD 9.0sparc64syncffsd-0.8.tgz
NetBSD 9.0x86_64syncffsd-0.8.tgz
NetBSD 9.0x86_64syncffsd-0.8.tgz
NetBSD 9.3x86_64syncffsd-0.8.tgz

Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.

Available build options

(none)

Known vulnerabilities

The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.

Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.


Problem reports, updates or suggestions for this package should be reported with send-pr.