In my family, we have an established tradition: Spring doesn't really start until after the college basketball championship game. Now that Syracuse has won, my attention naturally turns to spring-related topics--including the dreaded spring cleaning. How do you clean an Exchange Server system? Exchange servers never seem to have enough disk space, so cleaning the disk is a good place to start.

The first item that needs a good spring cleaning is the transaction log files. These files, which Exchange stores in the MDBDATA directory by default, have funny names such as E000072EF.log because each log file (called a generation) is identified by a unique hexadecimal serial number. When a log file reaches its maximum size of 5MB, the Exchange Store closes it and creates a new one. The faster incoming transactions occur, the faster the Store creates new log files. If you never remove the log files, your log volume will run out of space and the Store will shut down. The only safe way to remove the log files (a process known as truncation) is to perform a full or incremental backup with a backup program that uses the Exchange backup APIs. Most people know this, but many forget to verify that backups are actually removing the log files. If the log files are still in place after you perform a full backup, something has gone amiss. Check the backup to make sure it's valid, and investigate further. Involve Microsoft Product Support Services (PSS) if necessary.

The second item that probably needs a thorough cleaning is your Badmail folder. Exchange 2000 Server keeps a directory for messages that it couldn't deliver because they were misaddressed or they bounced. This directory fills up over time; Exchange doesn't make any attempt to purge it. By default, the Badmail folder is \program files\exchsrvr\mailroot\vsi x, where "x" is the number of the SMTP virtual server to which the directory belongs; typically, you'll have only one Badmail folder--vsi 1. (The Microsoft IIS SMTP component owns the Badmail directory, so the IIS metabase controls the folder's location.) Files in the folder are named with the corresponding bad message's Message-ID header value. Removing all these files will undoubtedly free up a good amount of space in one fell swoop. To keep the files from building up in the future, you can write and periodically run a short script that clears the directory.

These two cleaning tips are small potatoes compared with the next one: Get users to clean up their Sent Items folder. More often than not, users forget that every large attachment they send lives on in their Sent Items folder. Removing those messages from Sent Items can result in significant space savings. Because of Exchange's single-instance storage mechanism, messages sent to users in the same storage group (SG) live on in the Store until the recipients delete them. But cleaning out Sent Items will at the very least remove messages sent to recipients on other servers or in other SGs.

Aside from these three big chores, you can perform several other tasks to recoup storage space. Use Mailbox Manager to clean up outdated calendar data, encourage users to run Outlook's Auto-Archive feature, or deploy message-archiving tools such as those from CommVault Systems, EDUCOM TS, KVS, and VERITAS Software. And whatever you do, make sure to clearly communicate any impending changes to users so that they don't deluge you with cries of "Where'd my mail go?"

End of Article




You must log on before posting a comment.

If you don't have a username & password, please register now.

Reader Comments

Is there a reason to keep the badmail? Wouldn't it be better to just not keep it? I just had a frontend server die because there were over 1 million files in the Badmail folder. Scripting the purging of this directory is a good Idea but not fail safe. IE the account the script runs with gets it's password changed. The script fails and 3 months later the box is dead. Is there a way to tell the SMTP virtual server to not keep the Badmail?

Jason

Is it ok to delete the log files of exchange (the E000072EF.log?)? What I mean is you delete it manually shift delete?

Anton

I would have loved to see a sample script (vbs OR batch) -- even though i know how to create simple batch

yvj66

Article Rating 3 out of 5

yvj66, thanks for your comment. I'm looking into whether we have published a script that does the cleanup Paul talks about. If we haven't yet published that script, it's definitely a good idea, and I'll talk to our scripting editor about getting someone to write it.

AnneG_editor

Article Rating 4 out of 5