Skip to main content

Did you know that there is a very useful Veeam tool to validate the integrity of your backups? :relieved:

 

In some cases, a backup can get corrupted due to accidental changes in the backup file data. For example, the file can be damaged after transfer over the network or from hardware failures on the backup storage side. With Veeam Backup Validator, you can quickly verify the integrity of any backup file, without extracting the VM data from the archive.

Veeam Backup Validator is a command-prompt CRC check utility that tests a backup at the file level. For integrity validation, Veeam Backup Validator uses the checksum algorithm. When Veeam Backup & Replication creates a backup of a VM, it calculates a checksum for every data block in the backup file and attaches these checksums to the data blocks. Veeam Backup Validator re-calculates checksums for data blocks and compares them against the initial checksum values. If the results match, the backup file is viable. This works similarly to the backup file integrity check performed at SureBackup.

Veeam Backup Validator is located in the installation folder of Veeam Backup & Replication — by default, %ProgramFiles%\Veeam\Backup and Replication\Backup\Veeam.Backup.Validator.exe.

If the default path was changed, you can find the actual path in the registry value:  HKEY_LOCAL_MACHINE\SOFTWARE\Veeam\Veeam Backup and Replication] CorePath.

 

:diamonds: Working with Veeam Backup Validator

 

You can run the utility from the command prompt on the backup server, the machine on which Veeam Backup & Replication is installed.

To run Veeam Backup Validator, an account with administrative rights is required.

To display Veeam Backup Validator help information, run the following command:

Veeam.Backup.Validator /?

  • In the Parameters section, you will see the list of all possible parameters and their descriptions
  • In the Examples section, you will see the usage examples for each of these parameters:

Working with Veeam Backup Validator

 

:diamonds: Validating Content of Backup File

 

Syntax

The following command validates for integrity the content of all VMs or selected VMs in the specified backup:

Veeam.Backup.Validator.exe /backup:backupname|backupid [/vmname:vmname]

   [/point:pointid] [/date:pointdate] [/time:pointtime] [/silence]

   [/skip] [/report:reportpath [/format:xml|html]]

The following command validates for integrity the content of VMs in the specified backup file:

Veeam.Backup.Validator.exe /file:backupfile{1..*} [/username:username /password:password] [/vmname:vmname]

[/silence] [/skip] [/report:reportpath [/format:xml|html]]

 

:raised_hand:IMPORTANT!

Veeam Backup Validator utility does not work with backups stored in scale-out backup repositories.

 

:diamonds: Parameters

 

 

* You can get IDs of backup jobs and restore points from the Veeam Backup & Replication database, for example, using scripts or using Management Studio.

 

:bulb:Example 1

 

This command validates the exch01 VM in the Exchange Backup Job file.

Veeam.Backup.Validator /backup:"Exchange Backup Job" /vmname:exch01

Validating Content of Backup File 

:bulb: Example 2

 

This command validates all VMs in the Exchange Backup Job file created on December 18, 2018 around 12:00 AM.

Veeam.Backup.Validator /backup:"Exchange Backup Job"/date:12.18.2018 /time:12:00

Validating Content of Backup File

 

 

Great tool, I did not know! Thanks for sharing!


Wow, nice, a CLI tool - so you can use it in a script…

Thank you for sharing...


Thank you for this post ! If you don’t want to use it via CLI then check out my PowerShell GUI script which I created for the Veeam Backup Validator.

Veeam Backup Validator PowerShell GUI


Thank you for this post ! If you don’t want to use it via CLI then check out my PowerShell GUI script which I created for the Veeam Backup Validator.

Veeam Backup Validator PowerShell GUI

ohhhhh it's very cool !!! Thanks @falkob :nerd:


Super tool @falkob , thank you


Thanks for Sharing.  How long does the validator take to complete vs health check on a large backup jobs? 1T+ on size for example.  


Thanks for this sharing


Thanks for Sharing.  How long does the validator take to complete vs health check on a large backup jobs? 1T+ on size for example.  

I don’t think there is any significant time difference unless issues are found as the health check will try to fetch fresh blocks of data from the production datastore to replace corrupted blocks.


Is it possible to copy only specific files over to use Veeam Validator on a computer that doesn’t have VBR installed? My Veeam repo server is at a different location than the VBR server so I don’t want to install another VBR instance just to use the validator tool.


Thank you for sharing. We learn every day! With this solution (approach), would you eliminate the best practice for occasionally testing backups to ensure businesses can retrieve its data and continue operations in time of a disaster etc. 

This approach verifies that your backups actually contain your data (integrity). Seems with the Veeam validator solution, one can be rest assured? 
 

What do you think?


@eprieto : Thanks for sharing buddy !


Is there an alternative solution for validating backups that are stored in a scale-out repo? 


Dear All,

I would like to fetch the restore point for the specific VM Name/Job Name. anyone know how to create query on my request.

 

Kind Regards,
Karthik Natarajan


Veeam validator already helped me a lot !! Thanks to share with us !!


Comment