At line 1 changed one line |
CrushSync is an enterprise only feature. It provides real time file synchronizations through CrushFTP. The client runs on the local machine monitoring the specified folders. When a change is detected, the change is propagated to the CrushFTP server, and any other clients subscribed to that folder now get those same changes. Only the changed parts of large files are sent, compression is used to save on bandwidth, and bandwidth acceleration can be used as well. Client configurations can be pre-configured for deployment, and an advanced mode allows clients to encrypt the data at the client side so that the server can never access the raw data. Only clients that have the private key can. This allows for robust one way synchronizations where a client places a file in the folder, and its sent to the server encrypted, and downloaded and decrypted by other privileged clients. The client is launched as an automatically updating application over a web connection. You as the server administrator control when you want to update the application for end users. |
CrushSync is an enterprise only feature. It provides real time file synchronizations through CrushFTP. The client runs on the local machine monitoring the specified folders. When a change is detected, the change is propagated to the CrushFTP server, and any other clients subscribed to that folder now get those same changes. Only the changed parts of large files are sent, and bandwidth acceleration can be used as well. Client configurations can be branded, localized, and pre-configured for deployment. The client is launched as an automatically updating application over a web connection. You as the server administrator control when you want to update the application for end users. |
At line 3 added 2 lines |
[CrushSync Comparison] with some other similar products. |
|
At line 4 changed one line |
__Setup Guide: Synching and Revision Tracking__ |
!!!Setup Guide: Synching and Revision Tracking |
At line 10 changed one line |
Then click the Advanced button to open the panel to configure the sync options. |
Then click the Advanced button to open the panel to configure the sync options. Its recommended to do at least 3 revisions. If a conflicting edit was done on the same file by two people, it uses the revisions to pull back prior versions so that the users can self resolve the issue. |
At line 16 changed one line |
__Downloading and Starting the Client__ |
!!!Giving Access to the Client |
At line 18 changed 4 lines |
Use a URL pointing at your own server something like this: |
{{{ |
https://test.crushftp.com/WebInterface/CrushSync/CrushSync.jnlp |
}}} |
Before users will be able to download and run CrushSync, you need to go into the user manager, WebInterface section, Buttons section and add the two new buttons for 'Download CrushSync', and 'Manage Syncs'. |
---- |
!!!Starting the Client |
---- |
When a user is logged into the WebInterface, you will see an icon next to the folders and files that are being synched. |
At line 23 changed one line |
This will start a java WebStart application which is the client. Its downloaded automatically, and launched after getting user approval. |
Then you can click the button to download the sync client if it has been added onto your user in the User Manager. (Prior step.)\\ |
You will be asked for two passwords. The first is your current account password for the WebInterface. The second is the password for managing the sync agent. Use something secure, this password will be needed every time you open the 'Sync Manager' to control your sync agent(s). |
At line 25 changed 4 lines |
OS X:\\ |
[attachments|crushsync-download_osx.png]\\ |
Windows:\\ |
[attachments|crushsync-download_win.png]\\ |
[attachments|sync_webinterface.png] |
At line 30 changed one line |
You may be prompted to save a shortcut for future launching of the application without going to the URL again. If you are not prompted, it will save a shortcut icon on your desktop. |
On windows, you will have an icon in your system tray for the sync agent and on OS X you will have an icon in your menubar. There is no management UI on the machine, you do all of that through the WebInterface in the 'Sync Manager'. |
At line 32 removed 2 lines |
[attachments|saving_shortcut_app_osx.png]\\ |
|
At line 35 changed one line |
__Configuring the Client__ |
!!!Configuring the Client |
At line 37 changed one line |
The client needs to be configured to connect to your CrushFTP server. You can build a default configuration that gets distributed automatically with CrushSync downloads so that the user only need to enter in details like their username and password. You can take a look at the jnlp file in the WebInterface/CrushSync/ folder to see the reference it makes for a default configuration file. |
You can configure everything in the client. |
At line 39 changed one line |
Otherwise, you can configure everything in the client. |
[attachments|crushsync.png]\\ |
At line 41 removed 5 lines |
OS X:\\ |
[attachments|config_user1_osx.png]\\ |
Windows:\\ |
[attachments|config_user2_win.png]\\ |
|
At line 51 changed one line |
__Testing and Starting the Synch__ |
!!!Starting the Sync |
At line 54 changed one line |
The |
Now you can click 'Start Sync' to starting things off. It will compare your current files with the server, and look for any changes that have occurred while you were offline. |
|
Once all comparisons are done, it will sit idle in an 'Active' green window state. The realtime file monitor is watching for any changes occurring in the folder you have configured. Any changes, renames, deletes, etc will then be propagated to the CrushFTP server so that other CrushSync clients can replicate them locally. |
|
|
---- |
!!!Customizing the Sync |
---- |
|
NOTE!! You will need CrushFTP 6.4.0_81 and above for the below instructions to work correctly. |
|
You can give the client a custom name, so it doesn't have to be called CrushSync |
|
When you add the download Sync client button in the UserManager, UserName, WebInterface, Buttons section, you can specify a name for it, and the given name will be used instead of the CrushSync name. |
|
Customizations are made in the User Manager, WebInterface, custom javascript section. Add these example lines in there. |
CrushSync |
localizations.syncAppName = 'MySyncName'; |
|
It can't run as a service, but it can run at startup when you login to the user account. There is a menu option in the systray to help with that part. |
|
That is it. All references in what it downloads, the service name, the window titles, etc will be MySyncName. |
|
The manageSyncs interface is generic that it just labels itself as Manage Syncs and not CrushSync. So no changes are needed there. When you add the buttons, you can label the buttons however you like. But don't change their action values. |
|
---- |
You can install CrushSync as a service to have an unattended machine running the sync. Use a copy of the "service" folder from an installed CrushFTP machine. Modify the wrapper.conf file to the below:\\ |
|
{{{ |
wrapper.java.command=java |
wrapper.working.dir=C:\\Users\\Username\\CrushSync\\ |
wrapper.java.app.mainclass=com.crushftp.Daemon |
wrapper.console.visible=false |
wrapper.console.title=CrushSync |
|
wrapper.ntservice.name=CrushSync |
wrapper.ntservice.displayname=CrushSync |
wrapper.ntservice.description=CrushSync |
|
wrapper.tray=false |
|
wrapper.logfile.format=LPNTM\r\n |
wrapper.logfile=wrapper.log |
wrapper.logfile.maxsize=10m |
wrapper.logfile.maxfiles=10 |
|
wrapper.on_exit.0=SHUTDOWN |
wrapper.on_exit.default=RESTART |
|
wrapper.java.classpath.1=CrushSync.jar |
wrapper.java.additional.1=-Xmx512m |
}}} |
|
Then install the service with: |
{{{ |
java -jar wrapper.jar -i wrapper.conf |
}}} |
|
This assumes a CrushSync folder already exist from running the CrushSync.jnlp file one time. |
|
---- |
!!!Running on Linux |
---- |
Running via the command line is possible too.\\ |
\\ |
You need the prefs.xml file from a Windows/OSX machine first that you have launched CrushSync at least one time on.\\ |
\\ |
Copy this to the OS home folder for the user, then a subdirectory called 'CrushSync'. |
{{{ |
~/CrushSync/prefs.XML |
}}} |
\\ |
This is VERY important...you must modify this prefs.XML file changing the "clientid" in it to something unique. Every agent must have a unique client ID.\\ |
\\ |
Then copy over CrushSync.jar file too from a crush install to this same location. You will find it in your WebInterface folder, CrushSync folder.\\ |
\\ |
Now launch the daemon with:\\ |
{{{ |
java -cp ~/CrushSync/CrushSync.jar com.crushftp.Daemon |
}}} |
It will read in its prefs and connect to the server. Now you configure everything from the sync manager.\\ |