The SBS setup process has a number of log files that document the steps taken during the installation of the server. Unfortunately, because different teams within Microsoft developed each of the component installation processes, not all the log files are stored in the same location. Table 4.5 lists the locations of the log files for the installation process. Table 4.5. Locations of SBS Installation Log FilesC:\Program Files\Microsoft Integration\Windows Small Business Server 2003\Logs | Log files for the SBS installation process, including the errorlog.txt file | C:\Documents and Settings\Administrator\Local Settings\Temp | More logs from the setup process, including addusr.log, errorlog.txt, ldif.log, | | Microsoft Windows SharePoint Services 2.0 Setup(0001).txt, and SearchSetup.log | C:\Exchange Server Setup Progress.log | Log file for the Exchange installation | C:\Program Files\Microsoft Windows Small Business Server\Support | Log files for the configuration wizards, including the CEICW, Add User Wizard, Backup Wizard, and Monitoring Wizard |
Best Practice: Install SBS Three Times General wisdom in the SBS community is that to fully understand the installation process, you should go through three installs before attempting a production installation. The first time you do an install, you will get a feel for all the steps involved in the process. The second time, you will see more of the customization options available. By the third install, you will be comfortable with the potential hiccups in the process and be able to customize as needed. Because an SBS server can take so many different configurations (one NIC, two NICs, Standard, Premium with SQL but no ISA, Premium with SQL and ISA, and so on.), you should try to go through a dry run of the installation process on a test box or in a virtual machine configured with similar settings to what you will be using in production. This helps the final installation go more smoothly. |
In general, if an error is encountered during the setup process, the error dialog indicates which log file to review. This is not always the case, and becoming familiar with the log files and their locations is instrumental to successfully troubleshooting installation issues. Two key install files are the errorlog.txt and eventlog.txt files located in the C:\Program Files\Microsoft Integration\Windows Small Business Server 2003\Logs directory. The eventlog.txt file tracks all the steps the installation process takes during the setup process. The following sample listing of this file documents the steps taken during the networking setup and domain configuration: [View full width] [mm/dd/yy,18:59:00] Setup.exe: ISetupManager::RunInstallFromList(IP INSTALL) starting [mm/dd/yy,18:59:00] WizardUI: entering CWizardUI::RunningComponent() [mm/dd/yy,18:59:01] Networking Configuration: RAS configuration success [mm/dd/yy,18:59:03] Networking Configuration: Networking->SetIpInformation() [mm/dd/yy,18:59:03] Networking Configuration: About to BCreateProcess() : netsh interface ip set address name={151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9} source=STATIC 192.168.16.2 255 .255.255.0 NONE [mm/dd/yy,18:59:21] Networking Configuration: Networking->SetIpDNS() [mm/dd/yy,18:59:21] Networking Configuration: About to BCreateProcess() : netsh interface ip delete dns name={151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9} 169.254.142.195 [mm/dd/yy,18:59:27] Networking Configuration: Networking->SetIpWINS() [mm/dd/yy,18:59:27] Networking Configuration: About to BCreateProcess() : netsh interface ip delete wins name={151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9} 169.254.142.195 [mm/dd/yy,18:59:30] Networking Configuration: About to BCreateProcess() : netsh interface ip delete wins name={151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9} 169.254.142.195 [mm/dd/yy,18:59:35] Networking Configuration: Renaming server NIC :{151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9} [mm/dd/yy,18:59:36] Networking Configuration: Did not disable the selected NIC :{151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9} [mm/dd/yy,18:59:36] Networking Configuration: Disabled all but selected NIC [mm/dd/yy,18:59:36] Networking Configuration: Entering DisableSharedAccessService() [mm/dd/yy,18:59:36] Networking Configuration: SharedAccess service is installed... [mm/dd/yy,18:59:36] Networking Configuration: SharedAccess service is RUNNING... stopping the service. [mm/dd/yy,18:59:37] Networking Configuration: Disabling the SharedAccess service... [mm/dd/yy,18:59:38] Networking Configuration: Exiting DisableSharedAccessService() [mm/dd/yy,18:59:42] Networking Configuration: TCP/IP binding order is changed successfully [mm/dd/yy,18:59:42] Networking Configuration: NetBiosOptions set for Selected NIC [mm/dd/yy,18:59:42] Networking Configuration: Networking->ConfigureSBSInstall(): Checking to see if we want DHCP or WINS. [mm/dd/yy,18:59:42] Setup.exe: GetGlobalCustomProperty(238E7F41-8C49-4bb2-9723-9917A8811BE4) [mm/dd/yy,18:59:42] Setup.exe: GetGlobalCustomProperty(238E7F41-8C49-4bb2-9723-9917A8811BE4) [mm/dd/yy,18:59:42] Setup.exe: AddGlobalCustomProperty [mm/dd/yy,18:59:42] Setup.exe: GetGlobalCustomProperty(238E7F41-8C49-4bb2-9723-9917A8811BE4) [mm/dd/yy,18:59:51] Networking Configuration: Unbound all but the selected NIC [mm/dd/yy,18:59:51] Networking Configuration: Networking->ConfigureSBSInstall(): Just prompted for path, now checking for another DHCP server present. [mm/dd/yy,18:59:51] Networking Configuration: Networking install. Attempting to detect DHCP server. Call to DHCP detection function returned: IP: 34646208 return code: 10049 [mm/dd/yy,18:59:51] Networking Configuration: sysocmgr.exe /u:C:\DOCUME~1\ADMINI~1 \LOCALS~1\Temp\inf53.txt /q /r /I:C:\WINDOWS\inf\sysoc.inf [mm/dd/yy,19:02:13] Networking Configuration: Networking->ConfigureSBSInstall(): Looping for DHCP service. [mm/dd/yy,19:02:23] Networking Configuration: Networking->ConfigureSBSInstall(): Checking again to see if it's still running! :). [mm/dd/yy,19:02:23] Networking Configuration: Networking->ConfigureSBSInstall(): We are set to install DHCP, so let's create the batch file. [mm/dd/yy,19:02:24] Networking Configuration: Networking->ConfigureSBSInstall(): finished configuration. [mm/dd/yy,19:02:24] Networking Configuration: Networking->SetIpWINS() [mm/dd/yy,19:02:24] Networking Configuration: About to BCreateProcess(): netsh interface ip delete wins name={151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9} 169.254.142.195 [mm/dd/yy,19:02:28] Networking Configuration: About to BCreateProcess() : netsh interface ip delete wins name={151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9} 169.254.142.195 [mm/dd/yy,19:02:32] Networking Configuration: Networking:DoInstall()- SBS [mm/dd/yy,19:02:33] Networking Configuration: Networking Component SELECTED NIC - IP ADDRESS: 192.168.16.2 [mm/dd/yy,19:02:34] Networking Configuration: Networking Component NIC GUID: 151A30CD-D1EE-4CB5-B22F-8A0E9CF391D9 [mm/dd/yy,19:02:34] Networking Configuration: Networking Component SUBNET MASK: 255 .255.255.0 [mm/dd/yy,19:02:34] Networking Configuration: Networking Component GATEWAY: [mm/dd/yy,19:02:34] Networking Configuration: [mm/dd/yy,19:02:34] WizardUI: entering CWizardUI::RunningComponent() [mm/dd/yy,19:02:34] Licensing: Entering Install [mm/dd/yy,19:02:34] Licensing: Action = IT_INSTALL [mm/dd/yy,19:02:34] Licensing: Entering DoInstall [mm/dd/yy,19:02:53] WizardUI: entering CWizardUI::RunningComponent() [mm/dd/yy,19:02:53] Domain Configuration: CWinwKCfgDCPromo::DoInstall [mm/dd/yy,19:02:53] Setup.exe: GetGlobalCustomProperty(238E7F41-8C49-4bb2-9723-9917A8811BE4) [mm/dd/yy,19:03:54] Domain Configuration: WriteNTNF [mm/dd/yy,19:03:54] Domain Configuration: SetExtTimeSyncKey : regkey successfully set to NoSync [mm/dd/yy,19:03:55] Setup.exe: GetGlobalCustomProperty(B51015E7-26A5-4c8f-B871-26ABA9BEFB65) [mm/dd/yy,19:03:55] Setup.exe: ISetupManager::PersistTheData() outputting information to [C:\Documents and Settings\Administrator\Local Settings\Temp\SIT11904.tmp\REBOOT.INI] [mm/dd/yy,19:03:56] Setup.exe: ISetupManager::PersistComponentData() starting [mm/dd/yy,19:03:56] Setup.exe: GetGlobalCustomProperty({8C212B25-D815-11D2-ACD9-00C04F8EEBA1}) [mm/dd/yy,19:04:00] Setup.exe: ISetupManager::PersistComponentData() completing [mm/dd/yy,19:04:01] Setup.exe: IsRunningUnattended [mm/dd/yy,19:04:01] Setup.exe: AddGlobalCustomProperty [mm/dd/yy,19:04:02] Setup.exe: GetGlobalCustomProperty({9843461C-2F7A-4000-B91C-2DDD224C9E91}) [mm/dd/yy,19:04:02] Setup.exe: AddGlobalCustomProperty [mm/dd/yy,19:04:07] WizardUI: entering CWizardUI::PromptForReboot() [mm/dd/yy,19:04:07] Setup.exe: GetGlobalCustomProperty({E0C022B6-2029-11D3-8DFC-00C04F797FB8}) [mm/dd/yy,19:04:07] Setup.exe: GetGlobalCustomProperty(CEE76608-9790-4069-AAF6-ED6348C29032) [mm/dd/yy,19:09:37] Domain Configuration: Force rebooting the machine for dcpromo. [mm/dd/yy,19:09:38] Domain Configuration: CWinwKCfgDCPromo::DoInstall: exiting. In this log sample, you can see the wizard change the Internal NIC from the APIPA address of 169.254.142.195 to the default of 192.168.16.2 and look at all the DHCP and WINS settings. Then it logs the dcpromo process and reboots the server so that the dcpromo process can complete. When errors are encountered during setup, a note is logged in the eventlog.txt file. A sample of these notes follows: [View full width] [mm/dd/yy,18:30:37] setup.exe: ***ERRORLOG EVENT*** : ISetupComponent had an InstallProblem while trying to set install action override: Microsoft Exchange Messaging and Collaboration Services [mm/dd/yy,18:30:38] setup.exe: ***ERRORLOG EVENT*** : ISetupComponent had an InstallProblem while trying to set install action override: Microsoft Exchange System Management Tools [mm/dd/yy,18:30:38] setup.exe: ***ERRORLOG EVENT*** : ISetupComponent had an InstallProblem while trying to set install action override: Microsoft Exchange Domain Preparation [mm/dd/yy,18:30:38] setup.exe: ***ERRORLOG EVENT*** : ISetupComponent had an InstallProblem while trying to set install action override: Microsoft Exchange Forest Preparation [mm/dd/yy,18:30:38] setup.exe: ***ERRORLOG EVENT*** : Could not set IR_MAINT on component: Updating Configuration The ***ERRORLOG EVENT*** tag indicates that the item has been logged in the errorlog.txt file, and more information about the error can be found in that file. When you look in the errorlog.txt file, you will find information with the same date and time stamp as listed in eventlog.txt, and following those lines will be additional information about the errors encountered. The following lines are from the errorlog.txt file associated with the errors listed previously: [View full width] [mm/dd/yy,18:30:37] setup.exe: [2] ISetupComponent had an InstallProblem while trying to set install action override: Microsoft Exchange Messaging and Collaboration Services [mm/dd/yy,18:30:38] setup.exe: [2] ISetupComponent had an InstallProblem while trying to set install action override: Microsoft Exchange System Management Tools [mm/dd/yy,18:30:38] setup.exe: [2] ISetupComponent had an InstallProblem while trying to set install action override: Microsoft Exchange Domain Preparation [mm/dd/yy,18:30:38] setup.exe: [2] ISetupComponent had an InstallProblem while trying to set install action override: Microsoft Exchange Forest Preparation [mm/dd/yy,18:30:38] setup.exe: [2] Could not set IR_MAINT on component: Updating Configuration [mm/dd/yy,18:58:02] WizardUI: [2] ISetupManager::GetGlobalCustomProperty() failed in CPageBase::GetGlobalProperty(): GUID = {F205AE18-9D39-4E3C-A4BA-12FBA060ED91} [mm/dd/yy,20:40:28] Microsoft Integration: [2] ISetupDataFile::GetPropertyValue() failed for account information in ISetupManager::LoadPersistantComponentData(): filename = C: \Documents and Settings\Administrator\Local Settings\Temp\SIT11904.tmp\REBOOT.INI, component ID = {829300FF-C155-11D2-92EF-00C04F79F1A8}\ {DC3074B0-7DE8-43C5-B907-E9100CB5FFF2}, property name = (null) [mm/dd/yy,20:40:29] Microsoft Integration: [2] ISetupDataFile::GetPropertyValue() failed for account information in ISetupManager::LoadPersistantComponentData(): filename = C: \Documents and Settings\Administrator\Local Settings\Temp\SIT11904.tmp\REBOOT.INI, component ID = {829300FF-C155-11D2-92EF-00C04F79F1A8}\ {F333D98A-C152-11D2-92EF-00C04F79F1A8}, property name = (null) [mm/dd/yy,20:40:36] Microsoft Integration: [2] ISetupComponent::SetInstallActionByUniqueID () failed in ISetupManager::LoadPersistantComponentData(): component name = {685BC054-BB6F-46DB-8DB2-C2DB17DE3E8F}\{1F3267B2-721A-49E5-B688-3A10B81C0A8D}, action id = 2 [mm/dd/yy,20:40:37] setup.exe: [2] ISetupManager::AddGlobalCustomProperty failed in ISetupManager::LoadPersistantData() ({df8ff64a-1967-4871-9e32-ca2f819bab81}) [mm/dd/yy,20:40:37] setup.exe: [2] ISetupManager::AddGlobalCustomProperty failed in ISetupManager::LoadPersistantData() ({c248d3e3-632d-4435-888a-83035c144737}) [mm/dd/yy,20:52:25] WizardUI: [2] ISetupManager::GetGlobalCustomProperty() failed in CPageBase::GetGlobalProperty(): GUID = {FBCCE6F3-9E2D-464D-A4E7-12FBFD515395} [mm/dd/yy,21:23:55] Server Configuration: [2] An error occurred while accessing domain information. Open Active Directory Users and Computers, and verify that objects appear. Rerun Setup. [mm/dd/yy,21:23:56] Server Configuration: [2] CSuiteHelpComponentRoot::PreInstall: RefreshAdmin failed with error [80004005]! Best Practice: Use err.exe to Look Up Microsoft Error Codes In the last line of the errorlog.txt sample listing, there is an error code [80004005]. Many Microsoft errors are listed as eight-digit hexadecimal values or possibly as a decimal value such as -2147467259. Microsoft provides a tool called err.exe that can help translate this value into a more meaningful description. err.exe is actually provided as a download from the Exchange download section at Microsoft, but the tool reveals information about errors for more than just Exchange. To locate this tool, Google "Microsoft err.exe" and select the link from the Microsoft downloads section. Run the downloaded program to extract the program and its associated documentation to a PC's hard drive. err.exe is a command-line tool that must be run from a command prompt to view its output successfully. To see what error 80004005 is, run err 80004005 from the command prompt. The following output from the command indicates that 8004005 is a generic error: C:\>err 80004005 # for hex 0x80004005 / decimal -2147467259 : DDERR_GENERIC ddraw.h DIERR_GENERIC dinput.h DPERR_GENERIC dplay.h DPNERR_GENERIC dplay8.h DSERR_GENERIC dsound.h DVERR_GENERIC dvoice.h ecError ec.h MAPI_E_CALL_FAILED mapicode.h STIERR_GENERIC stierr.h E_FAIL winerror.h # Unspecified error # 10 matches found for "80004005" The output of error also gives the specific header file where the error code is listed, which can help you identify specifically which error is relevant. For example, if you were troubleshooting an Exchange problem and got this error, you would look to the MAPI_E_CALL_FAILED error as the relevant message. As with any troubleshooting tool, it can take some time to know exactly what to look for from the output of err. In most cases, this is time well spent. |
In this particular case, the errors were caused by a low memory situation, and after the memory on the server was increased, the installation process completed successfully. |