Synchronization Server Documentation Index
Command-Line Tool Reference Home

backup

Description
Examples
Arguments

Description

Back up one or more Synchronization Server backends.

Each backend backup is stored in a separate backend backup directory. A backend backup directory may contain multiple backups of the backend. Each backend backup directory contains a backup.info file providing information about each backup in the directory and an archive file for each backup. The name of the archive file includes both the backend ID and the backup ID. The backup ID may be provided to the backup command, or an ID is generated from a current timestamp.

Backups may be full or incremental. The archive file for incremental backups contains the incremental changes since a previous backup. Each backup can be optionally compressed, encrypted, hashed or signed. A backup taken on one system can be restored on another sytem. This is often the easiest way to initialize a new replica.

This tool features both an offline mode of operation as well as the ability to schedule an operation to run within the Synchronization Server's process. To schedule an operation supply LDAP connection options that allow this tool to communicate with the server through its task interface. Tasks can be scheduled to run immediately or at a later time (see Task Scheduling Options below). Once scheduled, tasks can be managed using the manage-tasks tool.

Examples

Back up all backends in the Synchronization Server into separate directories under the directory 'backups'. Each backend backup is named using the backend ID. However, a backup ID is not specified, so each backup is assigned an ID generated from a current timestamp:
backup --backupDirectory backups --backUpAll


Create a full backup of the userRoot backend with ID 'monday' in the directory 'backups/userRoot':
backup --backupDirectory backups/userRoot --backendID userRoot \
     --backupID monday


Create an incremental backup of the userRoot backend in the directory 'backups/userRoot' using the backup with ID 'monday' as the source:
backup --backupDirectory backups/userRoot --backendID userRoot --incremental \
     --incrementalBaseID monday


Back up all backends in the Synchronization Server running on host 'server1' at port 389:
backup --task --hostname server1 --port 389 \
     --bindDN uid=admin,dc=example,dc=com --bindPassword password \
     --backupDirectory backups --backUpAll

For examples and help with LDAP options see LDAP Option Help. For help with SASL authentication, see SASL Option Help

Arguments

-V
--version

Description Display Synchronization Server version information

-H
--help

Description Display general usage information

--help-ldap

Description Display help for using LDAP options

--help-sasl

Description Display help for using SASL options

--help-debug

Description Display help for using debug options
Advanced Yes

-Z
--useSSL

Description Use SSL for secure communication with the server

-q
--useStartTLS

Description Use StartTLS to secure communication with the server

--useNoSecurity

Description Use no security when communicating with the server

-h {host}
--hostname {host}

Description Synchronization Server hostname or IP address
Default Value localhost
Required No
Multi-Valued No

-p {port}
--port {port}

Description Synchronization Server port number
Default Value 389
Required No
Multi-Valued No

-D {bindDN}
--bindDN {bindDN}

Description DN used to bind to the server
Default Value cn=Directory Manager
Required No
Multi-Valued No

-w {bindPassword}
--bindPassword {bindPassword}

Description Password used to bind to the server
Required No
Multi-Valued No

-j {bindPasswordFile}
--bindPasswordFile {bindPasswordFile}

Description Bind password file
Required No
Multi-Valued No

-o {name=value}
--saslOption {name=value}

Description SASL bind options
Required No
Multi-Valued Yes

-X
--trustAll

Description Trust all server SSL certificates

-P {trustStorePath}
--trustStorePath {trustStorePath}

Description Certificate trust store path
Required No
Multi-Valued No

-T {trustStorePassword}
--trustStorePassword {trustStorePassword}

Description Certificate trust store PIN
Required No
Multi-Valued No

-U {path}
--trustStorePasswordFile {path}

Description Certificate trust store PIN file
Required No
Multi-Valued No

-K {keyStorePath}
--keyStorePath {keyStorePath}

Description Certificate key store path
Required No
Multi-Valued No

-W {keyStorePassword}
--keyStorePassword {keyStorePassword}

Description Certificate key store PIN
Required No
Multi-Valued No

-u {keyStorePasswordFile}
--keyStorePasswordFile {keyStorePasswordFile}

Description Certificate key store PIN file
Required No
Multi-Valued No

-N {nickname}
--certNickname {nickname}

Description Nickname of the certificate for SSL client authentication
Required No
Multi-Valued No

--useAdministrativeSession

Description Attempt to use an administrative session to have operations processed on a dedicated pool of worker threads. This may be useful when trying to diagnose problems in a server that is unresponsive because all normal worker threads are busy processing other requests

--propertiesFilePath {propertiesFilePath}

Description Path to the file that contains default property values used for command-line arguments
Required No
Multi-Valued No

--usePropertiesFile

Description Specify that a properties file will be used to get default command-line argument values

--script-friendly

Description Use script-friendly mode

--task

Description Indicates that this tool should be invoked as a task which runs inside the Synchronization Server rather than as a separate process. At present, this argument is optional, but in a future release it may be required for running as a task

-t {startTime}
--start {startTime}

Description Indicates the date/time, expressed in format 'YYYYMMDDhhmmss', when the operation starts when scheduled as a server task. A value of '0' causes the task to be scheduled for immediate execution. When this option is specified, the operation is scheduled to start at the specified time, after which this utility will exit immediately
Required No
Multi-Valued No

--completionNotify {emailAddress}

Description Email address of a recipient to be notified when the task completes. This option may be specified more than once
Required No
Multi-Valued Yes

--errorNotify {emailAddress}

Description Email address of a recipient to be notified if an error occurs when this task executes. This option may be specified more than once
Required No
Multi-Valued Yes

--dependency {taskID}

Description ID of a task upon which this task depends. A task will not start execution until all its dependencies have completed execution
Required No
Multi-Valued Yes

--failedDependencyAction {action}

Description Action this task will take should one of its dependent tasks fail. The value must be one of the following: PROCESS,CANCEL,DISABLE. If not specified, the default value is CANCEL
Required No
Multi-Valued Yes

-Q
--quiet

Description Use quiet mode

-n {backendName}
--backendID {backendName}

Description Backend ID for the backend being archived
Required No
Multi-Valued Yes

-a
--backUpAll

Description Back up all backends in the server

-I {backupID}
--backupID {backupID}

Description Use the provided identifier for the backup
Required No
Multi-Valued No

-d {backupDir}
--backupDirectory {backupDir}

Description Path to the target directory for the backup file(s)
Required Yes
Multi-Valued No

-i
--incremental

Description Perform an incremental backup rather than a full backup

-B {backupID}
--incrementalBaseID {backupID}

Description Backup ID of the source archive for an incremental backup
Required No
Multi-Valued No

-c
--compress

Description Compress the backup contents

-y
--encrypt

Description Encrypt the backup. This option may only be used when running as a task

-A
--hash

Description Generate a hash of the backup contents

-s
--signHash

Description Sign the hash of the backup contents. This option may only be used when running as a task

--logFilePath {logFilePath}

Description Echo the console output to the specified log file, instead of the default '/logs/tools/ds-tool.log' file
Required No
Multi-Valued No