MSP360 Documentation
Articles, guides, whitepapers and other useful content for MSPs and IT Professionals
CloudBerry Backup for Linux Command Line Interface

CloudBerry Backup for Linux Command Line Interface

CloudBerry Backup command line interface allows to back up and restore files from cloud storage, edit global options, list backup plans and account, etc. Command line interface can be used for integrating backup process into production environment.CloudBerry Backup command line interface is implemented by a little tool called cbb.

Start a Terminal session and navigate to the application folder:

cd /opt/local/CloudBerry\ Backup/bin/cbb

How to Install on Linux OS

  1. For Ubuntu: sudo dpkg -i /PATH/package_name
  2. For others: sudo rpm -i /PATH/package_name

Activating CloudBerry Backup

Activate product or request trial

  1. Activate a commercial license. (Email & key are required):./cbb activateLicense -e "email" -k "license_key"(where "email" is your personal email and "license_key" is your license key that you received when buying the product).
  2. Request trial license. (Email is required):./cbb activateLicense -e "email" -t "ultimate/pro"

Offline activation

If you don't have an ability to activate CloudBerry Backup online you can use offline activation.

  1. Generate offline license request using your email and license key:./cbb activateLicense -e "email" -k "license_key" -or(where "email" is your personal email and "license_key" is your license key that you received when buying the product).As an output you will get a service key.
  2. Send the service key to You will receive the activation key by email.
  3. Activate license key./cbb activateLicense -e "email" -k "license_key" -oa "activationkey_received"
  4. The product is activated.

License commands (activateLicense)

Use the following command to find more details:

./cbb activateLicense ?

-e(mail)Email for license activation
-k(ey)License Key
-t(rial)Request trial licensepro, ultimate
-freeRequest free license
-unUser name to register free license
-orGenerate offline license request. Email & key are required. Request should be send via email to
-oaOffline license activation key. You should receive this key via email in response to offline request, or free license registration.

Release license (releaseLicense)

./cbb releaseLicenseFreeware version (200GB limit for cloud backup, 1TB limit for local backup; no compression/encryption):

./cbb activateLicense -e "email" -free -un userNamewhere: -un - user name to register freeware version.

You will get a registration key by email and the next step will be to register:

./cbb activateLicense -e "email" -free -un -oa RegistrationKey

Managing Accounts

Create account (addAccount)

First of all, you need to configure a backup storage account. Run the ./cbb addAccount command where to specify storage type (-st), its credentials and an account display name (-d):

-st storageType: AmazonS3, Azure, FileSystem, Openstack, OracleCloud, SoftLayer, Rackspace, HPCloud, HPHelion, GoogleAdd Amazon S3 cloud storage account:

./cbb addAccount -d DisplayName -st AmazonS3 -ac AccessKey -sk SecretKey -c BucketName [-bp BackupPrefix] -sslAdd Azure Blob cloud storage account:

./cbb addAccount -d DisplayName -st Azure -ac AccountName -sk SharedKey -c ContainerName [-bp BackupPrefix] -sslAdd BackBlaze B2 cloud storage account:

addAccount -d B2 -st BackBlaze -ac AccountID -ak AccessKey -c BucketNameAdd Google Cloud cloud storage account:

  • using access/secret keys:./cbb addAccount -d DisplayName -st Google -ac AccessKey -sk SecretKey -c BucketName [-bp BackupPrefix] -ssl
  • using service account (OAuth):./cbb addAccount -d DisplayName -st Google -se ServiceAccountEmail -pk PathToPrivateKeyFile -pi ProjectID -c BucketName [-bp BackupPrefix] -ssl

Add OpenStack storage account:

