Comprehensive data protection for all workloads
Post Reply
albertwt
Veteran
Posts: 941
Liked: 53 times
Joined: Nov 05, 2009 12:24 pm
Location: Sydney, NSW
Contact:

VBM file corruption ?

Post by albertwt »

Hi People,

I'm quite confused as to why my Backup job VBM file is suddenly corrupting after migration in both place ?

I was just trying to migrate the backup directory from one drive to another due to disk space issue.

From: I need to delete this directory below but I cannot.
22/06/2016 2:34:34 PM Warning Failed to synchronize PRODBU01 - Backup Repository 9 - L Drive Details: Failed to synchronize 1 backups
Failed to synchronize 1 backups

22/06/2016 2:34:32 PM Warning Failed to import backup path L:\Backups\NAS Servers 2\NAS Servers 2.vbm Details: Unable to find storage Id = 00000000-0000-0000-0000-000000000000 for link set
Into:
22/06/2016 2:31:54 PM Warning Failed to synchronize PRODBU01 - Backup Repository 8 - K Drive Details: Failed to synchronize 1 backups
Failed to synchronize 1 backups

22/06/2016 2:31:51 PM Warning Failed to import backup path K:\Backups\NAS Servers 2\NAS Servers 2.vbm Details: Unable to find storage Id = 00000000-0000-0000-0000-000000000000 for link set
Both location are on the same server on the different Drive enclosure (different SAS drive enclosure).
Due to this issue, I cannot repoint the backup job to the new location and also roll back to the previous location, because it is missing from the dropdown list.

Before the migration, I have disabled the Backup job and then perform copy not move. This has happened to me before in the other backup job, the solution was to start Active Full backup again while keeping the old corrupted backup as safety net in case for restoration. My manager is not happy about this behaviour because I also need to clear up the disk space.

Any help would be greatly appreciated.

Thanks.


Case # 01832273
--
/* Veeam software enthusiast user & supporter ! */
nielsengelen
Product Manager
Posts: 5796
Liked: 1215 times
Joined: Jul 15, 2013 11:09 am
Full Name: Niels Engelen
Contact:

Re: VBM file corruption ?

Post by nielsengelen » 1 person likes this post

Best would be to let support handle this as one solution may not always be the correct solution for everyone.
Personal blog: https://foonet.be
GitHub: https://github.com/nielsengelen
albertwt
Veteran
Posts: 941
Liked: 53 times
Joined: Nov 05, 2009 12:24 pm
Location: Sydney, NSW
Contact:

Re: VBM file corruption ?

Post by albertwt »

Niels,

Somehow the .VBM file cannot be recreated or repaired. Hence I must abandon the old backup directory and then start full backup again tonight.

It is very annoying but yes it happens twice already in my case here this year.

Is there any updated powershell script to recreate the .VBM file myself ?
--
/* Veeam software enthusiast user & supporter ! */
Vitaliy S.
VP, Product Management
Posts: 27368
Liked: 2799 times
Joined: Mar 30, 2009 9:13 am
Full Name: Vitaliy Safarov
Contact:

Re: VBM file corruption ?

Post by Vitaliy S. » 1 person likes this post

The only script I'm aware of is this one, maybe our PowerShell community will be able to assist with writing a new script.
albertwt
Veteran
Posts: 941
Liked: 53 times
Joined: Nov 05, 2009 12:24 pm
Location: Sydney, NSW
Contact:

Re: VBM file corruption ?

Post by albertwt »

Cool, many thanks Vitaliy.

Somehow in my case here even using the updated Pwoershell below doesn't fix my issue hence I must delete everything and start again from Full Backup again:

Code: Select all

#[Veeam.Backup.Core.CCredentilasStroreInitializer]::InitLocal() to work with Lin repository

$backupName = Read-Host "Enter backup name for meta regeneration"

Add-Type -Path "C:\Program Files\Veeam\Backup and Replication\Backup\Veeam.Backup.Core.dll"
[Veeam.Backup.Common.LogFactory]::InitializeConsoleLog()

Try
{
$backup = [Veeam.Backup.Core.CBackup]::GetAll() | Where { $_.Name.Equals($backupName) } | Select -index 0

    if ($backup -eq $null) {
        throw ("There is no backup with specified name : " + $backupName)
    }
$storageAccessor = [Veeam.Backup.Core.CStorageAccessorFactory]::Create($backup)

[Veeam.Backup.Core.CCredentilasStroreInitializer]::InitLocal()

$metaUpdater = New-Object Veeam.Backup.Core.CSimpleBackupMetaUpdater
$metaEx = new-object Veeam.Backup.Core.CBackupMetaEx -ArgumentList $backup, $storageAccessor, $metaUpdater
$metaEx.GenerateAndSave()

$metaFilePath = $backup.GetMetaFilePath($storageAccessor.FileCommander)
Write-Host "Successfully saved meta for backup $($backupName) on $($storageAccessor.Name) : $($metaFilePath)"
}
Catch
{
Write-Host $_.Exception.Message
Write-Host $_.Exception.StackTrace
Write-Host $_.Exception.InnerException.Message
Write-Host $_.Exception.InnerException.StackTrace
Break
}

$Reader = [System.IO.StreamReader] $metaFilePath 
$MyString = $Reader.ReadToEnd();
$Reader.Dispose();


$removeString = 'LinkId="00000000-0000-0000-0000-000000000000"';
$index = $MyString.IndexOf($removeString);
$lengh = $removeString.Length;

$start = $MyString.Substring(0, $index);
$end  = $MyString.Substring($index + $lengh);

$clean = $start + $end;

$writer = [System.IO.StreamWriter] $metaFilePath
$writer.WriteLine($clean);
$writer.Close();
--
/* Veeam software enthusiast user & supporter ! */
Post Reply

Who is online

Users browsing this forum: Bing [Bot], Google [Bot], Semrush [Bot], Vitaliy S. and 170 guests