Office 365로 마이그레이션된 사서함의 사서함 문제를 보관 합니다.

참고

Office 365 ProPlus엔터프라이즈용 Microsoft 365 앱으로 이름이 바뀌고 있습니다. 이 변경에 대한 자세한 내용은 이 블로그 게시물을 참조하세요.

원래 수 (kbps):   2757430

문제

Microsoft Office 365로 사서함을 마이그레이션하고 보관 사서함을 사용 하는 경우 microsoft Exchange Online의 Microsoft Exchange Mailbox Replication service (MRS)에서 마이그레이션 종료 시 사서함의 ArchiveDomain 속성에 대 한 대상 도메인 값을 스탬프 처리 하는 문제가 발생 합니다.

참고

보관 사서함이 없는 계정에서는이 문제가 발생 하지 않습니다.

보관 사서함과 관련 된 다섯 가지 시나리오가 있습니다. 각 시나리오 마다 다른 해결 방법이 필요 합니다.

  • 시나리오 1-온 보 딩: 온-프레미스 Microsoft Exchange Server 사서함을 Exchange Online으로 이동 합니다.
  • 시나리오 2-온 보 딩: 보관 사서함이 Exchange Online에 있고 기본 사서함을 온-프레미스 Exchange Server 환경에서 Exchange Online으로 이동 합니다.
  • 시나리오 3-오프 보 딩: 보관 사서함을 사용 하도록 설정한 다음 Exchange Online의 기본 및 보관 사서함을 모두 온-프레미스 Exchange Server 환경으로 마이그레이션합니다. 기본 사서함이 이미 온-프레미스이 고, 보관 사서함을 Exchange Online에서 온-프레미스 Exchange Server 환경으로의 오프 라인으로 설정 하려는 경우에도 비슷한 시나리오가 발생 합니다.
  • 시나리오 4-오프 보 딩: 기본 사서함에서 보관 사서함을 사용 하도록 설정 하지 않고 기본 사서함을 Exchange Online에서 온-프레미스 Exchange Server 환경으로 이동 합니다.
  • 시나리오 5-오프 보 딩: 기본 사서함이 온-프레미스 Exchange Server 환경에 있고 보관 사서함이 Exchange Online에 있습니다. 이 시나리오는 다음 작업 중 하나를 수행할 때 발생할 수 있습니다.
    • 기본 사서함을 보드 아웃 합니다. 그러나 보관 사서함은 Exchange Online에 남겨 두어야 합니다.
    • 기본 및 보관 사서함은 모두 온-프레미스 Exchange Server 환경에 있습니다. 그러나 보관 사서함만 온보드 했습니다.

    참고

    지원 되는 보관 함 분할 시나리오는 Exchange Online의 기본 사서함 인 온-프레미스 및 보관 사서함 뿐입니다.

원인

이 문제는 온-프레미스 Exchange Server 환경과 Exchange Online 간에 사서함이 마이그레이션될 경우 발생 합니다.

다음 Windows PowerShell cmdlet을 사용 하 여 보관 속성을 보면 보관 상태가 활성 상태인 것을 확인할 수 있습니다. 그러나 대부분의 보관 정보가 누락 되었습니다.

Get-Mailbox alias |fl Name, Archive*

참고

온-프레미스 Exchange 관리 셸 또는 Exchange Online PowerShell을 사용 하 여 cmdlet을 실행할 수 있습니다. Exchange Online PowerShell을 사용 하는 방법에 대 한 자세한 내용은 서비스에 Windows PowerShell 연결로 이동 합니다.

Cmdlet을 실행 하면 결과가 다음과 같이 나타납니다.

Name : jsmith
ArchiveDatabase :
ArchiveGuid : 00000000-0000-0000-0000-000000000000
ArchiveName : {}
ArchiveQuota : 100 GB (107,374,182,400 bytes)
ArchiveWarningQuota : 90 GB (96,636,764,160 bytes)
ArchiveDomain : contoso.mail.onmicrosoft.com
ArchiveStatus : Active

해결 방법

이 문제를 해결 하려면 다음 방법 중에서 해당 하는 시나리오에 해당 하는 방법을 사용 하십시오.

시나리오 1

시나리오 1의 문제는 다음과 같이 해결 되었습니다. Exchange Online으로의 모든 온 보 딩이 처리 되 고, 테 넌 트 관리자가 보관 사서함을 사용 하도록 설정할 때까지 ArchiveDomain 속성은 더 이상 설정 되지 않습니다.