./cbb addAccount -d Display_Name -st Openstack <-un UserName> <-ak ApiKey> <-c BackupContainer> <-ep Endpoint> [-useInternalUrl <yes|no>] [-reg Region] [-bp BackupPrefix] <-kv no> | <-kv 2 <-tn TenantName | -ti TenantID> > | <-kv 3 [-us <yes|no><-pn project_name> | <-pi project_id>] <-dn DomainName | -di DomainID>></yes|no></yes|no>where

  • -kv is a Keystone authentication version-us is "Use scope" option that is used for Keystone version 3 only (possible values: yes / no)-reg is a region of storage datacenter

You can also add a particular OpenStack compatible storage account like OracleCloud, SoftLayer, Rackspace. HP Cloud.

Use the following commands to get more information:

./cbb addAccount -d Display_Name -st OracleCloud -hSupported regions (-reg):

  • US Commercial 1 (us1)
  • US Commercial 2 (us2)
  • APAC Commercial 1 (ap1)
  • APAC Commercial 2 (ap2)
  • EMEA Commercial 1 (em1)
  • EMEA Commercial 2 (em2)
  • EMEA Commercial 3 (em3)

./cbb addAccount -d Display_Name -st SoftLayer -hSupported regions (-reg): Amsterdam, Frankfurt, Hong Kong, London, Melbourne, Mexico, Milan, Montreal, Paris, San Jose, Sao Paolo, Sydney, Singapore, Tokyo, Toronto, US Dallas

./cbb addAccount -d Display_Name -st Rackspace -hSupported regions (-reg): US-based, UK-based.

./cbb addAccount -d Display_Name -st HPCloud -hAdd file system storage account for local backup:

./cbb addAccount -d DisplayName -st FileSystem -c Path [-bp backup_prefix]where: -bp - a backup prefix (a computer name by default). It is an advanced option that is used to identify backup for a specific computer.

Edit account (editAccount)

To edit account use the ./cbb editAccount command:

  • for Amazon S3:./cbb editAccount -d displayName [-n newDisplayName] [-ac accessKey] [-sk SecretKey] [-c BucketName] [-bp BackupPrefix] [-ssl ]
  • for Azure Blob:./cbb editAccount -d displayName [-n newDisplayName ] [-ac AccountName] [-sk SharedKey] [-c ContainerName] [-bp BackupPrefix] [-ssl ]
  • for Google Cloud:./cbb editAccount -d displayName [-n newDisplayName ] [-ac AccountName] [-sk SharedKey] [-c ContainerName] [-bp BackupPrefix] [-ssl ]
  • for OpenStack:./cbb editAccount -d displayName [-n newDisplayName] <-un UserName> <-ak ApiKey> <-c BackupContainer> <-ep Endpoint> [-useInternalUrl <yes|no>] [-reg Region] [-bp BackupPrefix] <-kv no> | <-kv 2 <-tn TenantName | -ti TenantID> > | <-kv 3 [-us <yes|no><-pn project_name> | <-pi project_id>] <-dn DomainName | -di DomainID>></yes|no></yes|no>
  • for File System:./cbb editAccount -d displayName [-n newDisplayName] [-c Path] [-bp BackupPrefix]

Delete account (deleteAccount)

To delete account use the ./cbb deleteAccount command:

./cbb deleteAccount AccountName1, AccountName2,…

List accounts (account -l)

To list accounts, use the command:

./cbb account -l

Synchronise accounts (account -sync)

Sync local database with a cloud storage account:

./cbb account -sync "accountname"

Managing Plans

Create backup plan (addBackupPlan)

To create a backup plan, use the ./cbb addBackupPlan command.

For example, you are going to:

  • backup all the files from the "/home/NAME/Documents/" directory;
  • exclude the "/home/NAME/Documents/books/" folder;
  • use compression;
  • run every workday at 23:00;
  • receive notification on completion:

./cbb addBackupPlan -n "Backup my docs" -a "myaccount" -f "/home/NAME/Documents/" -ef "/home/NAME/Documents/books/" -c yes -every week -at "23:00" -weekday "mo, tu, we, th, fr" -notification onTo get general help for the commands, run the following command:

