Windows IT Pro is the leading independent community for IT professionals deploying Microsoft Windows server and client applications and technologies.
  
  
  Advanced Search 


May 2007

Automate the Windows 2003 Defragmenter Without Paying Extra

RSS
Subscribe to Windows IT Pro | See More Systems Administration Articles Here | Reprints | Or get the Monthly Online Pass—only $5.95 a month!

Download the Code Here

Defragmentation is a great way to keep workstations and servers running at their best performance. Windows Server 2003 comes with a defragmenter: dfrgntfs.exe. However, you can't automate this defragmenter unless you purchase a program such as Diskeeper. I didn't have money for such a program in my budget, so I created and scheduled a batch file named Defrag.bat.

As Listing 1 shows, Defrag.bat is a simple program. It uses the defragmenter's command-line interface (defrag.exe) to run the defragmenter against each drive. However, I wasn't happy with Defrag.bat for two reasons. First, I had to let the batch file run while being left logged on with my administrator ID. Although I locked the screen for security reasons, I didn't want to leave myself logged on all the time. Second, I wanted more automation.

So, I did some digging around and found a means to automate the procedure. I found that I could use the Windows scheduler but in a different way that I didn't know was possible: I could use the AT command with a batch file.

I created a new batch file, Defrg. bat, which Listing 2 shows. Like Defrag.bat, Defrg.bat runs defrag.exe. However, Defrg.bat has a few more features than Defrag.bat. I included code that documents when the defragmenter starts and ends in a log file. I also added code that ports the defragmenter's screen output to the same log file (with some titles in between) to record which drives are being defragmented. That way, I can easily check to see whether the defragmentation operation ran and whether any errors occurred.

To use the new script, I log on to the server with my administrator ID, open a command-shell window, and run command

at 08:00pm /every:M,T,W,Th,F
  f:\Defrg.bat 

(Although this command appears on several lines here, you would enter it on one line in the command-shell window.) This command creates a new scheduled item in Scheduled Tasks that runs Defrg.bat every weeknight at 8 p.m. (which is before our backup runs).

With this new batch file, I don't need to be logged on for it to run. Because Defrg.bat is running as a system process, the defragmentation operation is performed in the background (i.e., no window comes up), but Task Manager will show that defrag.exe and dfrgntfs.exe are running. After Defrg.bat finishes, the scheduler will show 0x0 for a successful execution. However, I always check the log file to make sure no problems were encountered.

To use Defrg.bat, you simply need to replace f:\defrag.log in the code at callout A in Listing 2 with the pathname to your log file. The AT command and batch file work on Windows Server 2003, Windows XP Professional, and Windows XP Home Edition. I recommend that you make the batch file a read-only, hidden file. That way, no one can edit it so that it damages your computers when the scheduled batch runs.
—Daniel L. Gillard

See Associated Figure

End of Article



Reader Comments
My article "Extending Windows XP's Disk Defragmenter" (November 2004, InstantDoc #43924) provides a VBScript script called XDefrag.vbs that works on Windows XP and later. XDefrag.vbs provides defrag timing and event logging. Also, unlike this shell script, it can detect and defragment all local hard drives, so you don't have to edit it if your local drive letters are different.

HTH,

Bill

AbqBill April 30, 2007 (Article Rating: )


Well Bill, while your script may sound good it is never the less not accessible unless you have a subscription to yet another one of Penton's publications.

In their zeal to make money all they have done in the past few years is encourage more subscribers to cancel. Lets see the business plan now is to have smaller publications, put the good content on the web (thus defeating the purpose of a magazine) and having one subscription for every conceivable subject. Oh ya I forgot, write articles that only pertain to IT shops with 10,000 computers and multi-million dollar budgets.

In this case the web is going to kill traditional publications because they forgot who their audience is and what they want.

wtb5 May 28, 2007 (Article Rating: )


I find the article well explain and very usefull.

carlosgarcia July 19, 2007 (Article Rating: )


While I tend to agree with wtb5's comments, I found the article most useful and a great tip for those who DON'T have huge budgets for Server defraggers. More tips like this will be most welcome, thanks.

scoop1970 July 19, 2007 (Article Rating: )


All the very best to everyone for christmas and a good start to the new year.

lm1402 December 16, 2008 (Article Rating: )


You must be a registered user or online subscriber to comment on this article. Please log on before posting a comment. Are you a new visitor? Register now




Top Viewed ArticlesView all articles
WinInfo Short Takes: Week of November 23, 2009

An often irreverent look at some of the week's other news, including some post-PDC some soul searching, a Google Chrome OS announcement and a Microsoft response, Windows 7 off to a supposedly strong start, the Jonas Brothers and Xbox 360, and so much more ...

Command Prompt Tricks

One reader shares his tip for setting up the command prompt to reflect a remote path. ...

2009 Windows IT Pro Editors' Best and Community Choice Awards

Picking a favorite product from an impressive crowd of competitive offerings is never an easy task, and such was the case with our Editors' Best and Community Choice awards this year. ...


Task Automation Whitepapers From Development to Production: Streamlining SharePoint Deployment with DocAve Deployment Manager

From Development to Production: Streamlining SharePoint Deployment with DocAve Deployment Manager

Related Events Deep Dive into Windows Server 2008 R2 presented by John Savill

7 Ways To Get More From Your SharePoint Deployment Now

Configuration Manager SP1 and R2 Overview

Check out our list of Free Email Newsletters!

Task Automation eBooks Spam Fighting and Email Security for the 21st Century

A Guide to Windows Certification and Public Keys

Keeping Your Business Safe from Attack: Patch Management

Related Task Automation Resources Introducing Left-Brain.com, the online IT bookstore
Looking for books, CDs, toolkits, eBooks? Prime your mind at Left-Brain.com

Discover Windows IT Pro eLearning Series!
Clear & detailed technical information and helpful how-to's, all in our trademark no-nonsense format


Windows IT Pro Home Register FAQ for Windows WinInfo News
Europe Edition About Us Contact Us/Customer Service Media Kit Affiliates / Licensing  
SQL Server Magazine Office & SharePoint Pro DevProConnections IT Job Hound
Left-Brain.com Technology Resource Directory asp.netPRO ITTV Windows SuperSite 
 
 Windows IT Pro is a Division of Penton Media Inc.
 © 2009 Penton Media, Inc. Terms of Use | Privacy Statement