Hello Gurus! I have been tasked with setting up a test Exchange server and running in to an issue. A little back story. I did have a working Exchange 2019 server running last year, but we were hit with a Ransomware attack and decided not to restore that server. Fast forward to earlier this month. I created a new Exchange 2019 server and was working perfectly UNTIL the last patch Tuesday updates which broke Secure Boot with the VM and Server 2022. I did not know about the bug until after I had deleted the VM. Now I am trying to set everything up again, and when the Setup get's to step 7 I see this error.
Error: The following error was generated when "$error.Clear(); if ( ($server -eq $null) -and ($RoleIsDatacenter -ne $true) ) { Update-RmsSharedIdentity -ServerName $RoleNetBIOSName } " was run: "Microsoft.Exchange.Data.DataValidationException: Database is mandatory on UserMailbox. at Microsoft.Exchange.Data.Directory.ADDataSession.Save(ADObject instanceToSave, IEnumerable`1 properties, Boolean bypassValidation) at Microsoft.Exchange.Data.Directory.Recipient.ADRecipientObjectSession.Save(ADRecipient instanceToSave, String callerFilePath, Int32 callerFileLine, String memberName) at Microsoft.Exchange.Management.Deployment.UpdateRmsSharedIdentity.Link() at Microsoft.Exchange.Management.Deployment.UpdateRmsSharedIdentity.InternalProcessRecord() at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1() at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)"
Can someone shed some light on how to resolve this? Many many thanks in advance!!
EDIT:
Did an uninstall, rebooted and when through the setup process aain (prepare schema etc). Now getting this error.
Error:
The following error was generated when "$error.Clear();
$feVdirName = "PowerShell (Default Web Site)";
$beVdirName = "PowerShell (Exchange Back End)";
$vdirName = "PowerShell";
$InternalPowerShellUrl="http://" + $RoleFqdnOrName + "/powershell";
$vdir = get-PowerShellVirtualDirectory -ShowMailboxVirtualDirectories -server $RoleFqdnOrName -DomainController $RoleDomainController | where { $_.Name -eq $beVdirName };
if ($vdir -eq $null)
{
new-PowerShellVirtualDirectory $vdirName -Role Mailbox -DomainController $RoleDomainController -BasicAuthentication:$false -WindowsAuthentication:$true -RequireSSL:$true -WebSiteName "Exchange Back End" -Path ($RoleInstallPath + "ClientAccess\PowerShell-Proxy");
}
else
{
update-PowerShellVirtualDirectoryVersion -DomainController $RoleDomainController;
}
$vdir2 = get-PowerShellVirtualDirectory -ShowMailboxVirtualDirectories -server $RoleFqdnOrName -DomainController $RoleDomainController | where { $_.Name -eq $feVdirName };
if ($vdir2 -eq $null)
{
new-PowerShellVirtualDirectory $vdirName -Role Mailbox -InternalUrl $InternalPowerShellUrl -DomainController $RoleDomainController -BasicAuthentication:$false -WindowsAuthentication:$false -RequireSSL:$false -WebSiteName "Default Web Site" -AppPoolId "MSExchangePowerShellFrontEndAppPool";
}
else
{
update-PowerShellVirtualDirectoryVersion -DomainController $RoleDomainController;
}
" was run: "System.ArgumentException: The virtual directory 'PowerShell' already exists under 'xxx.xxx.com/Default Web Site'.
Parameter name: VirtualDirectoryName
at Microsoft.Exchange.Configuration.Tasks.Task.ThrowError(Exception exception, ErrorCategory errorCategory, Object target, String helpUrl)
at Microsoft.Exchange.Management.SystemConfigurationTasks.NewExchangeVirtualDirectory`1.InternalValidate()
at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".