./cbb addBackupPlanOutput:

./cbb addBackupPlan -n planName -a <accountname|accountid>[-en <yes|no>] [[-rrs <yes|no>] | [-standardIA <yes|n>]] [-sse <yes|no>] -f <pathtofile|pathtodir>-ef <pathtofile|pathtodir>[-es <yes|no>] [-c <yes|no>] [-ea <aes_128|aes_192|aes_256|des|3des_112|3des_168|no>-ep password] [-bef <yes|no>] [-purge delete_after_time -dlv <yes|no>-keep keep_versions_number] [-dl ] [[[-every [day, week, month, dayofmonth] <-workTime xx:xx-xx:xx -recurrencePeriod period | -at timeOfDay>] [-day [1..31]] [-weekday list ofWeekDays] [-weeknumber weeknumber]] | -at onceDateTime]] [-notification <erroronly|on|off>] [-subject Subject]</erroronly|on|off></yes|no></yes|no></aes_128|aes_192|aes_256|des|3des_112|3des_168|no></yes|no></yes|no></pathtofile|pathtodir></pathtofile|pathtodir></yes|no></yes|n></yes|no></yes|no></accountname|accountid>Note: the sequence of parameters is strongly fixed.

The output contains special parameters, where:

Backup Settings

  • -n - a plan name
  • -a - a display name of the backup storage account (the -n param in addAccount command)
  • -en - enable a plan after creation. Possible values: yes (default) | no
  • -rrs - use RRS. Possible values: yes | no (default)
  • -standardIA - use Standard-IA. Possible values: yes (default) | no
  • -sse - use SSE. Possible values: yes (default) | no
  • -f - file or folder to back up. To specify multiple files/folders, use -f for every file/folder.Example:-f "/home/USERNAME/Downloads/stats.txt" -f "/home/USERNAME/Downloads/WeeklyReports"
  • -ef - exclude a file or a directory from a backup procedure. To exclude more than one object, use -ef for each object.Example:-f "/home/USERNAME/Downloads/stats.txt" -f "/home/USERNAME/Downloads/WeeklyReports"-ef "/home/USERNAME/Downloads/WeeklyReports/Sunday"-ef "/home/USERNAME/Downloads/WeeklyReports/unrelated.txt"
  • -es - exclude system files from the backup procedure. Possible values: yes (default), no. The following folders will be excluded: /bin; /boot; /cdrom; /dev; /etc; /media; /lib; /lib64; /lost+found; /mnt; /opt; /proc; /run; /sbin; /srv; /tmp; /usr; /var.
  • -c - use compression. Possible values: yes, no (default).
  • -ea - enable encryption and set an encryption algorithm to use. Possible values: AES_128, AES_192, AES_256. Used only with -ep parameter.
  • -ep - encryption password. Used only with -ea parameter.Example:-ea "AES_128" -ep "qwerty123"
  • -bef - back up empty folders. Possible values: yes, no (default).

Retention Settings

  • -purge - purge versions that are older than the defined period (except the latest version). Possible values: d(day), w(week), m(month).
  • -dlv - delete the last version if it is older than the defined period. Possible values: yes, no.
  • -keep - keep a limited number of versions. Possible values: number.
  • -dl - delete files that have been deleted locally. Possible values: yes, no.
  • -dld - keep the files deleted locally for the specified number of days in case you relax the purge settings and the files become valid again. Possible values: number of days.

Example: keep only 3 file versions

-keep 3Example: keep file versions during 1 week without keeping the last version

-purge 1w -dlv

Schedule Settings

Schedule settings allow you to run backup at a certain time (-at) or to have a recurring backup (-every).

