Add-VBRBackupCopyJob

Short Description

Creates a backup copy job.

Product Edition: Standard, Enterprise, Enterprise Plus, Veeam Universal License

Syntax

This cmdlet provides the following parameter sets:

  • DirectOperation

    Add-VBRBackupCopyJob [-Name <String>] [-Description <String>] -Mode <VBRBackupCopyJobMode>

    [-Backup <VBRBackup[]>] [-BackupJob <CBackupJob[]>] [-SourceRepository <CBackupRepository[]>]

    [-TargetRepository <CBackupRepository>] [-DirectOperation] [-IgnoreLocation]

    [-NotificationOptions <VBRNotificationOptions>] [-StorageOptions <VBRBackupCopyJobStorageOptions>]

    [-BackupWindowOptions <VBRBackupWindowOptions>] [-ScheduleOptions <VBRServerScheduleOptions>]

    [-RPOWarningOptions <VBRRpoNotificationOption[]>] [-ScriptOptions <VBRJobScriptOptions>]

    [-HealthCheckOptions <VBRHealthCheckOptions>] [-EnableTransactionLogCopy]

    [-GFSOptions <VBRComputerGFSOptions>] [-RetentionType <VBRRetentionType>] [-RetentionNumber <Int32>]

    [-ProcessLatestAvailablePoint] [<CommonParameters>]

  • WanAccelerator

    Add-VBRBackupCopyJob [-Name <String>] [-Description <String>] -Mode <VBRBackupCopyJobMode>

    [-Backup <VBRBackup[]>] [-BackupJob <CBackupJob[]>] [-SourceRepository <CBackupRepository[]>]

    [-TargetRepository <CBackupRepository>] -SourceAccelerator <CWanAccelerator>

    [-TargetAccelerator <CWanAccelerator>] [-IgnoreLocation] [-NotificationOptions <VBRNotificationOptions>]

    [-StorageOptions <VBRBackupCopyJobStorageOptions>] [-BackupWindowOptions <VBRBackupWindowOptions>]

    [-ScheduleOptions <VBRServerScheduleOptions>] [-RPOWarningOptions <VBRRpoNotificationOption[]>]

    [-ScriptOptions <VBRJobScriptOptions>] [-HealthCheckOptions <VBRHealthCheckOptions>]

    [-EnableTransactionLogCopy] [-GFSOptions <VBRComputerGFSOptions>] [-RetentionType <VBRRetentionType>]

    [-RetentionNumber <Int32>] [-ProcessLatestAvailablePoint] [<CommonParameters>]

Detailed Description

This cmdlet creates a new backup copy job.

You can use backups, backup jobs, repositories or backup infrastructure as a source for the backup copy job.

You can transfer data in the following ways:

  • Using WAN accelerators. This mode is recommended for off-site backups.

    To create and run a backup copy job using WAN accelerators you need to have source and target WAN accelerators created. Run the Add-VBRWANAcceleratorCreates a new WAN accelerator. cmdlet to create a WAN accelerator. WAN optimization is available only in Veeam Backup & Replication Enterprise Plus, Veeam Universal License Edition.

  • Directly. With this method, the job sends the data directly to the target backup repository without performing data deduplication. This mode is recommended for on-site backups, or off-site backups using fast connections.

Use an appropriate parameter set for each way.

Parameters

Parameters

Parameter

Description

Type

Required

Position

Accept Pipeline Input

Backup

Specifies the array of backups. The cmdlet will add these backups as source to the backup copy job.

You can specify only the array of the following backups:

  • EC2 instance backups.
  • Azure backups.
  • Google Cloud VM instance backups.

Accepts the VBRBackup[] object. To get this object, run the Get-VBREC2BackupReturns EC2 instance backups., Get-VBRAzureComputeBackupReturns Azure backups. or Get-VBRGoogleCloudBackupReturns backups of Google Cloud VM instances. cmdlets.

VBRBackup[]

False

Named

True (ByPropertyName)

BackupJob

Specifies an array of jobs. The cmdlet will add these jobs as source to the backup copy job.

