Feature Article
Migrating to Windows 2000 

By Larry Lentz; reprinted from the July, 2000 issue of the PC Alamode 

Several months ago my column discussed migrating my own office network to Windows 2000. However, once I realized what I was getting into, I decided to hold off. After all Thanksgiving was fast approaching, Christmas was soon there after. Then I had to study for my SQL certification tests. And then there were taxes to do. Since I depend on my network for my business, I decided to hold off for a while.

More recently I wrote an article about a client's server where I had to restore the operating system from tape because of an RPC server not available problem. Well, when I returned to my office that evening I found I had a similar problem! I tried to install a second copy of NT on my server but couldn't because I also have Window 2000 installed.

Interesting point here about 2000. You can install it on an NT machine and dual boot to run either operating system. But once 2000 has "touched" the hard drives, you can no longer install NT on it without reformatting the drive. I didn't want to do this because I'd lose all my data!

However, since I had Windows 2000 loaded already, I did have an operational operating system I could use to restore NT from. My backup tapes from NT were created with Veritas Backup Exec 7.3, the latest version. So I tried to install it on 2000. No go! I got a message saving it wasn't compatible with 2000. Joy! Not! I have since seen adds for version 8.0 which is made for 2000. I decided to try the native backup program that comes with 2000. To my delight, it was able to read my tapes!

It actually looks like a pretty good backup program. I believe it probably originated with Veritas and is a derivative of Backup Exec. In addition to being able to backup to tape, you may now also backup to other media as well, like a floppy or another hard drive. This will be great for those who like to archive to a writable CD.

Unfortunately when I finally looked at my tapes, I realized I had been backing up my data and NOT my operating system. Bummer!

So, I decided now was the time to really switch to 2000!

My first migration concern was restoring my Exchange Server e-mail system. Since all my data files were intact, my plan was to copy them all to the Win 2K drive and install Exchange on top of them. Restoring Exchange can be a tricky business. 

This approach did not work for me for two reasons. First I discovered that my directory database, DIR.edb, was not accessible. I noted one of my NT partitions was not readable by 2000, and this was where the dir.edb likely was. So I decided to boot back into NT, endure the slow response, and see if I could copy the directory back to a 2000 readable drive. Much to my shock, NT came up without the RPC problem. I quickly backed up my NT folder and copied the dir.edb to another drive. Since my old system was once again useable, I had some time to plan my migration rather than doing it in crisis mode.

I had three major migration concerns: retaining my Exchange system, accessing my SQL data, and retaining my user database, my NT Domain info with all the user settings' permissions, etc.

You've been waiting for the second problem with restoring Exchange. That is getting all the settings the same as the original installation. To preserve my Exchange system I decided on a different approach. I already had 2000 server running on one of my workstations. I decided to install another copy of Exchange Server there. Nice thing about Exchange is that you can have multiple servers in an organization. If servers have a fast network connection they can be part of a "site". When I installed Exchange, I told it to join the site that already existed on the NT server. This way the new server takes on the characteristics of the site. Now my 2000-hosted Exchange server was joined with the original. All my directory items were replicated to the new server. I was particularly concerned about my many "custom recipients".  I was now able to move all my mailboxes from the NT server to the new.

Next I had to figure out how to preserve all my user domain info. If I simply did a fresh install of 2000 I would lose all that. Each user in NT has a unique identifier called a SID. Even if I recreated the users using the same user names and passwords, NT would consider them as different because of the SIDs. I could do an upgrade of my NT server to Windows 2000 Server. This would have (hopefully) preserved all my domain info. But what something went wrong? Then I would really have been in trouble. In my old skydiving days I would never have considered going up for a jump without a reserve chute. This was no time to change that philosophy.

I realized that I had an old hard drive laying around and decided to install it in yet another workstation on the network. I installed another copy of NT 4.0 Server and made it a BDC (Backup Domain Controller). I then took the main server (the PDC) off line and promoted the BDC to a PDC (Primary Domain Controller.) I don't know whether thls step was necessary or not, but it seemed like the thing to do at the time and was probably best. Now I had a domain controller to upgrade to Windows 2000 while preserving my original server intact.

I then installed Windows 2000 Server as an upgrade to this new NT server. Part of the process asked me if I wanted to import the domain info. YES! I now had a Windows 2000 domain controller (there are no primary or backup controllers, only domain controllers. I used the new DC (Domain Controller) to authenticate logging on from the other workstation, the one with Exchange Server. It worked great and all my settings were intact.

Now my challenge was to create another domain controller, ultimately making the real server a DC. My first attempts were to make the 2000 Exchange Server a DC. There is a nice wizard that takes you through the process. There are lots of wizards in 2000. Unfortunately I could not get it to successfully complete the process. I tried it from 2008 on the original server with the same dismal results. I messed around with this off and on for several days. Glad I still had my original server intact. That allowed me to continue operating my business in between attempts to resolve the DC problem.

Our local chapter of AMSP (Association of Microsoft Solution Providers) held their monthly meeting about this time. Since I was in charge of the meeting, I decided a panel/group discussion on our Windows 2000 experiences would be of interest. I led off the discussion with my domain controller problem. Luis Martinez with Catapult Systems said he had run into the same problem and eventually got it to work by doing a fresh install of the new DC server. I decided to give this a try. I did a fresh install of Windows 2000 Advanced Server on my original NT server. When the time came, I told it to become a controller for my 2000 domain. It worked! I now had my original server configured as a 2000 DC. My NT domain was also still intact because I was dual booting the server between NT and 2000.

Now back to Exchange Server. As you remember we left our intrepid Exchange Server installed on a workstation running 2000 server. I brought up the Exchange Administrator and removed the original NT server from the site. I did this to preclude any problem with the next step. This had a couple of unfortunate consequences though. First my public folders still resided on the original Exchange Server and had not replicated over to the new server. Not a big loss in this case but an oversight none the less. The second is the loss of my Schedule Free/Busy Connector. This resides on the first server created in a site and does not replicate. I'll cover its recovery in a future column. Since I still have my original NT Exchange intact, I could go back and recover the public folders if I desired.

Now I'm ready to set up Exchange on my 'new' 2000 server. I installed Exchange on the main server and had it join the existing site. I was then able to move all my mailboxes back over to this server.

My custom recipients replicated properly. I then disabled the temporary Exchange Server. Mission accomplished!

My next step was to reestablish my SQL server and databases. This was by far the easiest part. I first installed SQL Server 7.0 on to my 2000 server. I then copied the appropriate data and log files from my (now) old NT partitions onto the new 2000 disk. I could have left them in place but I intend to eventually wipe out the old NT drives so might as well move those files now.

SQL 7 has a neat set of stored procedures for moving databases between SQL servers. They are sp_detach_db and sp_attach_db. The former is used to remove a database from a server. I didn't need to do that since the original SQL server was no longer running as long as I booted 2000. Therefore the database files were free to be copied. Using sp_attach_db I was able to make my old databases part of my new SQL server.

For the most part my migration from an NT domain based network to a Windows 2000 Active Directory network. But I'm not finished. Now that I have my basic network in place I am now in a position to explore the many new aspects of this new and exciting operating system. My NT Lessons Learned column will have plenty of topics in the future.

Larry Lentz is an MCSE + Internet, an MCDBA and Past President of Alamo PC. He is the owner of Lentz Computer Services, a Microsoft Certified Solution Provider and the longest running advertiser in the PC Alamode. Larry has over 18 years as a computer professional. He chairs the Windows 2000, MCSE Advanced and GoldMine SIGs.