csync is a lightweight utility to synchronize files between two directories on a system or between multiple systems.

It synchronizes bidirectionally and allows the user to keep two copies of files and directories in sync. csync uses widely adopted protocols, such as smb or sftp, so that there is no need for a server component. It is a user-level program which means you don’t need to be a superuser or administrator.

Together with a Pluggable Authentication Module (PAM), the intent is to provide Roaming Home Directories for Linux.

For more information please read the userguide.

What is in csync different than X?

What is csync2

csync2 is a file synchronizer for clusters or server farms! It is a completely different project with a different goal. csync2 implements its own protocol and requires a server component. csync (this project) is a client-only file synchronizer for users using existing protocols like smb or sftp.

What is the difference between rsync and csync

rsync is a unidirectional file synchronizer or simply a backup tool. It requires rsync on the host you’re syncing with to use the rsync protocol. As rsync is backup tool (one way) it isn’t able to correctly detect file deletions for example.