Note: Time is set in UTC:

  • -every - specify a recurring schedule. Possible values: day, week, month, dayofmonth. Two types of schedules: recurring at a certain time (use with -at) and recurring from / to time within a period (use with -workTime in format hh:mm-hh:mm and -recurrencePeriod in minutes).
  • -workTime - specify a time when a plan can be running. Format xx:xx-xx:xx. Example 1: 12:32-17:00; Example 2: 23:00-04:00; may be used for each recurring shedule, used only with -recurrencePeriod and without -at.
  • -recurrencePeriod - specify recurrence period in minutes.
  • -at - specify datetime or time of a schedule. Example: -at "16.02.2015 12:32" or -at "12:32" for each recurring schedule.
  • -every dayExample (with -at):-every day -at "12:31"Example (with -workTimeand -recurrencePeriod):-every day -workTime "12:00-16:00" -recurrencePeriod 15
  • -every week - run every week on a specified day(s) of the week. Used with the -weekday listOfWeekDaysparameter. Specify the day(s) of the week for a week schedule: "su, mo, tu, we, th, fr, sa". Use the same options to run -at or with -worktime and -recurrencePeriod.Example:-every week -at "13:00" -weekday "mo,su"
  • -every month - run every month in a specified day(only one day in a month). You need to specify -weekday and -weeknumber. Possible values: First | Second | Third | Fourth | Penultimate | Last. And the same options to run -at or with -worktime and -recurrencePeriod.Example:-every month -at "14:00" -weekday "mo" -weeknumber "Last"
  • -every dayofmonth - run every specified day in a month. You need to specify -day. Possible values: 1..31.Example:-every dayofmonth -at "03:00" -day 30
  • -r - run the plan immediately:Example:./cbb plan -r "plan_name"
  • -forceStop - stop plan if it runs for "hh:mm" minutes. Possible values: no(default), "hh:mm" minutes.
  • -runMissed - run missed scheduled plan immediately when computer start up. Possible values: yes, no (default).

Notification Settings

  • -notification - specify to receive notification email when backup fails (errorOnly) or in all cases (on). Possible values: errorOnly (default) |on.
  • -subject - specify a subject of notification email. Available macroses: %COMPUTER_NAME%, %RESULT%, %PLAN_NAME%.To set an email for notification, run the following command:./cbb option -set -notification -e "email" -u "userName"Also please note that directories whose names start with a dot are only backed up if the -es flag is specified. For instance:./cbb addBackupPlan -n "Google Backup" -a "Google Account" -f /srv/nfs -es "no" -bef

Create restore plan (addRestorePlan)

To create a restore plan use the ./cbb addRestorePlan command.

For example, you are going to restore only new files from "/" folder with sync before restore, to /home/link/workspace/testRestore/. Files are encrypted with the pass = qwert123. Run restore every day at 11:40:

./cbb addRestorePlan -n "RestorePlan" -a "myaccount" -sy yes -f "/" -ep "qwert123" -se no -ol no -de "/home/link/workspace/testRestore/" -on yes -every day -at "11:40"To get general help for the commands, run the following command:

./cbb addRestorePlanOutput:

./cbb addRestorePlan -n planName -a -en [yes|no] -sy [yes|no] -rt [LatestVersion|[PointInTime date]] -f [-ep password] [-se yes|no] [-ol yes|[no -de location] [-on yes|no] [[[-every [day, week, month, dayofmonth] <-workTime xx:xx-xx:xx -recurrencePeriod period | -at timeOfDay>] [-day [1..31]] [-weekday list OfWeekDays] [-weeknumber weeknumber] ] | -at onceDateTime] ] [-notification [errorOnly | on | off]] [-subject Subject]Note: the sequence of parameters is strongly fixed.

The output contains special parameters, where:

