Monday, April 25, 2011

Memory test Loop on restart, very interesting.


I had this issue working on a clients server recently.

Issue : Whenever the server ( Windows server 2008 Sp1 ) was rebooted , the memory diagnostic started running.

If you try to Use Esc key to kill it, the server would restart the diagnostic.

Resolution :

This Issue indicates that there may be problem with the hardware. After research and discussion with the client came to this resolution:

Removed the Memory diagnostic from the boot sequence using WinRE

bcdedit /bootsequence {memdiag} /remove .

This offers temporary relief as we can get the server to functional state.

Client will run hardware diagnostic on the server provided by hardware manufacturer.

Sunday, April 24, 2011

SBS log files & file locations.


This is a List if Important log files for SBS 2003. These are very helpful in troubleshooting issues with corresponding technology.

%sbsprogramdirectory% = c:\program files\microsoft small business server

%systemroot% = c:\windows

The location can be cut and paste into the “Run” Box



Log File


Details contained

SBS Backup


Issues related to Ntbackup and backup failure.


%programfiles%\Microsoft Integration\Windows Small Business Server 2003\Logs\Errorlog.txt

Logs issues related to installation of Windows Small Business server SP1 (not windows SP1)



Logs Failures while running ICW (internet connection wizard). Helpful in resolving all failures in ICW.

Exchange 2003 SP1

%systemdrive%\Exchange server setup progress.log

Logs the events in installation of Sp1 for exchange 2003

Windows 2003 SP1

%systemroot%\svcpack.log, %systemroot%\setupapi.log

Logs the events in installation of Windows server SP1

IIS Logs


Logs all communication with IIS , Logs for directories are in specific folders. W3SVC1 in most cases would be Default website


Server 2003\Logs\SBSMSI-ActiveSync.log

Logs ActiveSync activity



SBS 2008

Log File


Details contained


%sbsprogramdir%\Windows Small Business Server\Logs

Logs all activities in "Connect to internet" wizard


%sbsprogramdir%\Windows Small Business Server\Logs

Logs all activities in "Setup your internet" wizard


%sbsprogramdir%\Windows Small Business Server\Logs

Logs all errors while installation or migration of SBS 2008. Useful in finding reason for failed migration


%sbsprogramdir%\Windows Small Business Server\Logs

Similat to errorlog.txt . Logs all activity while installation or migration of SBS 2008. Useful in finding reason for failed migration


%sbsprogramdir%\Windows Small Business Server\Logs

Logs all activities in "Fix My Network" wizard


%sbsprogramdir%\Windows Small Business Server\Logs\WebWorkplace

Logs activity realted to Web Workpalce which contains RWW , OWA , Exchange etc


%sbsprogramdir%\Windows Small Business Server\Logs\pop3connector

Logs all activities of POP3Connector wizard

Exchange connector logs

C:\Program Files\Microsoft\Exchange Server\TransportRoles\Logs\ProtocolLog

Contains logs for Exchange send and receive connector, helpful in troubleshooting issues related to Email Flow on the server.

Tuesday, February 1, 2011

How To Backup IIS 7.0 Configuration


This post will discuss the procedure to backup the configuration of IIS.

As a best practice , It is adviced to take a backup before making any changed to your system.However , taking a complete backup to make changed only to IIS would be unfair.

There may be many scenarios that you would like to take a backup of the IIS configuration. I have had multiple issues where I have seen IIS websites not working because of changes made to the settings like authentication type or SSL settings.

The following set of commands will enable you to take a backup of IIS and restore the same when needed.


To take a backup, Open Command prompt with administrator privileges

Change the directory to C:\Windows\System32\inetsrv

to take a fresh backup

run “appcmd add Backup ‘Name of Backup’

To restore backup

appcmd restore backup ‘Name of Backup’

To see all available backups

appcmd list backup

Monday, January 31, 2011



Distributed Component Object Model :

DCOM is next-gen Component Object Model (COM). DCOM allows an application's component reside on different computers, which means that the application don't need to be concerned that one COM object might be on the local computer and another might be across the LAN on the server or another workstation. DCOM thus provides location transparency, which simplifies developing distributed applications. DCOM isn't a self-contained and relies heavily on RPC to carry its work.


You may notice that when you get error “RPC server unavailable” , DCOM on one of the machines is unavailable. Fixing DCOM may Fix the RPC issue


DCOM is designed for use across multiple network transports, including Internet protocols such as HTTP. DCOM is based on the Open Software Foundation's DCE-RPC spec and will work with both Java language applets and ActiveX components through its use of the Component Object Model (COM).


Distributed Component Object Model extends the Component Object Model (COM) to support communication among objects on different computers—on a local area network (LAN), a wide area network (WAN), or even the Internet. With DCOM, your application can be distributed at locations that make the most sense to your customer and to the application.


