Single Server Migration SBS 2003 to SBS 2008

Just for clarity, it’s not exactly SBS 2008, but it is a single server running as a domain controller and it has Exchange 2007 sp1 installed on it.

Here are the steps we went thru and some of the things I learned:

  1. Put in the HP compaq smart start cd, follow the instructions to install Windows 2008
  2. get the key from web site, the sales person usually gives you a document about the sale of windows os to the client.
  3. You can install Windows 2008 as one big C drive or carve it up, for a small company, i just do one big c drive. I run windows updates right after I install the os.
  4. Then i rename the server to what I want, setup a static ip address and reboot
  5. Then I add the new server to be a member of the domain, reboot.
  6. Then I instal the Active Directory Directory Service (this is prior to running dcpromo), the DNS service, the DHCP service, and the WINS service.
  7. Then i go to the old server, copy the adprep (under setup folder) to the c: drive from the windows 2008 cd. Then i run adprep on the old 2003 server with a /forestprep switch.
  8. Then I add the new server to be a name server (NS) for the dns zones (domain.local and _mstcs.domain.local, and any others)… even though it’s not a domain controller yet, after i run dcpromo, it makes the replication smoother for dns.
  9. Then I run dcpromo on the new server, make it a domain controller.
  10. I verify that dcpromo worked by making sure the server has a NETLOGON and SYSVOL share.
  11. I verify that the dns opens ok and that the server responds, look at the event viewer.
  12. Move the 5 FSMO roles over to the new server. Remember to run “regsrv32 schmmgmt.dll” to register the schema mmc. Then user Domains and trusts mmc to access the domain naming master, and the other three are accessed via AD Users and Computers.
  13. Set the new PDC emulator to NTP time. Do that with this command W32tm /config / /syncfromflags:manual and change the original pdc emulator to domain hierarchy via this command w32tm /config /update /syncfromflags:DOMHIER
  14. Stop and start the w32time service to verify things are working properly.
  15. Copy the shared data from one server to another. I like to use Beyond Compare. At this point, i don’t worry about NTFS rights. I just use BC to copy all the stuff.
  16. I use SetACL to backup the NTFS rights to a file and restore them. The setacl website has the documentation, but here’s the code SetACL.exe -on “c:\tools” -ot file -actn list -lst “f:sddl;w:d,s,o,g” -rec cont -bckp “c:\tools\backupacl.txt” for backup and for restore it looks like SetACL.exe -on “dummy entry” -ot file -actn restore -bckp “c:\tools\backupacl.txt”
  17. Then I install Exchange 2007 sp1, update with rollups.
  18. Create a test user with the mailbox on the new server, test mail flow back and forth between the 07 and 03 and test mail flow between  07 and internet. I sometimes have problems with the connector that the exchange installation makes between the old and new server administrative groups, i typically delete it and recreate it via powershell. I like to use mtail.exe and look at the smtp logs.
  19. Then you have to upgrade the default email policies and upgrade the address lists. You can find detailed instructions on this blog for that.
  20. Setup a UC certificate, there is an article on this blog about using digicert for creating the certificate powershell command. I like to use Digicert, they have the best price for $787 for 4 names for 3 years.
  21. Install Backup Exec and test. You have to install the ExchangeMapiCdo.MSI on the exchange server to backup / restore individual messages.
  22. Replicate Public folders including address book replicas
  23. Move mailboxes, test one first, make sure outlook updates ok.
  24. Create a send connector for the new server, test it.
  25. Configure the receive connector to allow anonymous connections
  26. Either swap ip addresses or configure incoming mail to flow to the new server at the firewall / anti-spam device.
  27. After all the outlook clients have touched the server, you can uninstall exchange on the old server.
  28. Enable and test outlook anywhere, sometimes you need to modify the registry to make it work. See this link
  29. What I found with this installation is that I CANNOT DISABLE IPV6, IF I DO, THE SERVER HANGS ON “APPLYING COMPUTER SETTINGS” AND THE EXCHANGE INFORMATION STORE SERVICE WILL NOT START. I worked an extra 5 hours last night on that issue. So learn from my mistakes… I didn’t get home until almost 11pm.
  30. Always periodically check event viewer and backup logs, that should go without saying, but this entry makes it an even 30 steps to perform this job.