Alınan Hata,
Organization Preparation FAILED
The following error was generated when “$error.Clear();
initialize-ExchangeUniversalGroups -DomainController
$RoleDomainController -ActiveDirectorySplitPermissions $RoleActiveDirectorySplitPermissions
” was run:
“Microsoft.Exchange.Management.Tasks.InvalidWKObjectException: The well-known object entry
B:32:B3DDC6BE2A3BE84B97EB2DCE9477E389:CN=Help Desk\0ADEL:92d2a300-8338-40d5-976a-669a78da35a6,CN=Deleted
Objects,DC=dmnint,DC=intra on the otherWellKnownObjects attribute in the container object CN=Microsoft
Exchange,CN=Services,CN=Configuration,DC=dmnint,DC=intra points to an invalid DN or a deleted object. Remove the entry,
and then rerun the task.
at Microsoft.Exchange.Configuration.Tasks.Task.ThrowError(Exception exception, ErrorCategory
errorCategory, Object target, String helpUrl)
at
Microsoft.Exchange.Management.Tasks.InitializeExchangeUniversalGroups.CreateGroup(ADOrganizationalUnit usgContainer,
String groupName, Int32 groupId, Guid wkGuid, String groupDescription, GroupTypeFlags groupType, Boolean
createAsRoleGroup)
at
Microsoft.Exchange.Management.Tasks.InitializeExchangeUniversalGroups.CreateRoleGroup(ADOrganizationalUnit
usgContainer, RoleGroupDefinition roleGroup)
at
Microsoft.Exchange.Management.Tasks.InitializeExchangeUniversalGroups.CreateAndValidateRoleGroups(ADOrganizationalUnit
usgContainer, RoleGroupCollection roleGroups)
at
Microsoft.Exchange.Management.Tasks.InitializeExchangeUniversalGroups.InternalProcessRecord()
at
Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
at
Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean
terminatePipelineIfFailed)”.
The Exchange Server setup operation didn’t complete. More details can be found in ExchangeSetup.log located in the
<SystemDrive>:\ExchangeSetupLogs folder.
şeklindedir. Çözümü ise aşağıdaki scripttir.
# Get Microsoft Exchange Container
$objDE = New-Object System.DirectoryServices.DirectoryEntry
$ExchangeDN = [string]::Concat(“LDAP://CN=Microsoft Exchange,CN=Services,CN=Configuration,”, $objDE.distinguishedName)
$objCN = New-Object System.DirectoryServices.DirectoryEntry($ExchangeDN)
$gp = [Reflection.Bindingflags]::GetProperty
# get otherWellKnownObjects Collection
$objCol = $objCN.otherWellKnownObjects
$delCount = 0
# Walk though the Collection backwards (always do that when deleting items)
for ($i=$objCol.Count–1; $i -ge 0; $i—)
{
$objWKO = $objCol[$i]
$objType = $objWKO.GetType()
# Get the distinguishedName
$DNString = $objType.InvokeMember(“DNString”, $gp, $null, $objWKO, $null)
$BV = $objType.InvokeMember(“BinaryValue”, $gp, $null, $objWKO, $null)
$Guid = [GUID][System.BitConverter]::ToString($BV).Replace(“-“, “”)
Write-Host “DNString: $DNString“
Write-Host “Guid: $Guid“
# Check if the item was deleted
if ($DNString.Contains(“0ADEL”))
{
Write-Host “This is a Deleted Item” -foregroundcolor Red
# Remove the item (WARNING: No Confirmation asked)
$objCol.RemoveAt($i)
Write-Host “Object Removed” -foregroundcolor Red
$DelCount++
}
}
# Did we delete something?
if ($DelCount -gt 0)
{
Write-Host “Commiting Changes” -foregroundcolor Blue
# Commit changes, remove this line if you just want to test
# If you don’t commit you will not delete anything
$objCN.SetInfo()
}