[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#732332: ITP: fssync -- File system synchronization tool (1-way, over SSH)



Package: wnpp
Severity: wishlist
Owner: Julien Muchembled <jm@jmuchemb.eu>

* Package name    : fssync
  Version         : 1.0
  Upstream Author : Julien Muchembled <jm@jmuchemb.eu>
* URL             : http://jmuchemb.eu/fssync.git
* License         : GPL 3
  Programming Lang: Python
  Description     : 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.


Reply to: