Evan Dodds - Microsoft Exchange Server Blog

Exchange, Exchange administration stuff, and other assorted ramblings

Blogs

Exchange Special Mailboxes Part 1 - System Mailbox

  • Comments 18
  • Likes

Every now and then, people ask about one (or all) of the system-related mailboxes on Exchange 2003 servers. There are actually three in particular that people frequently notice and confuse: SystemMailbox{guid}, System Attendant Mailbox, and SMTP (servername-{guid}) Mailbox. There are a bunch of common questions, which I will try to address in the next few posts.

 

SystemMailbox{guid}

What is it and what is it used for?

 

In the SystemMailbox{guid} mailbox you can find the following structure:

 

 Private Store - Schema-root Hierarchy

 

and, underneath “Top of Information Store”:

 

 Private Store - Store Events Hierarchy

 

The schema-root hierarchy of folders provide the structure for defining the schema (which is principally stored in the exchangeV1 folder). The StoreEvents hierarchy holds any ExOleDB (“store”) event sinks attached to this mailbox store. Note that MAPI public folder stores also have roughly this same set of folders – one schema-root per hierarchy and a StoreEvents folder for each public folder store, possibly explaining many of those extraneous folders you’ve seen in your NON_IPM_SUBTREE!

 

Where can it be found?

 

There are two parts to each SystemMailbox – the mailbox itself, and an associated directory object. The mailbox object is located in its respective mailbox store. The directory object is located in the Microsoft Exchange System Objects (MESO) folder of the AD, along with all the other public folder and system directory objects. You may have to turn on Advanced view in AD Users and Computers to see this folder at the root of the domain naming context.

 

What is the GUID?

 

The GUID in the SystemMailbox{guid} format is the “objectGUID” of the mailbox store with which this SystemMailbox object is associated. This can be useful to know if you have a couple of different SystemMailbox{guid} directory objects sitting in the MESO container and you want to know which one relates to a particular MDB store.

 

When does it get created?

 

Whenever you mount a mailbox store, one of the checks it runs through is whether or not a SystemMailbox{guid} object is in place. If it can’t find one, it looks in the directory for the SystemMailbox{guid} directory object within the MESO container, and then piggy-backs off that to create the SystemMailbox{guid} mailbox object within the mailbox store.

 

Can it be moved and/or how do I recreate it?

 

There shouldn’t be any need to move it – remember, each MDB has its own GUID associated with a particular instance of SystemMailbox{guid}.

 

Following the train of thought in the “When does it get created?” question, if the directory object is missing, this won’t work and the mailbox object will not be created. In that case, you may want to have a look at KB.316622 which will walk you through recreating this directory object.

 

What happens if I don’t have a proper SystemMailbox{guid}?

 

If you don’t have a fully functioning SystemMailbox{guid} in place, there’s a very good chance EXOLEDB event sinks will not function.

 

(Added some more on Dec 21, 2004):

 

How can I log onto the SystemMailbox mailbox?

 

Have a look at KB.253784 for the steps. Updated Jan 25,2005: As another method, have a look at MFCMAPI (http://support.microsoft.com/kb/291794). MFCMAPI can be used to logon to the Systemmailbox without creating an explicit profile. Just fire it up, logon with whatever profile you want, then select “Get Mailbox Table” from the MDB menu. Finally, double-click on the mailbox you want to open up. Presuming you have proper rights, you’re right in!

 

SHOULD I log on to the SystemMailbox mailbox?

 

Probably not. I can’t think of any good reasons for accessing this mailbox without PSS directing you to do so.

 

But what if there are lots of messages in there? My SystemMailbox says it has 401 total items comprising 361kb of data and I’m desperate to reclaim this 1/3 of a megabyte of space!

 

This is the size of the SystemMailbox with the schema definitions in it. This is expected and should not be altered.

 

(And added more on Dec 27, 2004):

Should I delete it? Do I have to delete it before I can uninstall the Exchange server?

 

Nope, definitely should not delete it. If you’re getting the error “One or more users currently use this mailbox store. These users must be moved to a different mailbox store or be mail disabled before deleting this store. ID no: c1034a7f Exchange System Manager” when trying to remove the mailbox store or uninstall the server, this is not due to the SystemMailbox Mailbox. Have a look at KB.279202 for more information on how to determine which mailbox is causing this behavior.

Comments
  • Cool posting! But, for what reason does the Systemmailbox exist? Only for running EXOLEDB event sinks?

    Christian

  • Exchange-faq.dk - Din portal til Microsoft Exchange Server information

  • Exchange-Digest.com

  • Christian -

    Pretty much. The SystemMailbox exists principally to hold the schema information for event sinks.

    Evan

  • The size of my SystemMailbox is 1,256 items using 2,609 KB. Is all of this stuff necessary?

  • Shon -

    Not knowing exactly what's making up the additional items in that mailbox above and beyond the standard schema definitions, I can't really tell you if it's all necessary. That said, things don't randomly get put into the SystemMailbox, so if it's in there it probably belongs there. Plus, 2.6mb is not a particularly large size; I would leave it as is.

    Evan

  • Evan Dodds posted a great series on Exchange special mailboxes on his blog. There were 3 parts in that...

  • Jason Nelson goes into a bunch of more and better detail on the specific Exoledb-related folders in the...

  • Jason Nelson goes into a bunch of more and better detail on the specific Exoledb-related folders in the...

  • PingBack from http://www.varlog.us/?p=14

  • PingBack from http://telnetport25.wordpress.com/2007/10/20/how-to-selectively-purge-mailboxes-using-a-script-exchange-2003-another-go/