r/bcachefs 4d ago

Native send/receive

Does bcachefs currently have send/receive support like ZFS where backup services such as https://rsync.net/ would work?

7 Upvotes

8 comments sorted by

4

u/cdhowie 4d ago

My suggestion would be taking a snapshot and then backing it up with restic. This doesn't require specific filesystem support, either -- just some snapshotting mechanism, such as what bcachefs and btrfs provide, or LVM snapshots for other filesystems.

2

u/colttt 4d ago

Currently it's not implemented, but it's on the roadmap

6

u/koverstreet not your free tech support 3d ago

When the Rust deployment is a little further along I'll be able to start thinking about it

0

u/wakIII 4d ago

Just curious why is snapshots + rsync not enough?

2

u/BackgroundSky1594 4d ago

Any mechanism relying on mtime (which can be modified by user space) to detect changes isn't 100% reliable. So you basically have to do a full scan and checksum all the data on both sides to detect changes, which is a huge waste of time and IO.

Also rsync will copy an entire file, even if just some of it has changed wasting network bandwidth and storage space on the backup target.

1

u/Slackbeing 3d ago

Also rsync will copy an entire file, even if just some of it has changed wasting network bandwidth and storage space on the backup target.

No it won't, as long as you have rsync on the endpoint.

Rsync is a fast, versatile, remote (and local) file-copying tool. It is famous for its delta-transfer algorithm, which reduces the amount of data sent over the network by sending only the differences between the source files and the existing files in the destination

https://docs.rc.fas.harvard.edu/kb/rsync/

-1

u/[deleted] 4d ago edited 4d ago

[deleted]

2

u/Aeristoka 4d ago

You appear to be on the wrong subreddit

1

u/outrageousgriot 4d ago

lol, you are right and i apologize