Recipe 11.3 Deleting a Site

11.3.1 Problem

You want to delete a site.

11.3.2 Solution

11.3.2.1 Using a graphical user interface
  1. Open the Active Directory Sites and Services snap-in.

  2. Click on the Sites container.

  3. In the right pane, right-click the site you want to delete and select Delete.

  4. Click Yes twice.

11.3.2.2 Using a command-line interface
> dsrm <SiteDN> -subtree -noprompt
11.3.2.3 Using VBScript
' This code deletes a site and all child containers.
' ------ SCRIPT CONFIGURATION ------
strSiteName = "<SiteName>"   ' e.g. Dallas
' ------ END CONFIGURATION ---------

set objRootDSE = GetObject("LDAP://RootDSE")
set objSite = GetObject("LDAP://cn=" & strSiteName & ",cn=sites," & _
                        objRootDSE.Get("configurationNamingContext") )
objSite.DeleteObject(0)
WScript.Echo "Successfully deleted site " & strSiteName

11.3.3 Discussion

When deleting a site, be very careful to ensure that no active server objects exist within it. If you delete a site that contains domain controllers, it will disrupt replication for all domain controllers in that site. A more robust VBScript solution would be to first perform an ADO query for all server objects using the distinguished name of the site as the base DN. If no servers were returned, then you could safely delete the site. If server objects were found, you should move them before deleting the site.

It is also worth noting that deleting a site does not delete any of the subnets or site links that were associated with the site. This would be another good thing to add to the VBScript solution. That is, before you delete the site, delete any subnets and site links that are associated with site.



    Chapter 3. Domain Controllers, Global Catalogs, and FSMOs
    Chapter 6. Users
    Appendix A. Tool List