Because DCOM is a seamless evolution of COM, you can take advantage of your existing investment in COM-based applications, components, tools, and knowledge to move into the world of standards-based distributed computing. As you do so, DCOM handles low-level details of network protocols so you can focus on your real business.


The benefits of DCOM:


  • Code Sharing and Reuse
  • Object Oriented Programming
  • Programming language-independent (C++, VB, Java, etc)
  • Prevents DLL mismatches
  • COM as a Binary Standard
  • Glue between interoperable components
  • Interfaces (collection of functions)
  • Components
  • In Process (DLLs)
  • Local
  • Remote (DCOM)


Other Features

· Communications between components, even across process and network boundaries

· Dynamic loading of components




COM is used by developers to create re-usable software components, link components together to build applications, and take advantage of Windows services. The family of COM technologies includes COM+, Distributed COM (DCOM) and ActiveX Controls.


COM is used in applications such as the Microsoft Office , e.g. COM OLE technology allows Word documents to dynamically link to data in Excel spreadsheets and COM Automation allows users to build scripts in their applications to perform repetitive tasks or control one application from another.


Microsoft provides COM interfaces for many Windows application services such as Microsoft Message Queuing (MSMQ) Microsoft Active Directory (AD) and Windows Management and Instrumentation (WMI).


What is COM+?


COM+ is the name of the COM-based services and technologies first released in Windows 2000. COM+ brought together the technology of COM components and the application host of Microsoft Transaction Server (MTS). COM+ automatically handles difficult programming tasks such as resource pooling, disconnected applications, event publication and subscription and distributed transactions.

Replacing Registry hives


There are 5 registry hives , Namely


  1. SAM – Security accounts manager
  2. System
  3. Software
  4. Default
  5. Security

These are located in c:\windows\system32\config

When a system state backup is run on the computer, these hives are backed up and stored in c:\windows\repair.

If you made a change to the system or installed a new software , the server may go into a no-boot situation. This procedure is also helpful when your registry is corrupt. You may receive error on these lines:

“Windows  could not start because the following file is missing or corrupt: \WINDOWS\SYSTEM32\CONFIG\SOFTWARE or SYSTEM or its log.”


It is important to note that , once you have replaced the hives, your system will be pushed back to the configuration when you took the last backup. If you are not sure when you took the last backup, you must check the date on files in c:\windows\repair .

If you have not performed a backup since you promoted the server to Domain Controller, Do not use this procedure.

It is also possible to only replace one hive at a time , but since the hives are related , I would suggest replacing all in one go.


Steps to Follow


Boot with the Windows CD and go to recovery console

You need to enter the password , this is the first password that was entered when setting up the computer

type the following commands

cd windows

cd system32

cd config

This will take you to the following path


Now we need to rename the existing hives to .old so we can replace them with ones from repair folder

Run the following commands to rename the hives


ren system system.old

ren software software.old

ren sam sam.old

ren default default.old

ren security security.old

Once this is done , Navigate to c:\windows\repair , to do that , run these commands

cd ..

cd ..

cd repair


Once you are at c:\windows\repair>


run these commands to copy hives from repair folder to config folder


copy software c:\windows\system32\config

copy system c:\windows\system32\config

copy sam c:\windows\system32\config

copy default c:\windows\system32\config

copy security c:\windows\system32\config


Reboot the server to normal mode


If this does not work for you and you want to revert the changes, rename the files you copied from repair folder to hivename.old1 and rename the hivename.old  in config folder to hivename

Wednesday, January 19, 2011

Exchange Migration – SBS 2003 to exchange 2010 on STD 2008 server.



           Project Definition


1. Migrate SBS 2003 to windows server 2008 with exchange 2010

2. Set up DAG for disaster recovery


                               Current Environment

We have Windows SBS 2003 – one network card only

Hostname: Server

IP address:

Domain Info: 1corvette.local

Note : We have chosen not to move public folders to new folder.


Step 1 : Make sure the SBS 2003 is in a healthy state to be migrated

1. Check event viewer

Result – looks clean , no related errors reported

2. Run SBS BPA

Got errors


For more information and how to resolve the first issue refer

The other errors can be safely ignored



3. Run Dcdiag & netdiag to ensure healthy AD and DNS

Result : Both show no errors


4. Disable checksum offload on network card Refer :

Reboot required after hotfix install

5. Change exchange to native mode


Refer :




6. Raise Domain functional level & forest functional level

To raise the Domain Functional Level do the following:



  • Click Start > Administrative Tools > Active Directory Users and Computers
  • Right click on the domain name and select Raise Domain Functional Level
  • In the drop down box select Windows Server 2003 and click OK
  • To raise the Forest Functional Level do the following:
  • Click Start > Administrative Tools > Active Directory Domains and Trusts
  • Right click where it says Active Directory Domains and Trusts and select Raise Forest Functional Level.












Step 2: Introduce Windows 2008 server to the SBS domain.


