Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sie können PowerShell zum Verschieben von Postfächern zusätzlich zum Exchange Admin Center (EAC) verwenden.
Verschieben von lokalen Postfächern in eine Exchange Online organization
Um ein lokales Postfach mithilfe von PowerShell nach Exchange Online zu verschieben, führen Sie die folgenden Schritte aus:
Verbindung mit Exchange Online PowerShell herstellen: Starten Sie PowerShell als Administrator, und stellen Sie eine Verbindung mit Exchange Online PowerShell her, indem Sie den folgenden Befehl ausführen:
PS C:\> Connect-ExchangeOnlineSuchen des Migrationsendpunkts Remoteserver-URL: Rufen Sie die Remoteserver-URL mithilfe des Cmdlets Get-MigrationEndpoint ab.
Get-MigrationEndpoint | Format-List Identity, RemoteServerDie folgende Ausgabe wird angezeigt:
PS C:\> Get-MigrationEndpoint | Format-List Identity, RemoteServer Identity : Hybrid Migration Endpoint - EWS (Default Web Site) RemoteServer : <GUID>.resource.mailboxmigration.his.msappproxy.netHinweis
Der RemoteServer-Wert in der vorhergehenden Befehlssyntaxausgabe wird durch Ausführen des Hybridkonfigurations-Assistenten (HCW) generiert.
Kopieren Sie den RemoteServer-Wert nach Bedarf in den nächsten Teil.
Hinweis
Der Wert für den RemoteServer, der in der vorhergehenden Befehlssyntax angezeigt wird, wird generiert, wenn der Benutzer auf der Seite Hybridtopologie die Option Moderne Exchange-Hybridtopologie verwenden auswählt.
Erstellen einer neuen Verschiebungsanforderung zum Verschieben von primären und Archivpostfächern nach Exchange Online mithilfe von PowerShell
Geben Sie die folgenden Details ein, um eine neue Verschiebungsanforderung zum Verschieben des primären Postfachs und des Archivpostfachs nach Exchange Online zu erstellen:
- Identität: Postfachname oder E-Mail-Adresse.
- RemoteHostName: Der Remoteserver, den Sie in Schritt 2 kopiert haben.
- TargetDeliveryDomain: Primäre SMTP-Domäne, die für die Exchange Online organization Postfächer verwendet wird.
- RemoteCredential: Lokales Administratorkonto mit Berechtigungen.
Nach dem Ausführen des Befehls wird eine Anmeldeanforderung mit den Anmeldeinformationen angezeigt.
New-MoveRequest -Identity "Maisha.Lee@contoso.com" -Remote -RemoteHostName "mail.contoso.com" -TargetDeliveryDomain "<domain>.mail.onmicrosoft.com" -RemoteCredential (Get-Credential)Geben Sie das Kennwort für die lokalen Anmeldeinformationen (RemoteCredential) ein.
Verschieben mehrerer Postfächer nach Exchange Online mithilfe von PowerShell
Erstellen Sie eine CSV-Datei mit dem Namen Users.csv und legen Sie sie im Verzeichnis C:\migration ab.
Öffnen Sie die CSV-Datei, nennen Sie die Kopfzeilenspalte "EmailAddress", und füllen Sie alle Postfächer aus, die Sie in Exchange Online verschieben möchten.
Kopieren Sie das folgende Skript und ändern Sie die ersten 3 Zeilen. Führen Sie anschließend das Skript aus.
$Mailboxes = Import-Csv "C:\Migration\Users.csv" $RemoteHostName = "mail.contoso.com" $TargetDeliveryDomain = "<domain>.mail.onmicrosoft.com" $OnPremCred = (Get-Credential) # Move mailboxes in CSV file to Exchange Online foreach ($Mailbox in $Mailboxes) { $params = @{ Identity = $mailbox.EmailAddress Remote = $true RemoteHostName = $RemoteHostName TargetDeliveryDomain = $TargetDeliveryDomain RemoteCredential = $OnPremCred } New-MoveRequest @params }
Verschieben des primären Postfachs nur nach Exchange Online mithilfe von PowerShell
Es gibt ein Szenario, in dem sich der Speicherort des Archivpostfachs in Exchange Online und der primäre Postfachspeicherort in Exchange lokal befindet und Sie den folgenden Befehl ausführen:
$Mailboxes = Import-Csv "C:\Migration\Users.csv" $RemoteHostName = "mail.contoso.com" $TargetDeliveryDomain = "<domain>.mail.onmicrosoft.com" $OnPremCred = (Get-Credential) # Move mailboxes in CSV file to Exchange Online foreach ($Mailbox in $Mailboxes) { $params = @{ Identity = $mailbox.EmailAddress Remote = $true RemoteHostName = $RemoteHostName TargetDeliveryDomain = $TargetDeliveryDomain RemoteCredential = $OnPremCred } New-MoveRequest @params }Das Ergebnis ist, dass Sie die folgende Fehlermeldung erhalten, die Teil der umfassenderen Befehlssyntax ist, die nach der Fehlermeldung angezeigt wird:
You must specify the PrimaryOnly parameter Target user ‘XXXXXX’ already has an archive mailbox.PS C:\> New-MoveRequest -Identity "Maisha.Lee@contoso.com" -Remote -RemoteHostName "mail.contoso.com" -TargetDeliveryDomain "<domain>.mail.onmicrosoft.com" -RemoteCredential (Get-Credential) You must specify the PrimaryOnly parameter. Target user 'Maisha Lee' already has an archive mailbox. + CategoryInfo : NotSpecified: (:) [New-MoveRequest], MailboxReplicationPermanentException + FullyQualifiedErrorId : [Server=PAXP190MB1743,RequestId=3f8179c3-aa93-453f-9e14-d824968f34c4,TimeStamp=5/28/2022 7:19:13 AM] [FailureCategory=Cmdlet-MailboxReplicationPermanentException] FE8B9422,Microsoft.Exchange.Management. Migration.MailboxReplication.MoveRequest.NewModernMoveRequest + PSComputerName : outlook.office365.comSobald die Fehlermeldung angezeigt wird, führen Sie die folgenden Schritte aus:
Fügen Sie der vorhergehenden Befehlssyntax den
-PrimaryOnlyParameter hinzu, um den Fehler zu beheben, wenn Sie eine neue Verschiebungsanforderung erstellen, um nur das primäre Postfach nach Exchange Online zu verschieben.Geben Sie die folgenden Details ein:
- Identität: Postfachname oder E-Mail-Adresse.
- RemoteHostName: Der Remoteserver, den Sie in Schritt 2 kopiert haben.
- PrimaryOnly: Lassen Sie den Wert leer.
- TargetDeliveryDomain: Primäre SMTP-Domäne, die für die Exchange Online organization Postfächer verwendet wird.
- RemoteCredential: Lokales Administratorkonto mit Berechtigungen.
Nach dem Ausführen des Befehls für eine neue Verschiebungsanforderung wird eine Anmeldeanforderung für Anmeldeinformationen angezeigt, wie in der folgenden Befehlssyntax gezeigt:
New-MoveRequest -Identity "Maisha.Lee@contoso.com" -Remote -RemoteHostName "mail.contoso.com" -PrimaryOnly -TargetDeliveryDomain "<domain>.mail.onmicrosoft.com" -RemoteCredential (Get-Credential)Geben Sie das Kennwort für die lokalen Anmeldeinformationen (RemoteCredential) ein.
Nur Archivpostfach mithilfe von PowerShell nach Exchange Online verschieben
PS C:\> New-MoveRequest -Identity "Maisha.Lee@contoso.com" -Remote -RemoteHostName "mail.contoso.com" -TargetDeliveryDomain "<domain>.mail.onmicrosoft.com" -RemoteCredential (Get-Credential) You must specify the PrimaryOnly parameter. Target user 'Maisha Lee' already has an archive mailbox. + CategoryInfo : NotSpecified: (:) [New-MoveRequest], MailboxReplicationPermanentException + FullyQualifiedErrorId : [Server=PAXP190MB1743,RequestId=3f8179c3-aa93-453f-9e14-d824968f34c4,TimeStamp=5/28/2022 7:19:13 AM] [FailureCategory=Cmdlet-MailboxReplicationPermanentException] FE8B9422,Microsoft.Exchange.Management. Migration.MailboxReplication.MoveRequest.NewModernMoveRequest + PSComputerName : outlook.office365.com- Fügen Sie der vorhergehenden Befehlssyntax den
ArchiveOnlyParameter hinzu, um den Fehler zu beheben, wenn Sie eine neue Verschiebungsanforderung erstellen, um das Archivpostfach nur nach Exchange Online zu verschieben. - Geben Sie die folgenden Details ein:
- Identität: Postfachname oder E-Mail-Adresse.
- RemoteHostName: Der Remoteserver, den Sie in Schritt 2 kopiert haben.
- ArchiveOnly: Lassen Sie den Wert leer.
- TargetDeliveryDomain: Primäre SMTP-Domäne, die für die Exchange Online organization Postfächer verwendet wird.
- RemoteCredential: Lokales Administratorkonto mit Berechtigungen.
Nach dem Ausführen des Befehls für eine neue Verschiebungsanforderung wird eine Anmeldeanforderung für Anmeldeinformationen angezeigt, wie in der folgenden Befehlssyntax gezeigt:
New-MoveRequest -Identity "Maisha.Lee@contoso.com" -Remote -RemoteHostName "mail.contoso.com" -ArchiveOnly -TargetDeliveryDomain "<domain>.mail.onmicrosoft.com" -RemoteCredential (Get-Credential)Geben Sie das Kennwort für die lokalen Anmeldeinformationen (RemoteCredential) ein.
- Fügen Sie der vorhergehenden Befehlssyntax den
Abrufen des Status der Postfachverschiebung
Rufen Sie den Status der Postfachverschiebungsanforderung mithilfe des Cmdlets Get-MoveRequest ab.
Get-MoveRequest -Identity "Maisha.Lee@contoso.com" | Get-MoveRequestStatisticsFühren Sie den folgenden Befehl aus, um alle Anforderungen für Postfachverschiebungen abzurufen:
Get-MoveRequest | Get-MoveRequestStatisticsDie Ausgabe zeigt den Status der Postfachverschiebung als abgeschlossener Status an, wie im folgenden Screenshot dargestellt:
Wenn dies nicht der Fall ist und Sie den Postfachverschiebungsantrag nicht abschließen können, können Sie den Verschiebungsantrag anhalten und fortsetzen.
Verschieben von Exchange Online-Postfächern in eine lokale organization
Um ein Exchange Online-Postfach mithilfe von PowerShell in die lokale Organisation zu verschieben, führen Sie die folgenden Schritte aus:
Verbindung mit Exchange Online PowerShell herstellen: Starten Sie PowerShell als Administrator, und stellen Sie eine Verbindung mit Exchange Online PowerShell her, indem Sie den folgenden Befehl ausführen:
PS C:\> Connect-ExchangeOnlineHinweis
Sie ziehen das Exchange Online-Postfach nicht nach lokal. Tatsächlich verschieben Sie das Exchange Online-Postfach in ein lokales Postfach. Aus diesem Grund müssen Sie eine Verbindung mit Exchange Online herstellen und die Befehle von Exchange Online PowerShell ausführen.
Suchen des Migrationsendpunkts Remoteserver-URL: Rufen Sie die Remoteserver-URL mithilfe des Cmdlets Get-MigrationEndpoint ab.
Get-MigrationEndpoint | Format-List Identity, RemoteServerDie folgende Ausgabe wird angezeigt:
Identity : Hybrid Migration Endpoint - EWS (Default Web Site) RemoteServer : mail.contoso.comHinweis
Der RemoteServer-Wert in der vorhergehenden Befehlssyntaxausgabe wird durch Ausführen des Hybridkonfigurations-Assistenten (HCW) generiert.
Kopieren Sie den Wert der RemoteServer-URL nach Bedarf in den nächsten Teil.
Erstellen einer neuen Verschiebungsanforderung zum Verschieben von primären und Archivpostfächern von Exchange Online mithilfe von PowerShell
Geben Sie die folgenden Details ein, wenn Sie eine neue Verschiebungsanforderung erstellen, um das primäre Postfach und das Archivpostfach von Exchange Online zu verschieben:
- Identität: Postfachname oder E-Mail-Adresse.
- RemoteTargetDatabase: Lokale Exchange-Postfachdatenbank.
- RemoteHostName: Der Remoteserver, den Sie in Schritt 2 kopiert haben.
- TargetDeliveryDomain: Primäre SMTP-Domäne, die für die Exchange Online organization Postfächer verwendet wird.
- RemoteCredential: Lokales Administratorkonto mit Berechtigungen.
Der auszuführende Befehl, um eine neue Verschiebungsanforderung zu erstellen, lautet:
New-MoveRequest -OutBound -RemoteTargetDatabase "DB01" -RemoteHostName "mail.contoso.com" -TargetDeliveryDomain "contoso.com" -RemoteCredential (Get-Credential)Geben Sie das Kennwort der lokalen Anmeldeinformationen (RemoteCredential) für die Anmeldeanforderung ein, die nach dem Ausführen des Befehls wie in der folgenden Befehlssyntax angezeigt wird:
PS C:\> Get-Mailbox -Identity "Jordy.Twin@contoso.com" | New-MoveRequest -OutBound -RemoteTargetDatabase "DB01" -RemoteHostName "mail.contoso.com" -TargetDeliveryDomain "contoso.com" -RemoteCredential (Get-Credential exoip\administrator) DisplayName Status TargetDatabase ----------- ------ -------------- Jordy Twin QueuedNach dem Ausführen des vorherigen Befehls, der das Kennwort für die lokalen Anmeldeinformationen enthält, können die folgenden Fehlermeldungen angezeigt werden:
- Empfänger mit Postfach-GUID kann nicht gefunden werden
- Die Archiv-GUIDs für Quell- und Zielempfänger stimmen nicht überein
Verschieben des einzigen primären Postfachs von Exchange Online mithilfe von PowerShell
Wenn sich die Speicherorte des primären Postfachs und des Archivpostfachs in Exchange Online befinden und Sie nur das primäre Postfach verschieben möchten, fügen Sie dem Befehl, den Sie ausführen, um eine neue Verschiebung zu erstellen, und-Parameter
-ArchiveDomainhinzu-PrimaryOnlyund geben Sie in der Befehlssyntax die folgenden Details an:- Identität: Postfachname oder E-Mail-Adresse.
- OutBound: Lassen Sie den Wert leer.
- RemoteTargetDatabase: Lokale Exchange-Postfachdatenbank.
- RemoteHostName: Der Remoteserver, den Sie in Schritt 2 kopiert haben.
- PrimaryOnly: Lassen Sie den Wert leer.
- Archivdomäne: Primäre SMTP-Domäne, die für die Exchange Online organization Postfächer verwendet wird.
- TargetDeliveryDomain: Primäre SMTP-Domäne, die für die Exchange Online organization Postfächer verwendet wird.
- RemoteCredential: Lokales Administratorkonto mit Berechtigungen.
Der auszuführende Befehl, um eine neue Verschiebungsanforderung zu erstellen, lautet:
New-MoveRequest -OutBound -RemoteTargetDatabase "DB01" -RemoteHostName "mail.contoso.com" -PrimaryOnly -ArchiveDomain "<domain>.mail.onmicrosoft.com" -TargetDeliveryDomain "contoso.com" -RemoteCredential (Get-Credential)Nach dem Ausführen des Befehls wird eine Anmeldeanforderung mit den Anmeldeinformationen angezeigt, wie in der folgenden Befehlssyntax dargestellt:
PS C:\> Get-Mailbox -Identity "Jordy.Twin@contoso.com" | New-MoveRequest -OutBound -RemoteTargetDatabase "DB01" -RemoteHostName "mail.contoso.com" -PrimaryOnly -ArchiveDomain "<domain>.mail.onmicrosoft.com" -TargetDeliveryDomain "contoso.com" -RemoteCredential (Get-Credential exoip\administrator) DisplayName Status TargetDatabase ----------- ------ -------------- Jordy Twin QueuedGeben Sie das Kennwort für die lokalen Anmeldeinformationen (RemoteCredential) ein.
Abrufen des Status der Postfachverschiebung
Rufen Sie den Status der Postfachverschiebungsanforderung mithilfe des Cmdlets Get-MoveRequest ab.
PS C:\> Get-MoveRequest -Identity "Jordy.Twin@contoso.com" | Get-MoveRequestStatistics | ft DisplayName,StatusDetail,TotalMailboxSize,TotalArchiveSize,PercentComplete DisplayName StatusDetail TotalMailboxSize TotalArchiveSize PercentComplete ----------- ------------ ---------------- ---------------- --------------- Jordy Twin Completed 231.6 MB (242,877,775 bytes) 0 B (0 bytes) 100Das Verschieben des Postfachs wird abgeschlossen. Wenn dies nicht der Fall ist und Sie den Postfachverschiebungsantrag nicht abschließen können, können Sie den Verschiebungsantrag anhalten und fortsetzen.
Informationen zum Implementieren des nächsten Schritts zum Entfernen der abgeschlossenen migrierten Batches finden Sie unter Entfernen abgeschlossener Migrationsbatches.