This post is also available in: angielski
Zanim wyjaśnimy jak otrzymać listę z historią przenoszenia skrzynki pomiędzy bazami, wyjaśnimy jak przenieść skrzynkę z jednej bazy do drugiej w Exchange 2010.
Exchange 2010 przeniesienie skrzynki:
Aby przenieść skrzynkę z jednej bazy do drugiej w Exchange 2010 możemy skorzystać z:
- EMC – Exchange Management Console
- EMS – Exchange Management Shell
EMC Exchange Management Console
W EMC skrzynkę możemy przenieść między bazami przechodząc w konsoli do Recipients a następnie klikając prawym przyciskiem na skrzynce która chcemy przenieść i wybierając New Local Move Request
Nastepnie w oknie, określamy docelową bazę oraz liczbę elementów które mogą być pominięte w trakcie przenoszenia bazy bez przerywania operacji.
Przenoszenie skrzynek z wykorzystaniem Exchange 2010 Management Console jest proste dlatego nie będziemy się tutaj więcej rozpisywać na ten temat.
EMS Exchange Management Shell
W przypadku przenoszenia większej ilości skrzynek między bazami, lepiej jest skorzystać z Exchange Management Shell oraz poleceń CMDlet w Powershellu. Dzieki temu łatwo możemy napisać skrypt do przenoszenia np.: wszystkich skrzynek z jednej bazy do drugiej.
Aby przenosić skrzynki między bazami musimy posiadać odpowiednie uprawnienia (role) RBAC.
Poniżej w tabeli możecie znaleźć informacje o wymaganych rolach potrzebnych do wykonania operacji przeniesienia skrzynki, wstrzymania przeniesienia, sprawdzenia stanu operacji przeniesienia itp.:
CMDlet | Required RBAC permission | |
---|---|---|
Management role | Role group membership | |
New-MoveRequest | Move Mailboxes | Recipient Management |
Get-MoveRequest | Move Mailboxes, View-Only Recipients | |
Get-MoveRequestStatistics | Move Mailboxes, View-Only Recipients | Recipient Mangement |
Set-MoveRequest | Move Mailboxes | Recipient Management |
Suspend-MoveRequest | Move Mailboxes | Recipient Management |
Resume-MoveRequest | Move Mailboxes | Recipient Management |
Remove-MoveRequest | Move Mailboxes | Recipient Management |
Get-MailboxStatistics | Mail Recipients, Users Options, View-Only Recipients | Recipient Management |
Aby przenieść skrzynkę musimy utworzyć polecenie przeniesienia skrzynki jak poniżej:
New-MoveRequest -identity "John Smith" -TargetDatabase "MXDB03"
Powyższe polecenie spowoduje rozpoczęcie przeniesienia skrzynki z obecnej bazy do bazy określonej jako TargetDatabase czyli MXDB03
Dodatkowo możemy użyć parametru BadItemLimit aby określić ilość uszkodzonych elementów przenoszonej skrzynki które mogą być pominięte podczas przenoszenia. Dopiero przekroczenie tej wartości spowoduje anulowanie operacji przenoszenia.
Zanim ponownie będziecie chcieli przenosić tą samą skrzynkę do innej bazy, musicie najpierw usunąć poprzednie żądanie przeniesienia dla tej skrzynki. W przeciwnym wypadku zwrócony zostanie błąd o tym że takie zadanie już istnieje.
Poniższe polecenie powoduje usunięcie wszystkich zadań przeniesienia skrzynek między bazami lub serwerami których status wynosi Completed:
Get-MoveRequest -MoveStatus Completed | Remove-MoveRequest
do sprawdzenia statusu operacji przenoszenia korzystamy z poniższego polecenia:
Get-MoveRequest
lub jeżeli chcemy znaleźć tylko operacje przenoszenia które są w trakcie wykonywania:
Get-MoveRequest -MoveStatus InProgress
Exchange 2010 Mailbox move history:
Gdy już wiemy jak przenosić skrzynki pomiędzy bazami serwerów Exchange 2010, istotną informacją dla nas jest kiedy, skąd i dokąd przenoszona była dana skrzynka.
W większości przypadków przenoszenia skrzynek między bazami, po paru tygodniach lub miesiącach zapominamy co gdzie przenosiliśmy.
Domyślnie serwer Exchange 2010 przetrzymuje w logach tylko dwie ostatnie operacje przenoszenia dla danej skrzynki.
Na szczęście takie zachowanie serwera możemy zmienić i możemy sami określić ile operacji przenoszenia ma być zachowanych w logach serwera.
Aby zmienić tą wartość dla Exchange 2010 Mailbox Replication Service (MRS) musimy poddać edycji poniższy plik konfiguracyjny:
MSExchangeMailboxReplication.exe.config
W tym celu możemy użyć Notepad.
Plik ten znajduje się na każdym serwerze Microsoft Exchange Server 2010 Client Access i musimy zmodyfikować go na wszystkich serwerach.
Plik ten znajdziemy w lokalizacji:
<Exchange Installation Path>\Program Files\Microsoft\Exchange Server\V14\Bin\MSExchangeMailboxReplication.exe.config.
Otwieramy plik w Notepadzie i znajdujemy wpis:
MaxMoveHistoryLength
Wartość tego parametru może być zmieniona od 0 do 100 dzięki czemu określamy ile operacji przenoszenia skrzynki ma być zachowanych. Należy jednak mieć na uwadze że każda z tych operacji zajmuje około 300KB.
Historia operacji przenoszenia skrzynki znajduje się w ukrytym folderze tej skrzynki. Aby się do niej dostać musimy skorzystać z polecenia Get-MailboxStatistics.
Aby wyświetlić historie operacji przenoszenia skrzynki John Smith musimy użyc polcenia jak poniżej:
Get-MailboxStatistics -identity "John Smith" -IncludeMoveHistory
W wyniku działania tego polecenia otrzymamy listę wszystkich operacji przenoszenia skrzynki które są zachowane przez serwer Exchange.
Informacji tych może być na tyle dużo, że lepiej będzie zapisać każdą z operacji do tablicy jak poniżej:
$MoveHistory = (Get-MailboxStatistics -identity "John Smith" -IncludeMoveHistory).MoveHistory
Wówczas wszystkie operacje znajdują sie w tablicyMoveHistory do której możemy sie odwoływać jak poniżej:
$MoveHistory[0]
lub możemy te informacje zapisać do pliku:
$MoveHistory[0] | Out-File -FilePath "D:\Scripts\MoveHistory.txt"
W historii operacji przenoszenia skrzynki znajdziecie dużo istotnych informacji takich jak: baza z której skrzynka została przeniesiona, baza docelowa, start operacji, koniec operacji, końcowy stan itp.
Jeżeli informacje te okażą się dla Was niewystarczające, wówczas możecie użyć parametru -IncludeMoveReport zamiast -IncludeMoveHistory
Dzięki temu parametrowi raport z historii przenoszenia skrzynki będzie dużo dokładniejszy i będzie zawierał listę wszystkich czynności jakie zostały podjęte w celu wykonania przeniesienia skrzynki.
Mamy nadzieję że choć trochę pomoże Wam to w celu ustalenia historii skrzynki.