Syncrify » Knowledge base

Document information

Document ID: 1400
Subject: Using Syncrify client from command line
Creation date: 6/30/10 1:50 PM
Last modified on: 10/2/18 11:17 AM


Using the Syncrify client from command line

When using the Syncrify client on platforms other than Windows, it may be convenient to use the command line interface to run your backup instead of using the GUI interface. If you are connecting to a Linux/UNIX machine remotely using SSH, you may not have a choice of using the GUI client. In such cases, you don't have a choice but to use the command line interface.

This section demonstrates how to use the command line interface.

Prerequisites

  • Java run-time must be installed on the machine. If you downloaded the Syncrify Client with installer, check $INTSTALL_DIR/jre/bin/java to ensure a file exists. Otherwise, download java from http://java.com
  • Java must be on your machine path or use the absolute path to run java

Downloading Client

Download the Syncrify Client for Linux from here. There are two kinds of downloads for Linux:

  • Service based - typically gets installed in /opt/SyncrifyClient folder, which contain Loader.jar file.
  • Jar File - downloaded file will be SyncrifyClient.jar
The following steps assumes you used the Jar File. The file name in the following examples will change if you decide to use the service.
java -jar SyncrifyClient.jar ...
TO
java -jar Loader.jar ...

Command line usage

java -jar SyncrifyClient.jar -console ProfileName.syncrify Preferred method
The above command will run a backup.


Creating profile from console

You can create a new profile using the following command from console:
java -jar SyncrifyClient.jar -console -createProfile


This will prompt you for the following questions.

Profile name: Name of the profile. We recommend you use a one word name without spaces. Assume you use MyBackup for this value, you can issue the following command to run a backup

java -jar SyncrifyClient.jar MyBackup.syncrify
Server URL: Refers to the URL where your server is running. For example:

http://backup.YourCompany.com:5800 OR
https://backup.YourCompany.com
Login email: Email address used for user's login
Password: User's password
Path: Refers to the path that you want to backup. For example:

/users/home/john/Documents
Filter Specify a filter string. Refer to this document for more information
Additional path: Specify additional folders/files to backup. You can specify as many paths as you like. Hit ENTER without typing any path when done.
Excluded path: Enter the path that you want to exclude from the list
Compress data: Type Y for yes and N for no. When set to Y, client will compress data before sending it to the server
Delete files: Type Y for yes and N for no. When set to Y, server will delete files if they are deleted from the client.
Backup locked files Type Y for yes and N for no. When set to Y, VSS services are used on Windows. This parameter is only meaningful on Windows. It has no effect on other operating systems.
Enable versioning Versioning is enabled if set to Y
Send email: An email is sent with a backup log
Email recipient Address that gets the email. If blank, login email is used for the recipient's address
Encryption key Password used for encryption

Options

Most options are in a name-value format, except for the name of the profile. The parameter name starts with a minus (-) sign followed by its name, a space and then its value. For example:

-sF /path/to/a/folder

Option Description
-console This option makes Syncrify client run in console mode. If this is missing every other option will be ignore and Syncrify client will run in its default GUI or web mode
-sF Selected Folder. Specifies one folder location that you want to backup or restore. This parameter must be accompanied by -tF
-tF Top Level Folder. Specifies the top-level folder where the selected folder is located. This parameter must be accompanied by -sF. The -sF and -tF parameters are only valid if you are running backup/restore on an existing profile and just want to run a backup on a specific folder. This is equivalent of backing up a selected folder specified here using console.

Refer to example 2 below.
-oD Backup Direction. This specifies the direction for backup and will overwrite the values specified in the profile. Possible values are:
  • c2s Client-To-Server
  • s2c Server-To-Client
  • tws Two-way-sync
-itools Runs in interactive mode, allowing users to:
  • View/modify existing profiles
  • Encrypt/decrypt files
-skipRedir By default, messages sent to STDOUT and STDERR are sent to files in the $DATA_FOLDER\logs directory. Use -skipRedir to send console messages to screen instead of redirecting them to files.

Examples

An important piece of information to keep in mind is the use of -console parameter. When this parameter is missing, Syncrify will display a GUI window showing a status bar. -console parameter is very useful when you do not have the GUI interface available, which is typically the case on Linux and Unix machines.

Example 1

Use the following example to run a backup based on a pre-created profile file. This is the preferred method of running backup.
java -jar SyncrifyClient.jar -console myProfile.syncrify
The above example assume you have a pre-created profile called myProfile and want to run it through command line.

Example 2

Use the following example to run a backup based on a pre-created profile file. This is the preferred method of running backup.
java -jar SyncrifyClient.jar -console myProfile.syncrify -tF /user/home/jack/Desktop -sF /user/home/jack/Desktop/Pictures/NewYork
This example runs a profile called myProfile and will only backup files in /user/home/jack/Desktop/Pictures/NewYork folder.

Example 3

Use the following example to run a backup based on a pre-created profile file and use a specific folder for TEMP.
java -Djava.io.tmpdir=/opt/ATempFolder -jar SyncrifyClient.jar -console  myProfile.syncrify
The above example a backup is run against myProfile and the client will use /opt/ATempFolder to store temporary files.

Example 4

The following example runs Syncrify Client in interactive mode.
java -jar SyncrifyClient.jar -console -itools

Example 5

Use the following example to run a selective restore on a folder.
java -jar SyncrifyClient.jar -console myProfile.syncrify -oD s2c -tF /user/home/jack/Desktop -sF /user/home/jack/Desktop/Pictures/NewYork
This example runs a profile called myProfile and will only restore files in /user/home/jack/Desktop/Pictures/NewYork folder.
Watch a short video demonstrating command line selective restore.

Capturing Exit Codes

Often users want to capture the exit code returned by Syncrify, which is useful if you are running Syncrify client from a script and want to know if it ran successfully. Syncrify returns the following exit code when it is run in console mode.
0
Unknown error - Syncrify client will never return a 0
1
Backup ran successfully
2
Backup ran with errors
3
Backup did not run at all
100
Invalid parameters
Note:
Exit codes are only returned when running Syncrify client in console mode. They are not returned by BackupClient.exe file on Windows.

Communicating with Background Service

A service constantly runs in the background on machines where Syncrify Client is installed. Staring v5.2 of Syncrify, you can communicate with that service using command line.

Following table lists the commands available to communicate with the server

CommandDescription
java -jar SyncrifyClient.jar -talkToService

Connects to the service interactively as if you're connecting from a telnet client. Once connected, type h to get a list of available commands.

Using this method you could also communicate with a running instance of Syncrify Client. This is done by specifying a different TCP/IP port using the -tPort parameter. For example, the first instance of Syncrify Client listens on 53110, the second on 53111 and so on.

java -jar SyncrifyClient -findPermissionIssues ProfileName.syncrify
Connects to the service, which traverses every top-level folder for the given profile to see if there are any permission problems in the profile. By default, this method only checks folder access. Use -includeFiles as an argument to check file-level permissions.

Note

On Windows use C:\ProgramData\SyncrifyData\reqLibs\clientRT.jar instead of SyncrifyClient.jar.





Add a comment to this document

Do you have a helpful tip related to this document that you'd like to share with other users?

Important: This area is reserved for useful tips. Therefore, do not post any questions here. Instead, use our public forums to post questions.

Navigation

Social Media

Powered by 10MinutesWeb.com