I stumbled upon this error while trying to migrate a mailbox back from Exchange Online to Exchange On-Premises.
MigrationPermanentException: Cannot find a recipient that has mailbox GUID %
The reason for executing this action was the validation of my rollback plan.
It turned out I was trying to migrate a mailbox that had never been created in my on-premises Exchange. The mailbox was created in Office365 directly.
Though, I still wanted to offboard the mailbox from Office365 to Exchange 2016 on-prem, so here’s what I needed to do:
- Verify that the user has no on-prem Exchange GUID.
- In an on-premises Exchange Shell, run:
Get-RemoteMailbox %username%| FL ExchangeGUID
- In an on-premises Exchange Shell, run:
- Obtain the GUID from the Exchange Online mailbox
- In an Exchange Online / Office365 Powershell session, run:
Get-Mailbox %username% | FL ExchangeGuid
- In an Exchange Online / Office365 Powershell session, run:
- Set the Exchange Online GUID to the on-prem user.
- In an on-premises Exchange Shell, run:
Set-RemoteMailbox %username%
- In an on-premises Exchange Shell, run:
Now, delete the original Migration Batch (the one that failed). In my experience, it takes ages to resume and sync the mailbox once again. It’s quicker to recreate the Migration Batch
Later on, you could also check the Attribute Editor in Active Directory Users and Computers. The ExchangeGUID is also reflected here, in the Attribute msExchMailboxGuid
It turned out I was trying to migrate a mailbox that had never been created in my on-premises Exchange. The mailbox was created in Office365 directly.
Though.
Glad to visit your blog. Thanks for this great post that you share to us.