修复SYSVOL和NETLOGON共享
对Windows活动目录有所了解的管理员应该对SYSVOL不陌生,它是用来存储域公共文件服务器副本的共享文件夹,例如我们用得最多的组策略设置、脚本等都是存在这个共享目录中的。如果组织内有多台域控制器,那么它们就在域中所有的域控制器之间通过FRS服务相互复制。而NETLOGON共享则是SYSVOL目录中一个文件夹Scripts的共享名,顾名思义就是用来保存脚本信息的。SYSVOL文件夹的重要性不想多说,然而有的时候它就偏偏出问题,导致活动目录AD故障层出,通常组策略无法执行,在域控制器或成员机器上的事件日志中每隔5分钟就记录ID号为1058和1030的错误消息,让人很是恼火。而通常遇得最多的SYSVOL问题就是如下两种:
1.SYSVOL和NETLOGON共享丢失。这种情况在辅助域控制器上通常会出现,但有时也在第一台域控制器上也可能会出现这种情况。另外,当对活动目录执行灾难还原后也有可能遇到这个情况
2.管理员有意或无意的删除了整个或部分SYSVOL目录中的文件,这种情况在管理员误操作时遇得比较多,我就曾遇到有人将SYSVOL迁移到E盘,然后误操作将E盘格式化
一、先来解决第一个常见问题,假设只是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
4.
这个时候我们再来看看SYSVOL共享有没有恢复。丢失的SYSVOL共享和NETLOGON共享已经成功恢复。
二、将SYSVOL文件夹全部删除,然后重建SYSVOL目录树中的内容和重建共享
由于操作系统并不会自动重建SYSVOL的目录结构,所以我们需要手动按照原有的实际结构来建立。
SYSVOL 文件夹结构:
• 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,至此文件夹的结构被我们重建得差不多了。
1. 由于接下来我们需要用到两个小工具,所以要在域控制器上安装Windows 2003 Resource kit,下载地址为:
2. 运行如下命令重启NTFRS服务:
Net stop ntfrs & net start ntfrs
3. 重启服务后,NTFRS服务会自动帮我们完善前面的SYSVOL目录结构,例如添加相应目录的隐藏属性、增加DO_NOT_REMOVE_NtFrs_PreInstall_Directory隐藏文件夹等等。运行如下命令后,得出如图的结果表示正常
ntfrsutl ds |findstr /i "root stage"
4.然后利用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
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NtFrs\Parameters\Cumulative Replica Sets\{GUID},其中GUID是类似f
然后找到右边的BurFlags,同样将其修改为D4,完成后退出注册表编辑器,如图
(注:第6步修改的注册表键值会在第7步操作后自动清除回到默认值)
Net stop ntfrs & net start ntfrs
8.此时打开SYSVOL目录和输入net share命令,会发现SYSVOL和NETLOGON共享都重建出来了
a. 最简单也是最值得推荐的方法就是直接从别的域控制器上将以上的策略文件拷贝到该域控制的C:\WINDOWS\SYSVOL\sysvol\a.com\Policies目录下。如图19。不要告诉我你没有其他域控制器,重新安装一台虚拟机总是可以的吧。
(注:{31B
{
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。)
12 此时再打开事件查看器,如图20,每隔5分钟出现一次的红叉终于没有了,整个世界清净了。