이 문제가 해결 되기 전에 사용자는 Outlook에 보관 사서함이 있음을 보고 했으며 인증 메시지가 수신 되었습니다. 그러나 사용자는 Outlook Web App에서 같은 보관 사서함을 볼 수 없습니다. (Microsoft는 사용자가 액세스할 수 있는 실제 보관 사서함이 아니기 때문에 보관 함을 ' 고스트 보관 함 '으로 참조 합니다.

시나리오 2

시나리오 2의 문제는 지금까지 사서함 이동을 담당 하는 MRS 구성 요소를 Exchange Online 보관 사서함의 현재 상태를 올바르게 결정 하는 것과 같습니다. 따라서 사용자는 오류 없이 Outlook 또는 Outlook Web App에서 보관 사서함에 올바르게 액세스할 수 있습니다. 필요한 작업은 없습니다.

시나리오 3

시나리오 3의 두 가지 변형 모두에서 발생 하는 문제는 다음과 같이 해결 됩니다. MRS Exchange Online의 경우 ArchiveDomain 속성 값을 온-프레미스 도메인으로 설정 합니다. 따라서 사용자는 오류 없이 Outlook 또는 Outlook Web App에서 보관 사서함에 올바르게 액세스할 수 있습니다. 필요한 작업은 없습니다.

시나리오 4

시나리오 4의 문제는 다음과 같이 해결 되었습니다 .이 시나리오에서 Exchange Online의 MRS는 ArchiveDomain 속성 값을 온-프레미스 도메인으로 설정 합니다. 따라서 보관 사서함을 사용할 수 없는 경우에도 사용자는 Outlook에서 보관 사서함이 있음을 보게 됩니다. 이 보관은 시나리오 1에 대 한 ' 해결 방법 ' 섹션에 설명 되어 있는 ' 고스트 보관 함 '과 비슷합니다. 그러나 ' 시나리오 5의 해결 방법 ' 섹션에서 제공 하는 스크립트를 실행 하려면 여전히 온-프레미스 Exchange Server 환경의 Exchange 관리자가 보관 해야 합니다. Microsoft는이 시나리오를 해결 하기 위한 업데이트를 배포 했습니다. 따라서 나중에 오프 보 딩에는 영향을 주지 않습니다.

Exchange Online에서 오프 보 딩 마이그레이션을 수행할 때 영향을 받는지 여부를 확인 하려면 scan 모드에서 시나리오 5의 확인 섹션에 제공 된 스크립트를 실행 합니다.

시나리오 5

이 시나리오에서는 ArchiveDomain 속성의 값이 온-프레미스 도메인으로 설정 됩니다. 따라서 Outlook에서 보관 사서함을 찾아 열 수 없습니다.

시나리오 4와 5를 해결 하기 위해 Microsoft는 사서함을 Exchange Online에서 온-프레미스 Exchange Server 환경으로 다시 이동할 경우 필요한 특성을 자동으로 변경 하는 데 도움이 되는 다음 스크립트를 제공 합니다. 스크립트를 실행 하려면 다음 단계를 수행 합니다.

  1. 메모장을 시작 합니다.
  2. 메모장에 다음 스크립트를 복사 하 여 붙여 넣습니다.
#-------------------------------------------------------------------------------
#
# Copyright (c) Microsoft Corporation. All rights reserved.
#
# PLEASE NOTE:
# Microsoft Corporation (or based on where you live, one of its affiliates)
# licenses this supplement to you. You may use it with each validly licensed
# copy of Microsoft Online Services Migration Tools software (the "software").
# You may not use the supplement if you do not have a license for the software.
# The license terms for the software apply to your use of this supplement.
# Microsoft may provide support services for the supplement as described at
# http://www.support.microsoft.com/common/international.aspx.
#
#-------------------------------------------------------------------------------
#
# PowerShell Source Code
#
param([Parameter(Mandatory = $false)]
[string]$TenantCloudDomain,
[Parameter(Mandatory = $false)]
[string]$Domain,
[Parameter(Mandatory = $false)]
[Switch]$Fix,
[Parameter(Mandatory = $false)]
[Switch]$FindAllUsersInForest
)
function GetNameFromDN([string]$dn)
{
if ($dn.Length -eq 0) { return $null; }
return ($dn -split ",")[0].Replace("CN=", "")
}
Import-Module ActiveDirectory
If ($TenantCloudDomain.Length -eq 0) {
$ldapQuery = "(&(objectClass=user)(msExchArchiveAddress=*))"
} else {
$ldapQuery = "(&(objectClass=user)(msExchArchiveAddress=*)(!(&(msExchArchiveGuid=*)(!(msExchArchiveDatabaseLink=*))(msExchArchiveAddress=$TenantCloudDomain))))"
}
if ($Domain.Length -eq 0) {
# default domain to computer's domai
$computer = Get-WmiObject -Class Win32_ComputerSystem
$Domain = $computer.Domai
}
if ($FindAllUsersInForest -and $Fix) {
throw "You cannot specify -FindAllUsersInForest when running in -Fix mode, only one domain can be cleaned up at a time."
}
Write-Host "Looking for objects to clean up in ${Domain}: ${ldapQuery}"
$propertiesToLoad = @("msExchMailboxGuid","homeMDB","msExchArchiveGuid","msExchArchiveDatabaseLink","msExchArchiveAddress")
$tsStart = [DateTime](Get-Date)
if ($FindAllUsersInForest) {
$m = Get-ADObject -Server "${Domain}:3268" -SearchBase "" -LDAPFilter $ldapQuery -ResultSetSize $null -Properties $propertiesToLoad
} else {
$m = Get-ADObject -Server $Domain -LDAPFilter $ldapQuery -ResultSetSize $null -Properties $propertiesToLoad
}
$elapsed = [DateTime](Get-Date) - $tsStart
if ($m -eq $null) {
Write-Host "No objects need to be cleaned up."
retur
}
$cleanedCount = 0
$failedCount = 0
$filename = $("~\ArchiveDomainCleanup_{0:yyyymmdd_HHmmss}.csv" -f (Get-Date))
# Run cleanup and output data to CSV file
Write-Host "Writing output to $filename..."
try {
$m | %{
$success = $true
if ($Fix) {
$prevError = $error[0]
Set-ADObject -Identity $_ -Server $Domain -Clear "msExchArchiveAddress"
if ($error[0] -ne $prevError) {
$success = $false
Write-Host "x" -NoNewLine
} else {
Write-Host "." -NoNewLine
}
}
if ($success) {
$cleanedCount++
# object was cleaned up successfully, let's append it to output CSV.
$mm = $_ | Select ObjectGuid,DistinguishedName
# Morph guid values from binary blob to proper guid
$mbxGuid = [Guid]$_.msExchMailboxGuid
if ($_.msExchArchiveGuid -ne $null) {
$archiveGuid = [Guid]$_.msExchArchiveGuid
} else {
$archiveGuid = $null
}
Add-Member -InputObject $mm -MemberType NoteProperty -Name CleanedArchiveDomain -Value $($_.msExchArchiveAddress)
Add-Member -InputObject $mm -MemberType NoteProperty -Name ExchangeGuid -Value $mbxGuid
Add-Member -InputObject $mm -MemberType NoteProperty -Name Database -Value $(GetNameFromDN $_.homeMDB)
Add-Member -InputObject $mm -MemberType NoteProperty -Name ArchiveGuid -Value $archiveGuid
Add-Member -InputObject $mm -MemberType NoteProperty -Name ArchiveDatabase -Value $(GetNameFromDN $_.msExchArchiveDatabaseLink)
$mm
} else {
$failedCount++
}
} | Export-CSV $filename -NoTypeInformatio
}
finally {
if ($Fix) {
Write-Host ""
Write-Host "Cleaned up $cleanedCount recipients."
if ($failedCount -gt 0) {
Write-Warning "Failed to update $failedCount recipients."
}
} else {
Write-Host "Discovered $cleanedCount recipients."
}
}
  1. 파일 메뉴에서 저장 을 클릭합니다.
  2. 다른 이름으로 저장 상자에서 모든 파일 ( . ) 을 클릭 합니다.
  3. 파일 이름 상자에 typeCleanup-ArchiveDomain.ps1 하 고 저장 을 클릭 합니다.
  4. Cleanup-ArchiveDomain.ps1 파일을 저장 한 디렉터리를 찾은 후 다음 매개 변수와 함께 스크립트를 실행 합니다.
Cleanup-ArchiveDomain.ps1 [-TenantCloudDomain serviceDomain] [-Domain domain] [-Fix] [-FindAllUsersInForest]

참고

  • TenantCloudDomain 매개 변수는 테 넌 트에서 클라우드 보관 기능을 사용 하는 경우에만 지정 해야 합니다. 매개 변수의 값은 테 넌 트가 클라우드 보관에 액세스 하는 데 사용 하는 DNS 도메인 이름 (예: contoso.com) 이어야 합니다.
  • Domain 매개 변수는 현재 컴퓨터의 도메인이 아닌 도메인에서 정리 기능을 실행 하는 데 사용 됩니다.
  • Fix 스위치는 실제 정리 기능을 트리거합니다. 스위치의 기본 기능 (' 스캔 모드 ' 라고도 함)은 사용자를 찾고이를 CSV 파일로 출력 하기 위한 것입니다.
  • TheFindAllUsersInForest 스위치는 글로벌 카탈로그를 검색 하 여 모든 도메인에서 로컬 포리스트에 있는 모든 영향을 받는 사용자를 찾습니다. 그러나이 스위치는 Fix 스위치와 함께 사용할 수 없습니다. 한 번에 한 도메인의 사용자만 수정할 수 있습니다.

추가 정보

아직 해결되지 않았습니까? Microsoft 커뮤니티로 이동하세요.