The synchronization profile includes all application settings
that are relevant for synchronizing a set of specified
directory pairs. You may save
and load
specified synchronization profiles.
You can change all listed options via the profile management
dialog available via the JFileSync main frame. A single
profile is separated into three different parts:
In the following we give an overview of basic profile settings. These options should be defined once for each set of directory pairs you want to synchronize together.
(B1) The profile should have a title describing its main purpose
(like Synchronizing my data directory between laptop
and workstation
).
(B2) The profile must include a list of directory pairs that should be compared and synchronized. We call the first member in this pair source and the second one target directory. But this is just for labeling the two. You are allowed to copy and delete files from the source directory to the target directory and vice versa. If you want to add a new pair, a directory explorer is opened and you may choose a source and target directory on your local file system.
If you want to synchronize a local directory with a directory of an external computer, you have to access a network drive or use a JFS server for synchronization. The easiest way is, to simply connect both computers (via a Local Area Network) and to make the directories of one of your machines available for the other one (e.g., by using Windows File System Sharing, Samba, or NFS). If you only have restricted access to the external machine (e.g., via SSH) you may use a JFS server in order to synchronize your files.
(B3) You may also specify the synchronization mode; i.e., the mode used in order to synchronize the specified pairs of directories. The default settings use the automatic mode that will use the history of synchronized files in order to determine whether a file should be copied or has to be deleted. You may also change the synchronization mode using the corresponding menu items of the JFileSync main frame.
In the following we describe more advanced profile settings. These options usually don't have to be modified.
(A1) You may specify the granularity in ms for the comparison of two files or directories. Under the DOS and Windows FAT file system, the finest granularity on time resolution is two seconds. So we define the default maximum tolerance range for each comparison as 2000ms.
(A2) You may specify the buffer size used for copying files. A buffer size of 262144 bytes is used by default.
(A3) A user may set actions for each element of the synchronization table manually. If the flag for keeping user-defined actions is de-activated, such user-defined actions will be overwritten by the original actions when switching between synchronization modes. The default behavior is to keep such user-defined actions.
(A4) You may specify whether JFileSync stores histories of
synchronized files. Per default histories are stored to the
JFS configuration directory (usually .jfs
,
located in the user's home directory) for each synchronized
directory pair. The histories are used to automatically
determine files to copy and delete on source and/or target
directory structures. Turning this off for a profile means
that the automatic synchronization mode will not be able to
determine synchronization actions based on the
synchronization history.
(A5) You may determine whether the can write property of a file should be replicated during synchronization. Per default a file is set read only, if no right access is granted. However, if the file is changed and would have to be synchronized, the can write property prohibits overwriting the target file if set.
You may specify a list of regular expressions that should be used in order to determine whether a certain file or directory should be included/excluded in the comparison and synchronization to be performed. If the name of the file or directory matches the expression, it is included/excluded.
Excluding expressions are stronger than including ones; that is, if a file or directory matches an include and exclude expression, it is excluded from comparison.
For instance, if you want to exclude all files that use
xyz
as a file extension (like
test.xyz
) you may add (.*)\.txt
as a regular expression to the list of exclude filters. In a
regular expression the dot (.
) represents an
arbitrary character. If you want to specify the dot itself as a
character you have to write a \
in front of it.
Brackets are just used for grouping purposes.
Sometimes it is useful, to use a small server application to access file systems to which you do not have direct access to, located - for instance - on an external server. For this reason, JFileSync may be started in server mode on an external machine and a JFileSync client may connect to an already started server from your local machine. All server options may be stored in a user profile, too. You can change the server options via the JFS server configuration panel as part of the profile management dialog. Detailed information about how to install and use a JFS sever are described on the server settings page.
(S1) You may specify the base directory used on server side for
finding files. This is the directory added as a parent
directory to all files on server side. For instance, if you want
to access a directory named dir
on the server and
the base directory is /home/user
, the server is
going to search for directory /home/user/dir
on server side. The default directory is the current working
directory (the directory from which the JFS server was
started).
(S2) You may specify a pass phrase used for accessing a JFS server. Only connections using this pass phrase for authentication are allowed to use the server. All other connections are rejected. It is highly recommended to change the pass phrase before using a JFS server.
(S3) You may specify the standard port used by the JFS server (and used by a client to connect to the server).
(S4) You may specify the timeout in ms used for all socket connections. The server is launched with a timeout of 5000 ms by default. If you are using a slow modem connection, you should increase this value to at least one minute (3600000 ms).
(S5) You may specify whether a started JFS server is shut down by the JFS client as soon as the synchronization is done. If synchronizations have to run for a very long time, it may be convenient for security reasons to automatically shut down the server after synchronization.
In your profile, you can specify directory pairs that should
match after synchronization. For instance, let us assume that
the source directory is C:\Source
and the
target directory is E:\Target
. That means, all
files and directories in C:\Source
are
synchronized with all files and directories in
E:\Target
. It does not mean, that the source
directory itself is copied to the target directory. The terms
source and target are just for labeling two
directories that should be synchronized; that means, should
contain the same files after synchronization.
You may modify existing directory pairs via the profile manager itself. Just do a double-click on the source or target directory's name in the table of directory pairs and modify the directory name accordingly. JFileSync should then ask you for creating a new directory, if the one you entered does not exist. Non-existing directories are written in red color. If you specify a directory located on a JFS server, no such tests are performed in order to avoid connecting to the server each time you change a member of a directory pair. External directories are written in blue color.