0

したがって、私のスクリプトでは、ユーザーが名前を変更すると、それに応じて AD オブジェクトの名前を変更し、Exchange (2007) プロパティを変更してから、それらの変更に基づいて、それが含まれる情報ストアを変更します。

メールボックスを取得するときに新しい DistinguishedName を $newDN に保存し、明示的に DC01.domain.local を使用しようとします。次に、移動を試みると、DC02.domain.local で検索を試行するため、オブジェクトが見つかりません。レプリケーション ラグが発生し、以下のエラーが表示されます。誰でもこれについて何か考えがありますか?どうもありがとう!

StatusCode : -1056749240 StatusMessage : ステップでエラーが発生しました: オブジェクトを承認しています。オブジェクト 'LDAP://DC02.domain.local/CN=di mateo\, robert,OU=Users,DC=domain,DC=local' をエラーで開けませんでした: サーバーにそのようなオブジェクトはありません。

$mailbox = Get-Mailbox -ID $newDN `
    -DomainController DC01.domain.local

$mailbox | Move-Mailbox `
    -TargetDatabase $targetIS `
    -Confirm:$False `
    -DomainController DC01.domain.local `
    -GlobalCatalog DC01.domain.local

移動が機能する場合もありますが、機能しない場合は、SourceDomainController プロパティを空のままにし (以下のように)、機能するかのように DC01.domain.local を正しく設定します。

SourceServer                     : CCR.domain.local
SourceDatabase                   : CCR\IS1\IS1
SourceGlobalCatalog              : DC01.domain.local
SourceDomainController           : 
TargetGlobalCatalog              : DC01.domain.local
TargetDomainController           : DC01.domain.local
TargetMailbox                    : 
TargetServer                     : CCR.domain.local
TargetDatabase                   : CCR\IS2\IS2

困惑。

4

1 に答える 1

0

なぜこのような結果が得られるのかわかりませんが、私の回避策はここにあります...前に言ったように、すべての AD 変更を「DC01.domain.local」にクエリ/書き込みしますが、今は、関数を呼び出すときに、「DC02.domain.local」でメールボックスの検索を行います。ルックアップが失敗した場合は、カウンターをインクリメントし、約 20 秒間スリープしてから再試行します。私の最初のテストでは、ループする必要があったのは 1 回だけです。

$dc = "DC01.domain.local"

Function moveDB ($targetIS, $newDN, $counter) {

$dn = (Get-Mailbox -ID $newDN -DomainController $dc).DistinguishedName

If (!(Get-Mailbox $dn -DomainController "DC02.domain.local")) {
    $counter++
    If ($counter -le 4) {
        Write-Host "`nPlease wait while I search for the mailbox object...`n"  -ForegroundColor Yellow -BackgroundColor Red
        Start-Sleep -Seconds 20
        moveDB $targetIS $dn $dbCounter
    }
    Else {
        Write-Host "Mailbox was not moved!  Please move manually to $targetIS..."  -ForegroundColor Yellow -BackgroundColor Red
        return
    }
}
Else {
    $dn | Move-Mailbox `
        -DomainController $dc `
        -GlobalCatalog $dc `
        -TargetDatabase $targetIS `
        -Confirm:$False
    }
}
于 2012-12-19T21:33:36.833 に答える