Restore Settings

  • -n - a plan name.
  • -a - a display name of the backup storage account (the -n param in addAccount command).
  • -en - enable a plan after it has been created. Possible values: yes (default) | no.
  • -sy - sync before restoring. Possible values: yes| no (default). You need to sync prior to restoring if you set up a restore plan on a computer that is different from the one you have run a backup on.
  • -rt - a restore type. Possible values: LastVersion (default) | PointInTime. For PointInTime you need to specify a timestamp. Example: rt PointInTime -pointintime "16.02.2015 12:32"
  • -f - restore a file or a folder. Specify a full path to the file or folder that you are going to restore. To restore multiple objects, use multiple -f parameters.Example:-f "/home/USERNAME/Downloads/file" -f "/home/USERNAME/Downloads/Folder"
  • -ep - a decryption password.
  • -se - skip existing files. Possible values: yes (default) | no.
  • -ol - restore to the original location. Possible values: yes | no.
  • -de - specify a restore destination, used only with the -ol = no.Example:-ol no -de "/home/USERNAME/anotherFolder/"
  • -on - restore only new files. Possible values: yes (default) | no.

Schedule settings

The schedule settings for the restore process are the same as for the backup process.

Notification settings

The notification settings for the restore process are the same as for the backup process.

Plan commands

You can also delete, enable/disable a plan, list plans.

To list all the existing plans, use the ./cbb plan -l command.

To get details for a particular plan, use the ./cbb getPlanDetails -n PlanName command.

To run a plan, use the ./cbb plan -r PlanName command.

To stop a plan, use the ./cbb plan -s PlanName command.

To get details how to edit a backup plan, use the ./cbb editBackupPlan -h command.

To get details how to edit a restore plan, use the ./cbb editRestorePlan -h command.

To delete a plan, use the ./cbb deletePlan -n PlanName command, where:

-n - a plan name.

To enable/disable a plan, use the ./cbb changePlanState -n PlanName -s on | off command, where:

-n - a plan name.

-s - plan state. Possible values: on | off.

Configuration commands

Bandwidth settings (option -set bw | bwl)

To set bandwidth limit for backup, use the following command:

for cloud backup: ./cbb option -set bw limitValue

for local backup: ./cbb option -set bwl limitValue

Note: a bandwidth limit is applied for each backup plan.

Web interface (option -set wa)

There is an option to run web interface for more convenient control on the app.

Authentication - by Linux user/password.

To enable it with default options: ./cbb option -set wa -http on

The web interface will be available over HTTP on x.x.x.x:43210

For more options: ./cbb option -set wa

cbb option -set wa [-http on|off] [-http_port port] [-https on|off] [-https_port port]

  • -http on|off - turn on/off http connection to web access
  • -http_port port - set http connection port, default: 43210
  • -https on|off - turn on/off secure connection to web access
  • -https_port port - set secure connection port, default: 43211

Behavior of backup for symlinks can be set to meet:

The command to select the behavior: ./cbb option -set symlinksbackup -mode mode_name


  • Ignore: Do not back up symlinks
  • SymlinkOnly: Back up symlinks only
  • CurrentPlace: Back up original files instead of symlinks
  • OriginalPlaces: Back up original files in their original locations

Logging settings

There is a number of settings related to logging - verbosity ("mode"), rotation period and location ("path") where the logs are stored.

The command to change these settings:

cbb option -set logging -mode [Disable|Low|High|Debug] -rotation [days] -path [path]

  • -mode : Possible values: Disable, Low(default), High, Debug
  • -rotation : Number of days to purge log files, the default is 3 days
  • -path Path to logs, the default is "/opt/local/CloudBerry Backup/logs"


Send log (sendLog)

Use the following command to report an issue or send any feedback:

./cbb sendLog -u username -e email -m messagewhere:

  • -u - a user name (any)
  • -e - an email address to which the log entry should be sent.
  • -m - a short description of the issue/feedback


./cbb sendLog -u "John Smith" -e "" -m "There is an error during creating backup plan..."To get general help for the commands, run the ./cbb command.

Integrated help usage (-h)

Use the following command to find more details for supported commands:


How to Uninstall

For Ubuntu: sudo dpkg -r cloudberry-backup

For CentOS: sudo rpm -e cloudberry-backup

Not found what you're looking for?

Contact our customer care team here.