You can specify the array of the following jobs:

  • Backup jobs
  • Replication jobs
  • File copy jobs
  • VM Copy jobs
  • Object storage backup jobs

Accepts the following objects:

  • CBackupJob[].

    Run the Get-VBRJobReturns existing jobs. cmdlet to get this object.

  • VBRComputerBackupJob[].

    Run the Get-VBRComputerBackupJobReturns Veeam Agent backup jobs and Veeam Agent backup policies. cmdlet to get this object.

  • VBREPJob[].

    Run the Get-VBRJobReturns existing jobs. cmdlet to get this object.

CBackupJob[]

False

Named

True (ByPropertyName)

BackupWindowOptions

Specifies a time interval within which a backup copy job can start.

VBRBackupWindowOptions

False

Named

False

Description

Specifies a description for a backup copy job.

String

False

Named

False

DirectOperation

Defines that a backup copy job will send the data directly to the target backup repository without performing data deduplication.

SwitchParameter

True

Named

False

EnableTransactionLogCopy

Defines that a backup copy job will process transaction logs of the source job.

SwitchParameter

False

Named

False

GFSOptions

Specifies a GFS retention. The cmdlet will create a backup copy job with the specified policy.

Accepts the VBRComputerGFSOptions object. To get this object, run the New-VBRComputerGFSOptionsDefines settings of GFS retention for Veeam Agent backup jobs. cmdlet.

VBRComputerGFSOptions

False

Named

False

HealthCheckOptions

Specifies the health check schedule. The cmdlet will create a file backup job with this health check schedule.

Accepts the VBRHealthCheckOptions object. To create this object, run the New-VBRHealthCheckOptionsDefines the health check schedule options. cmdlet.

VBRHealthCheckOptions

False

Named

False

IgnoreLocation

Defines that the job will be created even if original and target computer locations do not match.

If you do not specify this parameter and locations are different, the job will not start.

SwitchParameter

False

Named

False

Mode

Specifies a backup copy job mode: Periodic or Immediate.

VBRBackupCopyJobMode

True

Named

False

Name

Specifies the name you want to assign to the backup copy job.

String

False

Named

False

NotificationOptions

Specifies notification options of a backup copy job.

Accepts the VBRNotificationOptions object. To create this object, run the New-VBRNotificationOptionsCreates new job notification options. cmdlet.

VBRNotificationOptions

False

Named

False

ProcessLatestAvailablePoint

Defines that the most recent restore point will be processed instead of waiting for the most current backup file to become available.

SwitchParameter

False

Named

False

RetentionNumber

For the RetentionType set to the RestoreDays property.

Specifies a number of days for which you want to store backup files in the target location.

Default: 7 days.

Int32

False

Named

False

RetentionType

Specifies the retention type for a backup copy job managed by the Veeam Backup server. You can specify one of the following types:

  • RestorePoints
  • RestoreDays

VBRRetentionType

False

Named

False

RPOWarningOptions

Specifies an array of the number of hours when data must be copied from the source repository to the target repository.

Default: 1.

Accepts the VBRRpoNotificationOption[] object. To create this object, run the New-VBRRPONotificationOptionDefines RPO notification settings. cmdlet.

VBRRpoNotificationOption[]

False

Named

False

ScheduleOptions

Specifies schedule options. The cmdlet will create a backup job with these schedule options.

Accepts the VBRServerScheduleOptions object. To create this object, run the New-VBRServerScheduleOptionsCreates the schedule for jobs. cmdlet.

VBRServerScheduleOptions

False

Named

False

ScriptOptions

Specifies pre-job and post-job script options for a backup copy job. The cmdlet will create the job with these settings.

Accepts the VBRJobScriptOptions object. To create this object, run the New-VBRJobScriptOptionsCreates new job script options. cmdlet.

VBRJobScriptOptions

False

Named

False

SourceAccelerator

Specifies the WAN accelerator on the source side.

Remember to set the pair of source and target WAN accelerators.

Accepts the CWanAccelerator object. To get this object, run the Get-VBRWANAcceleratorReturns WAN accelerators. cmdlet.

CWanAccelerator

True

Named

False

