Our organization keeps our terminated user mailboxes for a very long time. We keep them active for a number of reasons, but most can be summed up as “we like to have the information available if we need it.” That being said, we don’t really like having the mailboxes on our production (read “high speed/high cost disks”) Exchange mailbox servers. So, we created two new servers in each data center which will house the terminated user mailboxes. For the purposes of the script, I’m going to call the Data Centers, “East” and “West.” Since we want user mailboxes to remain within the data center which is associated with the user’s office, we need to check the data center to office mapping, which I’ve done (perhaps inelegantly) with a hash table. I’m going to use fictitious names for the offices as well. There are a few caveats that I’ve put at the top of the page on how we determine if a user is terminated or not, but the script should be mostly readable. I’m definitely looking for feedback on this one, so please hit me up.