Servername: CorvetteExch01

IP address:

1. Change DNS to point to SBS 2003

2. Add the server to the domain

3. Run Dcpromo to promote the server as ADC in the domain blackpt.local


4. Replicate DNS and AD . Wait for atleast 5 to 10 minutes


5. Run repadmin /syncall to confirm replication has completed



Once Completed successfully , Reboot the server.


6. Run the following commands to prepare windows server 2008 for exchange 2010 install

· D:\support\adprep\adprep32  /forestprep

· D:\support\adprep\adprep32  /domainprep

· D:\support\adprep\adprep32  /domainprep /gpprep



Step 3: Install exchange 2010



1. Open windows powershell from programs –> accessories

Run Import-Module ServerManager

Then run

Add-WindowsFeature NET-Framework,RSAT-ADDS,Web-Server,Web-Basic-Auth,Web-Windows-Auth,Web-Metabase,Web-Net-Ext,Web-Lgcy-Mgmt-Console,WAS-Process-Model,RSAT-Web-Server,Web-ISAPI-Ext,Web-Digest-Auth,Web-Dyn-Compression,NET-HTTP-Activation,RPC-Over-HTTP-Proxy –Restart

Then run

Set-Service NetTcpPortSharing -StartupType Automatic


2. Install required updates like Microsoft office filter packs.


3. Insert the exchange CD in the drive and open command prompt to run the following commands

· Run D:\setup /PrepareLegacyExchangePermissions

· Run D:\setup /PrepareSchema


4. Then start the exchange 2010 Install



Choose a typical install


5. In the screen below

Check the box for “The CAS server role will be internet facing”

Enter the URL used to access OWA or the name on the certificate on Exchange



Click Next, In the screen you get below add the SBS 2003 server





Click Ok and then Next.

Hit next to complete the installation


6. Reboot server after completion

Once the server comes up make sure the connectivity between the two DC is fine and check event viewer for any errors.



Step 4 : Move data from SBS 2003 to Exch 2010  - Use the Move request

1. Open Exchange Management Console and navigate to Recipient Configuration > Mailbox.

2. Highlight the mailboxes you want to move

3. Right click and choose New local move request



4. Select the Exchange 2010 mailbox in the target mailbox



5. Click next and then New

This will move mailboxes to Exch 2010 one by one. The mailbox that is being moved will not be accessible. This process will take a long time and depends on how fast your disk system on SBS 2003 is.


6. You can go to the properties of any move request to see how much time the process took




Offline Address Book

Generate new OAB on Exch 2010 and set to default.



Migrate Public folders

In this migration we have decided not to move Public folders .

However this procedure is best performed Via .PST file transfer

If this can not be performed via .PST you can try the following

  • · Open Exchange System Manager
  • · Navigate to Administrative Groups > First Administrative Group > Servers > Server name > First Storage Group
  • · Right click on the Public Folder Store and select Move All Replicas.  The only option that should appear in the list is your Exchange 2010 server.  Click OK.




A new certificate is created on Exchange 2010 when you install it. This will be the same certificate that is installed on SBS 2003

For a trusted certificate refer :



Uninstalling Exchange on SBS 2003

To do this click start –>  run  –>  appwiz.cpl. This will open add and remove programs window.  Highlight Windows Small Business Server 2003 in the list and click Change/Remove.
Click next on the Welcome screen, and next on the screen that follows.  Once the component screen opens pull down the drop down next to Exchange Server and select remove, as shown below. Then click next and next again.


To Manually remove exchange follow

Transfer FSMO roles

You can follow this article to transfer the FSMO roles

Dcpromo SBS 2003 and remove from domain.

Change data base location – Exchange 2003


I am back to my loved blog after a long time during which I had a vacation and couple of Migrations . I was really exited about the SBS 2003 to exchange 2010 one , It was delivered in time without any glitches. I will cover that in coming posts.


Lets talk about something simple , moving exchange database location in Exchange 2003. You will need to do this if the drive with exchange database is running out of space.


1. Create two new folders named MDBdata & MDBdata1 on the drive where you need to move the database. Make sure the NTFS permissions are same as c:\program files\exchsrvr\MDBdata

2. Copy the files pub1.edb , pub1.stm ,priv1.edb & priv1.stm to new MDBdata1 folder.

Move database path


1. Open Exchange system manager. Browse to the following location

Server –>  first storage group --> mailbox store



2. Dismount the store.


3. Right Click and select properties.


4. Go to database tab. You will see the path to the exchange database files here



5. Click browse and specify new location for the file as MDBdata folder. Perform this step for priv1.edb and priv1.stm file.

6. Click ok and exit.

7. Stop Msexchange system attendant and information store service.

8. Rename Mdbdata1 to MDBdata & vice versa.

9. Start exchange services and mount stores.

10. You can repeat the same procedure for public folder store.