1.SYSVOL和NETLOGOGN共享丢失
打开注册表编辑器,找到如下键值:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NtFrs\Parameters\Backup/Restore\Process at Startup 然后在右边找到BurFlags,将其值改为D4(16进制)后退出
再分别运行如下命令重启相关服务
Net stop netlogon & net start netlogon
Net stop ntfrs & net start ntfrs
这个时候丢失的SYSVOL共享和NETLOGON共享已经成功恢复。
2.重建SYSVOL和NETLOGOGN结构
由于操作系统并不会自动重建SYSVOL的目录结构,所以我们需要手动按照原有的实际结构来建立。
SYSVOL 文件夹结构:
?        domain
?        DO_NOT_REMOVE_NtFrs_PreInstall_Directory
?        Policies
?        {GUID}
?        Adm
?        MACHINE
?        USER
?        {GUID}
?        Adm
?        MACHINE
?        USER
?        {etc.,}
?        scripts
?        staging
?        staging areas
?        MyDomainName.com
?        scripts
?        sysvol(sysvol share)
?        MyDomainName.com
?        DO_NOT_REMOVE_NtFrs_PreInstall_Directory
?        Policies
?        {GUID}
?        Adm
?        MACHINE
?        USER
?        {GUID}
?        Adm
?        MACHINE
?        USER
?        {etc.,}
?        scripts(NETLOGON share)
上面的文件夹结构是不是看花了?没关系,看我的具体操作:
a.  在windows目录下新建一个文件夹叫SYSVOL
b.  在c:\windows\sysvol目录下再新建一个文件夹:domain、staging、staging areas、sysvol
c.  在C:\WINDOWS\SYSVOL\domain目录下新建两个文件夹:Policies和Scripts
d.  在C:\WINDOWS\SYSVOL\staging目录下新建一个文件夹:domain
e.  在C:\WINDOWS\SYSVOL\staging areas目录下新建一个和域名相同的文件夹,例如我的是a.com,那么就在该目录新建a.com文件夹
f.   和步骤e一样,在C:\WINDOWS\SYSVOL\sysvol目录也新建一个和域名相同的文件夹,如C:\WINDOWS\SYSVOL\sysvol\a.com,至此文件夹的结构被我们重建得差不多了。
由于接下来我们需要用到两个小工具,所以要在域控制器上安装Windows 2003 Resource kit,下载地址为:
http://www.microsoft.com/downloads/info.aspx?na=90&p=&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=9d467a69-57ff-4ae7-96ee-b18c4790cffd&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f8%2fe%2fc%2f8ec3a7d8-05b4-440a-a71e-ca3ee25fe057%2frktools.exe
运行如下命令重启NTFRS服务:
Net stop ntfrs & net start ntfrs
重启服务后,NTFRS服务会自动帮我们完善前面的SYSVOL目录结构,例如添加相应目录的隐藏属性、增加DO_NOT_REMOVE_NtFrs_PreInstall_Directory隐藏文件夹等等。运行如下命令后,得出如图8的结果表示正常
ntfrsutl ds |findstr /i "root stage"
然后利用Linkd程序来挂接相应的目录,创建如下两个交接点: (注:交接点外表像文件夹而且运转也像文件夹(在 Windows Explorer 中无法将它们与普通文件夹区分开来),但它们不是文件夹。交接点包含了与另一文件夹的链接。程序打开它时,交接点会自动将程序重新定向至交接点所链接的文件夹。而重新定向对于用户和应用程序是完全透明的。SYSVOL系统卷就是采用的这种文件夹结构)
a. C:\WINDOWS\SYSVOL\SYSVOL\域名  ----? (挂接到)     C:\WINDOWS\SYSVOL\DOMAIN
b.  C:\WINDOWS\SYSVOL\staging areas\域名   ---?(挂接到)  C:\WINDOWS\SYSVOL\staging\domain
具体命令为:
a. 在“开始“?”运行”中输入”cmd”,然后在打开的”命令提示窗口”输入:
Linkd %systemroot%\SYSVOL\SYSVOL\a.com   %systemroot%\SYSVOL\DOMAIN
Linkd "%systemroot%\SYSVOL\staging areas\a.com" %systemroot%\SYSVOL\staging\domain
b. 最好再验证一下前面的挂接操作是否都成功了
打开注册表编辑器,找到如下键值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NtFrs\Parameters\Cumulative Replica Sets\{GUID},其中GUID是类似f791c404-f37f-4634-9899d59d9397871e这样的字符串值。
然后找到右边的BurFlags,同样将其修改为D4,完成后退出注册表编辑器
运行如下命令重启服务:
Net stop ntfrs & net start ntfrs
此时打开SYSVOL目录和输入net share命令,会发现SYSVOL和NETLOGON共享都重建出来了
整个步骤进行到这里,似乎可以告一段落了。但是你在域控制器上仍有可能继续收到1058、1030的错误信息,输入UNC路径后,的确能看到SYSVOL和NETLOGON共享啊。
其实并不是我们操作错误,而是在这个演示中,我为了彻底重建SYSVOL目录将之前的删除了,所以同时也删除了所有的域策略,例如就删除了系统默认的两条策略““域安全策略”和“域控制器安全策略”。因为GPO策略信息是以文件的形式保存在C:\WINDOWS\SYSVOL \domain\Policies这个路径下的。尽管我们重建了SYSVOL目录,但是并没有重建策略文件,所以导致事件日志报错。当然,““域安全策略”和“域控制器安全策略”也就无法打开咯
如何解决上面的问题呢?我认为至少有3个方法可以解决:
a.  最简单也是最值得推荐的方法就是直接从别的域控制器上将以上的策略文件拷贝到该域控制的C:\WINDOWS\SYSVOL\sysvol\a.com\Policies目录下。如图19。不要告诉我你没有其他域控制器,重新安装一台虚拟机总是可以的吧。
(注:{31B2F340-016D-11D2-945F-00C04FB984F9}是““域安全策略”的文件策略;
         {6AC1786C-016F-11D2-945F-00C04fB984F9}是“域控制器安全策略”的策略文件)
b.  如果您以前曾通过GPMC备份过GPO,那么直接还原过去即可。这种方法是最没有副作用的。不止能还原系统默认的GPO,还能还原自定义的GPO设置。
c.  如果没有做过GPO的备份,又懒得从其他域控制器拷贝,那么还有一个办法是使用工具直接重建这两条策略,方法是安装Resource Kit后运行命令dcgpofix /target:both。这个命令会重新建立这两条策略到域控制器刚安装好时的默认状态,既然是重建那么你曾在这两条策略上做的设置都会清空,这点请注意。
(注:运行dcgpofix时如果提示“此域的 Active Directory 架构版本和此工具所支持的版本不匹配。”,那么请将命令修改为dcgpofix /ignoreschema /target:both忽略架构版本。之所以有这样的提示是因为我的系统现在是2003 SP2,而Resource Kit工具包是配合2003的,没有找到专门匹配2003SP2的资源包,其实不必理会,直接忽略警告信息就OK。)