We were recently setting up a test lab with an old version of Exchange 2007 to replicate a customers environment and we had created the required 250 users in Active Directory using some scripts but we also had to then create the mailboxes for these accounts.
Not wanting to sit there manually creating all these mailboxes, we used a quick Powershell command that had it done in 30 seconds.
Exchange Management Shell
All you need to do is to run the following command in your Exchange Management Shell (EMS):
Get-User -OrganizationalUnit "LAB/Users" | Where-Object{$_.RecipientType -eq "User"} | Enable-Mailbox -Database "LABMBXMBX1"
where:
- “LAB/Users” – The OU you want to enable the mailboxes on
- “LABMBXMBX1” – your Exchange database where you want to create the mailboxes on
You can also add further parts to your command to scale down the search for users based on Company or Department etc. To this, just add it to the “Where-Object” part – so an example:
Get-User -OrganizationalUnit "LAB/Users" | Where-Object{$_.RecipientType -eq "User" -and $_.department –eq "Sales" -and $_.company -eq "Lab Company"} | Enable-Mailbox -Database "LABMBXMBX1"
Just change the Sales and Lab Company to whatever you require.
Once you have run this command you should check in your Exchange Management Console and you should then see all the mailboxes that have been created for you.
FAQ
What does EMS stand for?
EMS stands for Exchange Management Shell
Will this work with newer versions of Exchange?
Although we have not tested it, it should work on more recent versions of Microsoft Exchange.
Feedback
If you have any feedback or queries on this guide, please leave us a message below and we will get back to you when we can.
More Guides You Might Have Missed
- Exchange Shell – All Permissions on all Mailboxes
- Get folders and sizes for all mailboxes using Exchange Shell
- Exchange Shell – Get all Shared Mailboxes Information
- Exchange Shell – Export all shared mailbox permissions to CSV
- Exchange Shell – Get all shared mailboxes with primary SMTP
- SCCM – Report on PST File Locations
- SCCM – Create a device collection based on Exchange Server role
- Send-As Exchange Universal Distribution Group
- Exchange – Hide Contacts from Address Book
- Exchange – Get Dynamic Distribution Group Individual Members Email Addresses
- Exchange – Export Contacts to PST using Powershell
- Exchange – Disable & Enable Mailbox Features based on Organisation Unit
- Exchange Server – Get Mailbox Folder Sizes
- Remove Deny Permissions from Exchange Mailbox using Powershell
- Export Exchange Mailbox Address Details to CSV
Gear We Recommend
Testing configs is easier with a dedicated admin machine set up right. Here’s the kit we use.
Browse our Windows Admin Toolkit picks on AmazonAs an Amazon Associate, TechyGeeksHome earns from qualifying purchases.
Discover more from TechyGeeksHome
Subscribe to get the latest posts sent to your email.