Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations wOOdy-Soft on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Replacing a 2003 DC with another 2003 DC 1

Status
Not open for further replies.
Sep 26, 2002
65
US
I have a small network with one server -- a 2003 DC. The server is performing the roles of File Server, Domain Controller, DNS server, and Print Server. Nothing fancy. I would like this new server to mirror the old one, ie same name & same IP. Once the new server is up & running, the old server will go away.

Is this feasible? Any problems? Any words of wisdom on this?

Thanks -

BW
 
You are going to make a lot of work for yourself by trying to keep the same name.

I would add this as a second DC, let your AD replicate. Transfer the 5 FSMO roles to the box. Move over all of your data and shares etc. Then gracefully remove the old server.

Take your time in moving the resources over and work smart rather than hard. Unless you have home grown apps that have the server name hard coded there should be no reason to have to keep the name the same. You can even add a CNAME record in DNS if you want the new server to respond to requests for the old name.

Use a login script to remap all of your clients network drives. No reason to do this manually. If you need a sample script let me know and I will be happy to provide one.

I hope you find this post helpful. Please let me know if it was.

Regards,

Mark
 
Star for you markdmac!

Thanks for the heads up... I am scheduled to do this today. I have a window from noon to about 4pm to get this done.

Are you talking about a normal login script? If so, I believe I have that covered. If not, please send a sample.

The only reason for keeping the same name is because of the printer shares and a medical package that uses the name of the server. The medical package is no big deal -- it's just a matter of changing an .ini file and copying it to each workstation. Is there an easier way to change the server name on each workstation in regards to the printer share (other than going to each workstation and manually changing it)?? The workstations are primarily 98se with a few XPs. It's not a big deal to manually change each one, but like you said I'm trying to work smart, not hard. This is a small network, but I do maintain a couple larger ones where this would be time-consuming -- so, I'm trying to learn from others wisdom.

Thanks again!

bw
 
OK, here you go these two scripts should be a big help for you. The first can bu used to change the value in the ini file on each workstation.

The second is my login script that I use. As you will see from the code, it can disconenct existing mappings, reconnect drives and also be used to recreate printer connections as well as delete the old printer connection. All from the comfort of your desk.

Code:
Const ForReading = 1
Const ForWriting = 2
Const ReadOnly = 1
Dim fso, fsoFile, fsoTextStream, strOldBootIni, strnewBootIni, bToggledReadOnlyAttribute,iniPath


Set fso = CreateObject("Scripting.FileSystemObject")
'Edit this line with the ini Path and file name
iniPath = "C:\Windows\module.ini"

Set fsoFile = fso.GetFile(iniPath)

bToggledReadOnlyAttribute = False
If fsoFile.Attributes And ReadOnly Then
	fsoFile.Attributes = fsoFile.Attributes - ReadOnly
	bToggledReadOnlyAttribute = True
End If


Set fsoTextStream = fso.OpenTextFile(iniPath, ForReading)
strOldBootIni = fsoTextStream.ReadAll
fsoTextStream.Close

'Here is where you specify what the old text is and what the new text is 
'In this example I am changing COMMPOLLSIZE=ON to OFF
strNewBootIni = Replace(strOldBootIni, "COMMPOLLSIZE=On", "COMMPOLLSIZE=Off")


Set fsoTextStream = fso.OpenTextFile(iniPath, ForWriting)
fsoTextStream.Write strNewBootIni
fsoTextStream.Close

If bToggledReadOnlyAttribute = True Then
	fsoFile.Attributes = fsoFile.Attributes + ReadOnly
End If

Logon Script
[script]
'==========================================================================
'
' NAME: LogonScript.vbs
'
' AUTHOR: Mark D. MacLachlan, The Spider's Parlor
' URL : ' DATE : 4/10/2003
'
' COMMENT: Enumerates current users' group memberships in given domain.
'
'==========================================================================


ON ERROR RESUME NEXT

Set WSHShell = CreateObject("WScript.Shell")
Set WSHNetwork = CreateObject("WScript.Network")

'Edit the next line with your domain name
DomainString = "DomainName"
UserString = WSHNetwork.UserName
'Bind to the user object to get user name and check for group memberships later
Set UserObj = GetObject("WinNT://" & DomainString & "/" & UserString)

'Synchronizes the time with Server our NTP Server
WSHShell.Run "NET TIME \\Server /set /y"

'Disconnect any drive mappings as needed.
WSHNetwork.RemoveNetworkDrive "F:"

'Give the PC time to do the disconnect, wait 300 milliseconds
wscript.sleep 300

'Map drives needed by all
WSHNetwork.MapNetworkDrive "U:", "\\server\users",True
WSHNetwork.MapNetworkDrive "X:", "\\server\executables",True

'Now check for group memberships and map appropriate drives
For Each GroupObj In UserObj.Groups
Select Case GroupObj.Name
'Check for group memberships and take needed action
'In this example below, ADMIN and WORKERB are groups.
Case "Admin"
WSHNetwork.MapNetworkDrive "w:", "\\Server\Admin Stuff",True
Case "WorkerB"
WSHNetwork.MapNetworkDrive "w:", "\\Server\Shared Documents",True
End Select
Next


'Remove Printers
WshNetwork.RemovePrinterConnection "\\Server\LaserJet"

'Install Printers
WSHNetwork.AddWindowsPrinterConnection "\\Server\HP5si"

'Clean Up Memory We Used
set UserObj = Nothing
set GroupObj = Nothing
set WSHNetwork = Nothing
set DomainString = Nothing
set WSHSHell = Nothing

'Quit the Script
wscript.quit

[/script]

I hope you find this post helpful. Please let me know if it was.

Regards,

Mark
 
Thanks again for all your help. I have one other question. When you say "transfer the FMSO roles" - are you saying to manually set them up on the new server or is there a way to actually transfer them from old to new?

I've learned from you today & for that I say "thank you."

BW
 
Please disregard that previous post -- that was a stupid question.. I wasn't thinking when I asked. I have transferred the roles & have shutdown the old server. We are about to see if the workstations can logon.

Thanks again!
BW
 
Good luck. Make sure you have moved over your DHCP!

I hope you find this post helpful. Please let me know if it was.

Regards,

Mark
 
I was using static IPs before (it was setup before I took the network over). I am, however, doing away with the statics & have configured DHCP.

I have one more question -

What is the proper way to remove the old server from the network? Should I demote it to a member server and then pull the plug or is it okay to just shut it down after transferring the roles? I did the "just shut it down" method (even though I considered demoting it first) and I believe that has caused problems (there are some warnings & errors in the Event Viewer).

Thanks again for your guidance & help. I hope others with inexperience in replacing a DC have learned something as I have.

Have a great weekend!

bw
 
The preferred method would be to demote the server by running DCPROMO. This will allow the server to gracefully remove itself from AD.

If this server is still around you could pwer it back up and then run DCPROMO.

This is of course not always possible due to hardware failures and replication problems or other factors. Take a look in the Windows 2000 Forum FAQ for my FAQ on Forcefully Removing a DC. Within that FAQ you will find a script that will clean the DC out fo the metadata and also remove any links to it in AD Sites and Services.

I hope you find this post helpful. Please let me know if it was.

Regards,

Mark
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top