域控制器缺少 SYSVOL 與 NETLOGON 共享,將導致群組原則無法套用、用戶端無法登入網域、啟動腳本失效等嚴重後果。此問題常見於副本域控制器,新網域首個 DC 亦可能發生。本文提供系統性診斷與修復流程,涵蓋 FRS 複寫拓撲、NTDS 連接物件、服務權限與資料夾結構驗證。
%SystemRoot%\SYSVOL\sysvol\<DomainName>\scripts,提供腳本下載與網域控制器定位服務。ping dc01.corp.contoso.com 回應 IP 需與 ipconfig 一致。_ldap._tcp.dc._msdcs、_kerberos._tcp.dc._msdcs)。使用 dssite.msc(Active Directory 站台與服務)檢查:
使用 repadmin /showreps <DC_Name> 驗證複寫狀態:
0 (Success)。dir \\<DC_Name>\Admin$\NtFrs\Jet\Ntfrs.jdb。ntfrsutl ds <DC_Name> 輸出中,確認:
SET: DOMAIN SYSTEMVOLUME (SYSVOL SHARE) 區段列出所有域控制器。SUBSCRIPTION 區段顯示該 DC 為訂閱者,且 Working Directory 路徑正確。標準 SYSVOL 結構應包含:
SYSVOL\
├── domain\
│ ├── DO_NOT_REMOVE_NtFrs_PreInstall_Directory
│ ├── Policies\{GUID}\{Machine,User,Adm}
│ ├── scripts\
│ ├── staging\
│ └── staging areas\
└── sysvol\ (SYSVOL 共享實際指向此處)
└── <DomainName>\scripts\ (NETLOGON 共享指向此處)
關鍵權限檢查:
secedit /configure /db %temp%\chk.sdb /cfg %windir%\security\templates\defltdc.inf /log %temp%\chk.log 對照預設安全範本驗證(Server 2003 使用 setup security.inf)。若上述步驟均正常但共享仍未出現,需執行 FRS 重建:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NtFrs\Parameters\Backup/Restore\Process at Startup = D2(非權威還原)。D4(權威還原)。0 並重啟 FRS 服務。注意: D4/D2 操作將覆蓋目標 DC 的 SYSVOL 資料,執行前務必備份 %SystemRoot%\SYSVOL。
部署監控腳本(PowerShell + 任務排程器)每 15 分鐘檢查:
$shares = Get-WmiObject Win32_Share | Where-Object {$_.Name -in 'SYSVOL','NETLOGON'}
if ($shares.Count -ne 2) {
Send-MailMessage -To "admin@corp.contoso.com" -Subject "DC $env:COMPUTERNAME 缺少 SYSVOL/NETLOGON 共享" -Body "立即檢查 FRS 服務與複寫狀態"
}
透過系統性驗證「網路→AD 複寫→FRS 訂閱→資料夾結構→權限」五大支柱,配合 D4/D2 重建作為最終手段,可解決 99% 的 SYSVOL/NETLOGON 共遺失問題。長期而言,規劃遷移至 Windows Server 2008 R2+ 的 DFS 複寫 (DFSR) 取代 FRS,將獲得更強健的複寫引擎與可見度。