How to hard delete a mailbox in Microsoft 365 without deleting the user account? Removing…
Exchange Server setup operation didn’t complete
You must update Exchange Server to a newer CU build to get the latest security fixes and changes. In our example, we are updating Exchange Server 2016 CU17 to Exchange Server 2016 CU18. After running the setup, an error shows up that the prerequisite analysis FAILED. Why did the Exchange Server setup fails, and how to solve the Exchange Server setup operation didn’t complete error?
Table of contents
Information
Before we start, it’s good to know we have a multidomain Active Directory forest. There are two options to install Exchange Server Cumulative Update:
- Setup wizard (GUI)
- Unattended mode (command line)
Note: If you run the setup wizard, it will prepare the schema and Active Directory automatically for you. If you want to use unattended mode, you must first prepare Active Directory and domains.
Exchange Server setup operation didn’t complete
We did download the Exchange Server CU ISO from Microsoft. After that, mount it to the Exchange Server. If we don’t, we can’t run the commands to update Exchange Server to the newer build.
At first, we did run the setup wizard (GUI), and the Exchange Server setup fails. After checking the logs, we can see that it fails at Performing Microsoft Exchange Server Prerequisite Check.
We like to see what will happen if we prepare the schema with Command Prompt. We did start the command prompt and ran the /PrepareSchema command. It shows the error Prerequisite Analysis FAILED.
C:\>E:\Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /PrepareSchema
Microsoft Exchange Server 2016 Cumulative Update 18 Unattended Setup
Copying Files...
File copy complete. Setup will now collect additional information needed for installation.
Performing Microsoft Exchange Server Prerequisite Check
Prerequisite Analysis FAILED
The Active Directory schema isn't up-to-date, and this user account isn't a member of the 'Schema Admins' and/or
'Enterprise Admins' groups.
For more information, visit: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.SchemaUpdateRequired.aspx
Setup encountered a problem while validating the state of Active Directory: Exchange organization-level objects have
not been created, and setup cannot create them because the local computer is not in the same domain and site as the
schema master. Run setup with the /prepareAD parameter on a computer in the domain alitajran and site London, and wait
for replication to complete. See the Exchange setup log for more information on this error.
For more information, visit: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.AdInitErrorRule.aspx
The forest functional level of the current Active Directory forest is not Windows Server 2003 native or later. To
install Exchange Server 2016, the forest functional level must be at least Windows Server 2003 native.
For more information, visit: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.ForestLevelNotWin2003Native.aspx
Either Active Directory doesn't exist, or it can't be contacted.
For more information, visit: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.CannotAccessAD.aspx
The Exchange Server setup operation didn't complete. More details can be found in ExchangeSetup.log located in the
<SystemDrive>:\ExchangeSetupLogs folder.
After running the command, the output is giving us errors.
- Prerequisite Analysis FAILED.
- The Active Directory schema isn’t up-to-date, and this user account isn’t a member of the ‘Schema Admins’ and/or ‘Enterprise Admins’ groups.
- Setup encountered a problem while validating the state of Active Directory.
- The forest functional level of the current Active Directory forest is not Windows Server 2003 native or later.
- Either Active Directory doesn’t exist, or it can’t be contacted.
- The Exchange Server setup operation didn’t complete. More details can be found in ExchangeSetup.log located in the <SystemDrive>:\ExchangeSetupLogs folder.
Why are we getting this error, and what is the solution for Exchange Server setup operation didn’t complete?
Check the prerequisites
You have to check the above notices one by one. It does not mean that all of them are wrong, maybe only one of them.
User account membership
Check that the account has the following permissions assigned in Active Directory:
- Enterprise Admins group membership.
- Organization Management group membership.
- Schema Admins group membership.
Note: If you have multiple domains, check the account in both Active Directories.
Forest functional level
To update Exchange Server, the forest functional level of the current Active Directory needs to be Windows Server 2003 or later. Use Get-AdForest cmdlet in PowerShell to check.
PS C:\> Get-ADForest | Format-List Name,ForestMode
Name : alitajran.local
ForestMode : Windows2008R2Forest
Domain functional level
Run Get-ADDomain cmdlet to check the domain functional level.
PS C:\> Get-ADDomain | Format-List Name,DomainMode
Name : exoip
DomainMode : Windows2008R2Domain
FSMO roles
Check the FSMO roles. Run Command Prompt as administrator and run the netdom query fsmo command.
C:\>netdom query fsmo
Schema master DC01.alitajran.local
Domain naming master DC01.alitajran.local
PDC DC03-2016.exoip.local
RID pool manager DC02-2016.exoip.local
Infrastructure master DC01-2016.exoip.local
The command completed successfully.
Solution for Exchange Server setup operation didn’t complete
Now that we gathered all the information, we can tell why the error shows up, and the Exchange prerequisites failed.
It didn’t work because we did run prepare schema and prepare AD from the Exchange Server. The Exchange Server is not in the domain alitajran.local. But, it’s location is in the domain exoip.local. The prepare schema and prepare AD commands need to run on a computer that is a member of the domain and site that holds the schema master. In our example, the schema master role is installed on DC01.alitajran.local.
The solution is to run these steps:
- Prepare schema on a computer that is on the same domain and site as the schema master.
- Prepare AD on a computer that is on the same domain and site as the schema master.
- Install Exchange CU upgrade on Exchange Server.
Prepare schema
Sign in on a client who is running in the forest. In our example, the forest alitajran.local. Download the Exchange CU ISO or copy the files from the Exchange Server to the computer. In our example, we copied the ISO from Exchange Server EX01 to MG01. The MG01 is the management server, and it’s running in the forest alitajran.local.
Start Command Prompt and prepare schema. Confirm that it’s successfully prepared.
C:\>E:\Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /PrepareSchema
Microsoft Exchange Server 2016 Cumulative Update 18 Unattended Setup
Copying Files...
File copy complete. Setup will now collect additional information needed for installation.
Performing Microsoft Exchange Server Prerequisite Check
Prerequisite Analysis COMPLETED
Configuring Microsoft Exchange Server
Extending Active Directory schema COMPLETED
The Exchange Server setup operation completed successfully.
Read more: Check Exchange Schema version with PowerShell »
Prepare AD
Prepare Active Directory and confirm that it’s successfully completed.
C:\>E:\Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /PrepareAD
Microsoft Exchange Server 2016 Cumulative Update 18 Unattended Setup
Copying Files...
File copy complete. Setup will now collect additional information needed for installation.
Performing Microsoft Exchange Server Prerequisite Check
Prerequisite Analysis COMPLETED
Configuring Microsoft Exchange Server
Organization Preparation COMPLETED
The Exchange Server setup operation completed successfully.
Upgrade Exchange Server CU
The next step is to go back to the Exchange Server. Run the command to start the upgrade.
C:\>E:\Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /Mode:Upgrade
Microsoft Exchange Server 2016 Cumulative Update 18 Unattended Setup
Copying Files...
File copy complete. Setup will now collect additional information needed for installation.
Languages
Management tools
Mailbox role: Transport service
Mailbox role: Client Access service
Mailbox role: Unified Messaging service
Mailbox role: Mailbox service
Mailbox role: Front End Transport service
Mailbox role: Client Access Front End service
Performing Microsoft Exchange Server Prerequisite Check
Configuring Prerequisites COMPLETED
Prerequisite Analysis 100%
Configuring Microsoft Exchange Server
Preparing Setup COMPLETED
Stopping Services COMPLETED
Language Files COMPLETED
Removing Exchange Files COMPLETED
Preparing Files COMPLETED
Copying Exchange Files COMPLETED
Language Files COMPLETED
Restoring Services COMPLETED
Language Configuration COMPLETED
Exchange Management Tools COMPLETED
Mailbox role: Transport service COMPLETED
Mailbox role: Client Access service COMPLETED
Mailbox role: Unified Messaging service COMPLETED
Mailbox role: Mailbox service COMPLETED
Mailbox role: Front End Transport service COMPLETED
Mailbox role: Client Access Front End service COMPLETED
Finalizing Setup COMPLETED
The Exchange Server setup operation completed successfully.
We did install Exchange CU successfully. The next step is to reboot the Exchange server. After it’s up and running, we will test that the Exchange services are running and that the mail flow is working.
Keep reading: Exchange setup failed to install error code 1619 »
Conclusion
You learned why the Exchange Server setup operation didn’t complete. It’s because the prerequisites failed. In our example, the schema master was in a different domain and site.
Connect to a computer that’s in the same domain as the schema master. Run the prepare schema and Active Directory commands. Next, run Exchange Server setup on the Exchange Server. No more Exchange server setup fails error; it will install as expected.
Did you enjoy this article? You may also like Install Exchange Server with GUI step by step. Don’t forget to follow us and share this article.
In our case, issue was caused by wrong subnet on server where we were installing management tool. New subnet added to AD sites and forced replication which worked. Also used setupassist.ps1 tool from github
Thank you for this article Ali, saved us a night of head-scratching trying to work out what was wrong! Second time your resources have come to the rescue.
During an Exchange server decommission, it seems that at some point the process failed, even though I had no error messages. The server no longer appears in AD, I checked using ADSIEdit, but I can’t finish the uninstall. The above process almost got me back, but failed because the server is no longer in AD. Is there anything that can be done? How I get this program removed? I can give me info if needed. Any assistance is appreciated…
Read the articles:
– An incomplete installation was detected when uninstalling Exchange
– How to remove Exchange from Active Directory
Ali, again many thanks for all your great articles. For your various Exchange articles, may I suggest you also make a comment of using /TenantOrganizationConfig for hybrid configurations, e.g.
Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataON /PrepareAD “/TenantOrganizationConfig C:\Temp\MyTenantOrganizationConfig.xml” /mode:Install /r:MB
And possibly also mention HCW for scenario where you have an on-premises e.g. EX2013 (already in hybrid config with O365) and install a fresh new EX2019 for then to e.g. bring EX2019 into existing hybrid config and remove EX2013 from hybrid config..
Thanks I lot for the article
my issue is that the /prepareAD not compleat with error
Organization Preparation 100%
The following error was generated when “$error.Clear();
$createTenantRoot = ($RoleIsDatacenter -or
$RoleIsPartnerHosted);
$createMsoSyncRoot = $RoleIsDatacenter;
#$RoleDatacenterIsManagementForest is set only in
Datacenter deployment; interpret its absense as $false
[bool]$isManagementForest = ($RoleDatacenterIsManagementForest
-eq $true);
if ($RolePrepareAllDomains)
{
initialize-DomainPermissions -AllDomains:$true
-CreateTenantRoot:$createTenantRoot -CreateMsoSyncRoot:$createMsoSyncRoot -IsManagementForest:$isManagementForest;
}
elseif ($RoleDomain -ne $null)
{
initialize-DomainPermissions -Domain $RoleDomain -CreateTenantRoot:$createTenantRoot
-CreateMsoSyncRoot:$createMsoSyncRoot -IsManagementForest:$isManagementForest;
}
else
{
initialize-DomainPermissions -CreateTenantRoot:$createTenantRoot -CreateMsoSyncRoot:$createMsoSyncRoot
-IsManagementForest:$isManagementForest;
}
” was run:
“Microsoft.Exchange.Data.Directory.ADConstraintViolationException: An Active Directory Constraint Violation error
occurred on domain.local. Additional information: The inherited access control list (ACL) or access control entry
(ACE) could not be built.
Active directory response: 0000053C: AtrErr: DSID-030F25EC, #1:
0: 0000053C: DSID-030F25EC,
problem 1005 (CONSTRAINT_ATT_TYPE), data 0, Att 20119 (nTSecurityDescriptor)
—>
System.DirectoryServices.Protocols.DirectoryOperationException: A value in the request is invalid.
at
System.DirectoryServices.Protocols.LdapConnection.ConstructResponse(Int32 messageId, LdapOperation operation, ResultAll
resultType, TimeSpan requestTimeOut, Boolean exceptionOnTimeOut)
at
System.DirectoryServices.Protocols.LdapConnection.SendRequest(DirectoryRequest request, TimeSpan requestTimeout)
at
Microsoft.Exchange.Data.Directory.GuardedDirectoryExecution.Execute[T](String bucketName, Func`1 action, Int64&
concurrency)
at Microsoft.Exchange.Data.Directory.PooledLdapConnection.GuardedSendRequest(String forestName,
GuardedDirectoryExecution guardedDirectoryExecution, DirectoryRequest request, TimeSpan timeout, Func`3
sendRequestDelegate, Int64& concurrency)
at
Microsoft.Exchange.Data.Directory.PooledLdapConnection.SendRequest(DirectoryRequest request, LdapOperation
ldapOperation, Nullable`1 clientSideSearchTimeout, IADLogContext logContext, Boolean shouldLogLastFilter)
at
Microsoft.Exchange.Data.Directory.ADDataSession.ExecuteModificationRequest(ADObject entry, DirectoryRequest request,
ADObjectId originalId, Boolean emptyObjectSessionOnException, Boolean isSync)
— End of inner exception stack trace
Hi
Thanks I lot for the article
We are having the same issue but when we tried to update in DC it were asking for net framework
Our issue child domain in exchange and it were unable to contact the dc
In dc .net framework were not there
Regards
Muthu
Install .NET Framework on the Domain Controller and proceed further with /PrepareSchema and /PrepareAD.