Exchange에서 실수로 사람의 사서함을 어떻게 삭제했더라도 PowerShell(PoSh)을 사용하여 복원할 수 있습니다. 열쇠는 사서함이 삭제되었음을 깨닫는 즉시 수행하는 것입니다.
우리가 실수로 이것을 했다는 것을 깨닫는 것은 가슴이 벅차오르는 순간입니다. 이메일 메시지를 몇 개만 삭제했다면 Office 365에서도 삭제된 이메일을 복구하는 방법을 알려드릴 수 있습니다.
시작하기 전에 이것은 Exchange Online 에서 삭제된 편지함을 복원하기 위한 것임을 유의하십시오. Office 365 환경 및 Exchange 2010용 . 또한 설명된 방법을 사용할 수 있는 관리 권한이 있고 몇 가지 기본 PowerShell 스크립팅을 수행했다고 가정합니다.
사서함이 삭제되면 어떻게 됩니까?
사서함이 Azure Active Directory 로 이동됩니다. (AD) Exchange Online 또는 연결이 끊긴 사서함 의 휴지통 Exchange 2010의 디렉터리입니다.
보관 정책에 따라 최대 30일 동안 보관될 수 있습니다. 그러면 실수를 인식하고 복구할 수 있는 유예 기간이 주어집니다.
Exchange Online에서 삭제된 사서함 복원
PowerShell을 통해 Exchange Online에 연결
로컬 세션에서 Powershell 콘솔을 열고 다음 명령을 사용하여 로그인 자격 증명을 변수에 설정합니다.
$userCredential
이렇게 하면 나중에 다른 스크립트로 더 쉽게 작업할 수 있습니다.
$userCredential = get-Credential
Exchange Online을 관리하기 위한 사용자 이름과 암호를 입력할 수 있는 창이 열립니다.
다음으로 세션에서 실제로 작업을 수행할 수 있도록 실행 정책 수준을 설정합니다. 이를 통해 서명되지 않은 명령을 실행할 수 있습니다. 그러나 PowerShell 스크립트 서명에 대한 모범 사례도 배우고 싶을 수 있습니다.
set-ExecutionPolicy Unrestricted
메시지가 표시되면 Y 키를 누릅니다. 예.
이제 $session 변수를 생성하겠습니다. 로컬 컴퓨터와 Exchange Online 간의 연결을 여는 데 사용됩니다.
$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $userCredential -Authentication Basic -AllowRedirection
Powershell-lived Office 사이트의 ID입니다. 일반적으로 이것은 회사 이름의 일부 변형입니다.
다음 명령을 사용하여 Exchange Online에서 PoSh 세션을 엽니다.
import-PSSession $Session -DisableNameChecking
이제 우리는 자신의 컴퓨터에 앉아 있어도 Exchange Online에서 직접 PowerShell로 작업하고 있습니다.
PowerShell을 사용하여 삭제된 사서함 복원
다음 부분은 매우 쉽습니다. 연결하는 데 훨씬 더 오래 걸릴 것입니다.
아래 표시된 cmdlet을 실행하기만 하면 됩니다.
undo-SoftDeletedMailbox [email protected] -WindowsLiveID [email protected] -Password (ConvertTo-SecureString -String 'newpassword' -AsPlainText -Force)
[email protected]의 두 인스턴스 모두 변경 복원하려는 사서함의 적절한 사서함 이름과 Windows LiveID에 동일하지 않을 수 있습니다.
또한 사서함에 대한 새 암호를 설정해야 합니다. newpassword 변경 스크립트에서 선택한 비밀번호로 이를 사용자에게 전달하고 다음에 로그인할 때 비밀번호를 변경하도록 요청해야 합니다.
마지막으로 다음 cmdlet을 사용하여 이것이 제대로 작동하는지 확인합니다.
get-Mailbox [email protected]
복원된 경우 cmdlet은 복원된 사서함에 대한 정보를 반환합니다. 오류가 반환되면 명령을 다시 실행하여 올바른 사서함과 Windows LiveID가 사용되고 있는지 확인하십시오.
그래도 작동하지 않으면 시스템 백업에서 사서함을 복원해야 합니다. 시스템 백업에는 여러 유형이 있으므로 현재 수행하는 작업의 범위를 벗어납니다.
완료되면 PoSh 세션을 닫아야 합니다. 실행 중인 PoSh 세션의 수는 제한되어 있습니다. 열린 상태로 두면 해당 세션 중 하나가 사용됩니다. 닫지 않으면 다른 세션을 시작하기 전에 세션 시간이 초과될 때까지 기다려야 합니다.
remove-PSSession $Session
그게 다야 다시 발생하는 경우 쉽게 사용할 수 있도록 이를 PowerShell 모듈에 스크립팅할 수도 있습니다.
Exchange 2010에서 삭제된 사서함 복원
Office 365 또는 하이브리드 환경에서는 작동하지 않습니다. Exchange 2010 온-프레미스에서만 작동합니다.
메일 서버에서 Exchange 관리 콘솔 을 엽니다. (EMC).
수신자 구성 으로 이동합니다.> 연결 해제된 사서함 . 거기에 사용자의 사서함이 표시되어야 합니다.
그렇지 않으면 사서함 데이터베이스 정리 프로세스가 아직 발생하지 않은 것입니다. 알겠습니다. 강제할 수 있습니다.
- Exchange 관리 셸 열기 (EMS) 관리자로. 여기에서 Exchange 관련 PowerShell 작업을 수행할 수 있습니다.
- 이제 cmdlet을 입력합니다.
Get-MailboxDatabase | Clean-MailboxDatabase
- 완료되면 EMC로 돌아가서 Disconnected Mailbox를 마우스 오른쪽 버튼으로 클릭합니다. 을 클릭한 다음 새로고침을 클릭합니다. .
- 여기에 사서함이 표시되어야 하며 최근에 삭제된 다른 사서함과 함께 표시됩니다.
- EMS로 돌아가 다음 cmdlet을 입력합니다.
Connect-Mailbox -Identity "username" -Database "Mailbox Database" -User "username"
- 사용자 이름 사용자의 Windows 계정 이름입니다(예:테스트 사용자). ), 및 사서함 데이터베이스 연결이 끊긴 사서함에서 이름 옆에 나열된 데이터베이스 이름입니다. 창입니다.
- 새로 고침 연결 해제된 편지함 그리고 당신은 그들의 편지함이 거기에 더 이상 표시되지 않는 것을 볼 것입니다. 수신자 구성 으로 이동합니다.> 사서함 사용자의 사서함이 있는지 확인합니다.
이메일 주소 및 별칭과 같은 모든 설정이 올바른지 확인하십시오. 보기에 좋으면 다음에 사용자가 Outlook을 열 때 모든 것이 그대로 있을 것입니다.
사서함 복원됨
이것이 PowerShell을 사용하여 Exchange Online 및 Exchange 2010에서 사서함을 복원하는 방법입니다. 하이브리드 환경이 있는 경우 조금 더 복잡하지만 완료할 수 있습니다.
이러한 다양한 cmdlet이 있다는 사실만 알면 버전이나 구성에 관계없이 Exchange를 사용할 수 있습니다.