Veeam Setup Failure Reference (13.1.1.18)
| Field |
Detail |
| Audience |
T2 / T3 |
| Version |
1.0 |
| Last Updated |
October 2026 |
| Applies To |
Upgrading or patching a BDR to Veeam B&R 13.1.1.18 |
| Source |
HALO 1179664 |
How to use this page
When a Veeam v13 Upgrade run halts or fails, its log names the reason in one of three places:
- a gate line, before anything is installed — for example
BLOCKED BY: SystemDriveFreeSpace;
- a setup event, from Veeam's own installer result —
SETUP ERROR or event id=;
- for the patch step, PATCHDIAG: lines quoting the patch log.
Find the signal below. Setup's own logs are in C:\ProgramData\Veeam\Setup\Temp, and the upgrade script's in C:\ProgramData\DTC\Logs\VeeamUpgrade.
Completion is judged by the installed-programs entry, which reads 13.1.1.18 when done. The file version of Veeam.Backup.Service.exe stays at 13.1.0.411 after the patch, so don't use it. See Veeam Version Standard.
Setup events
| Signal |
Meaning |
Fix |
| Event 101 — system requirements |
The OS is too old. Veeam 13.1 refuses Windows 11 22H2. |
Move the BDR to 23H2 with enablement package KB5027397, which needs build 22621.2506 or later. Boards without a TPM (Supermicro X11SCL-iF) can reach 23H2 but not 24H2 or later — that needs a TPM module, an AM decision. If Windows servicing itself is damaged (DISM 0x800705b9 / 0x800f081f), the BDR needs an in-place repair upgrade first. |
| Event 103 |
Setup refuses to run as LocalSystem. |
By design — the upgrade script runs setup as the local admin through a one-shot scheduled task. If you see this, the script was bypassed. |
| Event 105 — "Failed to validate setup properties" |
Read the description. "Drive C: 32.27 GB required" means free space; "requires proactive support" means the licence. |
Free space: clear C: to 33 GB or more for a hop, 30 GB for the patch — see BDR Storage Alerts & Capacity Issues. Licence: Evaluation, Free and NFR licences need proactive support enabled — route to the AM. |
| Event 106 — "Outdated Veeam Agents" |
A registered endpoint agent is too old to upgrade. |
Endpoint Agent Blocks the BDR Upgrade. |
| Event 012 / 013 — reboot required |
A reboot is pending, often from pending file renames. |
Reboot once and re-run. The script does this itself, once only. |
| Event 113 |
VeeamBackupSvc didn't stop within setup's 300 seconds, and setup rolled back. |
The script stops the service first with a longer budget. If it still won't stop: VeeamBackupSvc Stuck Stopping or Won't Start. |
PGSQL 28000: SSPI authentication failed |
The Veeam PostgreSQL database rejects the local admin. |
Add the missing dtcadmin@<HOSTNAME> mapping to pg_ident.conf, then restart PostgreSQL — Veeam Backup & Replication Upgrade Failure. |
Gates (nothing installed yet)
| Gate |
Fix |
SystemDriveFreeSpace |
Free space on C: — 33 GB for a hop, 30 GB for the patch. The script's deep clean runs first; if it reclaims nothing, find and remove large non-Veeam files by hand. |
PendingReboot |
Reboot; the script does this once. |
LegacyChainFormat |
Legacy Backup Chain Format Blocks the Upgrade. |
VeeamPowerShell — "Failed to load System.Private.CoreLib.dll" |
PowerShell 7 is damaged. The script (v4.53+) reinstalls it from a fresh, signature-checked MSI matching the installed version. Repairing from Windows' cached copy doesn't work: large installers are cached stripped. |
CoResident — Enterprise Manager installed |
If Enterprise Manager is unused, uninstall it with STOPJOBS=true, then re-run. |
HOLDING — objects missing since baseline |
A job, repository or backup object the BDR used to protect is gone. Confirm whether it was removed on purpose before clearing the hold. |
| "Could not reach a quiet state for the install" |
A job kept running through the 30-minute drain. Re-run during business hours, outside the 22:00–04:59 S3 copy window. |
Patch step (13.1.0.411 → 13.1.1.18)
| Signal |
Meaning |
Fix |
Exit 1603 with PATCHDIAG: "We are unable to update the following files, because they are locked by an external process" |
A process outside Veeam's own services holds Veeam files while the patch runs. |
The usual holder is the Service Provider Console agent (VeeamManagementAgentSvc), which launches PowerShell with the Veeam module about every 10 seconds. The script (v4.53+) pauses it for the patch window and restores it after. If the patch still fails, list what holds Veeam's files (below) and stop that process for the run. |
$svcPids = @(Get-CimInstance Win32_Service | Where-Object { $_.ProcessId } | ForEach-Object { [int]$_.ProcessId })
Get-Process | Where-Object { $proc=$_; try { @($proc.Modules | Where-Object { $_.FileName -like "$env:ProgramFiles\Veeam\Backup and Replication\*" }).Count -gt 0 } catch { $false } } |
Select-Object Name, Id, StartTime, @{n='IsService';e={ $svcPids -contains $_.Id }} | Sort-Object IsService, Name | Format-Table -AutoSize
Anything showing IsService : False that isn't one of Veeam's own child processes is the holder.
| Version |
Date |
Author |
Change |
| 1.0 |
October 2026 |
Z. Boogher |
Initial release from every setup failure in the v13 upgrade (HALO 1179664). |