fssync

File system synchronization tool (1-way, over SSH)

Install

All systems
curl cmd.cat/fssync.sh
Debian Debian
apt-get install fssync
Ubuntu
apt-get install fssync
image/svg+xml Kali Linux
apt-get install fssync
Windows (WSL2)
sudo apt-get update sudo apt-get install fssync
Raspbian
apt-get install fssync

fssync

File system synchronization tool (1-way, over SSH)

fssync is a 1-way file-synchronization tool that tracks inodes and maintains a local database of files that are on the remote side, making it able to: - handle efficiently a huge number of dirs/files - detect renames/moves and hard-links It aims at minimizing network traffic and synchronizing every detail of a file system: - all types of inode: file, dir, block/character/fifo, socket, symlink - preserve hard links - modification time, ownership/permission/ACL, extended attributes - sparse files Other features: - it can be configured to exclude files from synchronization - fssync can be interrupted and resumed at any time, making it tolerant to random failures (e.g. network error) - algorithm to synchronize file content is designed to handle big files like VM images efficiently, by updating fixed-size modified blocks in-place Main usage of fssync is to prevent data loss in case of hardware failure, where RAID1 is not possible (e.g. in laptops). On Btrfs file systems, fssync is an useful alternative to `btrfs send` (and `receive`) commands, thanks to filtering capabilities. This can be combined with Btrfs snapshotting at destination side for a full backup solution.