SourceRepository

Specifies an array of source backup repositories.

Accepts the CBackupRepository[] object. To create this object, run the Get-VBRBackupRepositoryReturns a list of backup repositories. cmdlet.

CBackupRepository[]

False

Named

True (ByPropertyName)

StorageOptions

Specifies the storage settings of the backup repository. The cmdlet will create a backup copy job with these settings.

Accepts the VBRBackupCopyJobStorageOptions object. To create this object, run the New-VBRBackupCopyJobStorageOptionsDefines storage settings for Veeam Agent backup copy jobs. cmdlet.

VBRBackupCopyJobStorageOptions

False

Named

False

TargetAccelerator

Specifies the WAN accelerator on the target side.

Remember to set the pair of source and target WAN accelerators.

Accepts the CWanAccelerator object. To get this object, run the Get-VBRWANAcceleratorReturns WAN accelerators. cmdlet.

CWanAccelerator

False

Named

False

TargetRepository

Specifies a target backup repository. The cmdlet will copy backups to this repository.

Accepts the CBackupRepository object. To get this object, run the Get-VBRBackupRepositoryReturns a list of backup repositories. cmdlet.

CBackupRepository

False

Named

False

<CommonParameters>

This cmdlet supports Microsoft PowerShell common parameters. For more information on common parameters, see Microsoft Docs.

Output Object

The cmdlet returns the VBRBackupCopyJob object that contains settings of backup copy jobs.

Examples

Add-VBRBackupCopyJobExample 1. Creating Backup Copy Job Which Transfers Data Directly

This command creates a backup copy job that will transfer data directly.

Add-VBRBackupCopyJob -Mode Immediate -DirectOperation -Name CopyJob1

Add-VBRBackupCopyJobExample 2. Creating Backup Copy Job Which Transfers Data Using WAN Accelerators

This example shows how to create a backup copy job that will transfer data over WAN accelerators.

$wansource = Get-VBRWANAccelerator

$wantarget = Get-VBRWANAccelerator

Add-VBRBackupCopyJob -Mode Immediate -SourceAccelerator $wansource -TargetAccelerator $wantarget -Name CopyJob1

Perform the following steps:

  1. Run the Get-VBRWANAcceleratorReturns WAN accelerators. cmdlet. Save the result to the $wansource variable.
  2. Run the Get-VBRWANAcceleratorReturns WAN accelerators. cmdlet. Save the result to the $wantarget variable.
  3. Run the Add-VBRBackupCopyJob cmdlet. Specify the following settings:

    • Set the Immediate value as the Mode parameter value.
    • Set the $wansource variable as the SourceAccelerator parameter value.
    • Set the $wansource variable as the TargetAccelerator parameter value.
    • Specify the Name parameter value.

Add-VBRBackupCopyJobExample 3. Creating Veeam Agent Backup Copy Job to Transfer Data Directly

This example shows how to create a Veeam Agent backup copy job that will transfer data directly from the source backup repository to the target backup repository.

$repository = Get-VBRBackupRepository -Name "Repository 05"

$job = Get-VBRComputerBackupJob -Name "Agent backup job 05"

Add-VBRBackupCopyJob -OSPlatform Windows -DirectOperation -Name "Agent Backup Copy 05" -BackupJob $job -Repository $repository

Perform the following steps:

  1. Run the Get-VBRBackupRepositoryReturns a list of backup repositories. cmdlet. Specify the Name parameter value. Save the result to the $repository variable.
  2. Run the Get-VBRComputerBackupJobReturns Veeam Agent backup jobs and Veeam Agent backup policies. cmdlet. Specify the Name parameter value. Save the result to the $job variable.
  3. Run the Add-VBRBackupCopyJob cmdlet. Specify the following settings:

    • Specify the OSPlatform parameter value.
    • Provide the DirectOperation parameter.
    • Specify the Name parameter value.
    • Set the $job variable as the BackupJob parameter value.
    • Set the $repository variable as the Repository parameter value.

Get-VBRWANAcceleratorReturns WAN accelerators.

Page updated 2026-08-19

Page content applies to build 13.1.1.18