Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> 電腦軟件教程 >> 服務器技術 >> 關於服務器 >> 活動目錄常見故障排錯工具

活動目錄常見故障排錯工具

日期:2017/2/8 10:31:14      編輯:關於服務器
“兵欲善其事,必先利其器”,這句話放在網絡排錯上可謂是再合適不過了,如果你去問一名從事網絡工程師,在平時的網絡排錯中最希望得到什麼?我估計十有八九都會跟你說――好工具!的確,對於技術人員而言,工具就像是一款精良的武器,可以幫助你迅速掌握網絡情況,找到問題的症結所在。在本文中,筆者結合平時對活動目錄排錯的經驗,來向廣大讀者展示一些非常實用的工具,希望能夠起到拋磚引玉,舉一反三之功效。

在這裡,筆者拿一個簡單的活動目錄域作為案例:現在有一家企業,AAA集團,為了提高企業效益和員工的生產力,該集團組建了自己的辦公網絡,申請了一個域名:http://aaa.ad。(在這裡,筆者用虛擬的域名來做演示)。AAA集團的網絡管理采用了Windows 2003活動目錄域。為了方便員工間的交流和對外宣傳,AAA集團還搭建了基於Exchange平台的電子郵件系統。域的規模不是很大,域控制器和Exchange郵件服務器各兩台,

場景一:每周的星期一,AAA集團的IT技術工程師都要對活動目錄進行常規檢查,就像醫生給病人做體檢一樣,對於工程師來說,每一次的常規檢查怎樣才能做到迅速、准確呢?

TOOL

l        活動目錄狀態檢測工具:DCDiag  

活動目錄狀態檢測工具DCDiag可以說是一款檢查活動目錄狀態的必備工具,它有助於工程師方便查看現有的活動目錄狀態以及今後可能出現的問題,做到未雨綢缪。這款工具可以在Windows 2000/2003的安裝光盤support\tools下找到。雙擊SUPTOOLS軟件包,安裝好之後,開始菜單會生成一個Command Prompt,單擊打開,鍵入 dcdiag /?先來查看一下幫助,從長長的幫助信息中我們能夠感受到該命令是非常強大的。不過,在實際使用中,我們更多的還是會用dcdiag /v > c:\ad.txt來把活動目錄於域的詳細狀態導出到一個文本文件,便於我們今後查看。(其中,/v表示詳細輸出,c:\ad.txt可以根據實際情況調整導出位置及文件名。)

Dcdiag檢測的信息相當豐富,限於文章篇幅,筆者不可能一一解釋,這裡筆者只解釋一些經常關注的信息,請看下表:

顯示內容

含義及作用

在實際中的應用

* Found 1 DC(s). Testing 1 of them.

檢查森林中有幾台DC,從而能夠讓你輕松獲得用戶網絡環境大小。

如果曾經進行過DC的刪除,從這一行能夠很明確的看出,整個域環境究竟有幾台DC

Starting test: NCSecDesc

檢測活動目錄中主要分區的權限是否設定正確(域分區,架構分區等)。

DC1 passed test NCSecDesc表明DC1域控制器分區權限正常。

Starting test: Advertising  

The DC DC1 is advertising as a Key Distribution Center

The DC DC1 is advertising as a time server.

檢查域控制器上服務的正確性。

表明該DC是一台KDC

表明該DC是一台時間服務器

有時用戶會無意間停止的一些服務,結果給整個活動目錄域帶來問題。比如整個域內如果沒有KDC,那麼身份驗證將無法進行,用戶自然無法登陸到域內。

總的說來,DCDiag是一款功能強大,高效便捷的命令行工具,微軟的網站上有專門的Dcdiag Examples,有興趣的讀者可以去看一看。這裡,筆者給出其鏈接:

http://www.microsoft.com/technet/prodtechnol/windowsserver2003/library/TechRef/824f106c-a90b-421b-aa44-ebc1403c8b4c.mspx

信息搜集工具
MPS Report

   信息搜集工具MPS Report是用來搜集信息的工具,也是一款在微軟歷史悠久的工具。它比較適合每月(或更長時間)對域內的服務器(如ExchangeDC等)檢測時使用,詳盡的報告可以讓你對你的服務器運行情況了如指掌,更能夠幫助你及時發現服務器的問題,以便作出相應解決方案。

我們可以從微軟的網站上下載該工具

http://www.microsoft.com/downloads/details.aspx?familyid=cebf3c7c-7ca5-408f-88b7-f9c79b7306c0&displaylang=en#filelist.

MPS Report更像是一個腳本,針對你服務器類型事先定義了一些變量,然後依次運行相關的工具得出一個報告,與Dcdiag相比,報告內容會更詳細,因此,運行時間也會更長一些,但一般都不會超過10分鐘。

在下載頁面上,首先根據你服務器的類型選擇相應的報告工具,(如你需要檢測Exchange郵件服務器的狀態,就下載MPSRPT_Exchange.EXE)下載到本地後,只需雙擊運行即可。由於是腳本類工具,因此整個過程不需要任何人工干預,這樣也就大大減少了管理員的工作量(你可以不必一次又一次的敲命令)。最後,系統會自動彈出一個文件夾,解壓該文件夾內的CAB包就會得到服務器運行狀態檢測結果,你可以選擇有關txt日志文件來查看。

l        基礎網絡診斷工具 NetDiag NetDiag Network Diagnostic

NetDiag是一款幫助你分析當前網絡狀況和連通性的工具,它會按照事先設定好的規則在你的機器上運行一系列測試,以確定網絡客戶機的狀態和功能。你可以使用這些測試結果及 Netdiag.exe 提供的網絡狀態信息,找出基於 Windows 2000 的工作站或服務器上的網絡和連接問題。此外,它還可以檢查你的服務器打有哪些補丁(Hotfixes)。這款工具你可以從Windows 2000/2003安裝光盤的Support Tools下得到。Netdiag的參數也很多,其中,使用/v參數可以在詳細模式下運行 Netdiag.exe,並顯示有關執行的操作的信息;/l參數可將輸出結果寫入到Netdiag.log 文件,該文件會創建在運行 Netdiag.exe 的同一文件夾中;/debug參數可使NetDiag命令在調試模式下運行,這樣輸出的結果要比使用 /v 參數時多。關於Netdiag的詳細使用方法,微軟的網站上有專門的文章介紹,有興趣的讀者可以去看看,同樣,筆者在這裡給出相關鏈接:

http://support.microsoft.com/default.aspx?scid=kb;zh-cn;321708

場景二:技術人員拿到了很多日志文件,但是每一個日志文件的內容很多,而且很雜亂,有success,也有fail,但是,對於技術人員來講,fail才是他們所關心的,有沒有一款免費工具能夠把每個日志文件中失敗的信息提取出來呢?

TOOLFind String

Find String 是一款能夠在任何ASCII文件中搜索字串的工具,對於技術人員查看、歸納和提煉log文件的信息很有幫助。同時,Find String是一款系統自帶的工具,位於Windows\system32目錄下,因此完全免費。

如在場景二中,工程師需要提取日志文件findstr.txt 中“fail”的信息,可以使用如下命令:findstr /i /l "fail" c:\findstr.txt >c:\findstrnew.txt (其中,/i表示搜索時不分大小寫
  
/l表示按字使用搜索字符串,引號內添入你希望搜索的字串),這樣就可以將findstr.txt中含有fail的字符導入到findstrnew.txt文件中去。

由於是系統自帶的命令,更多的功能和使用方法讀者可以參考系統的“幫助和支持”中心。

場景三:某天,管理員需要將上次的Exchange存儲備份還原到郵件服務器上面,但是卻失敗了。

單擊報告,顯示:

  

還原狀態

操作: 還原

"DC1\Microsoft Information Store\第一個存儲組" 的備份,還原為 "DC1\Microsoft Information Store\第一個存儲組"

備份集 #1 在媒體 #1

備份描述: "集創建於 2005-7-2522:35"

2005-7-2811:15 開始還原。

無法將 Exchange 數據還原到 DC1\Microsoft Information Store\第一個存儲組,

詳細信息,請檢查應用程序事件日志

2005-7-2811:15 完成還原。

目錄: 0

文件: 0

字節數: 0

時間:   1

----------------------

TOOL

l        事件查看器

事件查看器記錄了應用程序、安全性、系統、目錄服務、DNS服務等事件的信息,這些信息包含正確信息、警告和錯誤,我們可以首先查看這些信息獲得排錯的基本線索。

通過查看事件的詳細信息,發現如下描述:“從 Microsoft Active Directory 中查找數據庫以便還原時失敗。備份媒體上指定的存儲組是 a97a034f-82fe-415a-aaaf-3e800773754d。備份媒體上指定的數據庫是 公用文件夾存儲(DC1),錯誤是 0xc7fe1f46”

當我們拿到錯誤代碼(0xc7fe1f46)後,我們怎麼才能明白是什麼含義呢?這時,我們就需要用到我們的第二個工具:Knowledge Base(微軟知識庫)!

行文至此,筆者想在這裡多說兩句,筆者在實際的Troubleshooting和給網管人員培訓時發現不少網管人員都存在這樣幾個“通病”。其一,他們很少去微軟的網站,拿到問題後先是去百度或者google上去搜索,殊不知,像百度或者google這樣的搜索引擎容量是很大的,因此信息也不夠權威和精確,而微軟的KB是微軟最重要的知識共享系統,被譽為“解決實際問題的電子字典”,其中的解決方案都是微軟專門的工程師經過理論分析、反復實驗得出的,而且解決方案的思路也很清晰,對排錯很有幫助,可以說是工程師“居家必備”的工具。因此,筆者建議,如果你經常和微軟的產品“打交道”,微軟的網站是一定要去的,尤其是要經常查KB;其二,還有不少管理員拿到返回的錯誤信息不知道該做什麼,而是在那裡自己琢磨,盲目操作,毫無疑問,這樣的排措效率無疑是低下的,而且很可能會產生新的問題。所以,當我們拿到一個錯誤信息或者是錯誤代碼的時候,應該首先去微軟知識庫KB上去查,其鏈接為http://support.microsoft.com

l        Knowledge Base(微軟知識庫)

打開http://support.microsoft.com,在搜索一欄中輸入錯誤代碼0xc7fe1f46後,回車,可以看到一個解決方案。

插入0xc7fe1f46 Found!.html

通過查看KB我們得知,這是由於沒有選中“This database can be overwritten by a restore”的原因,知道了原因,我們便可以很好的解決這個故障了。

編輯注意:事實上很多時候,這時問題並沒有解決,原因是有時候管理員疏忽了卸下數據庫導致還原仍然失敗,但同樣可在KB中查到,具體到本文用不用寫,我個人認為沒有必要,因為本文是重在講工具而不是講如何排措,請編輯定奪一下。

有一點請讀者注意,知識庫有中文和英文兩種,英文內容要比中文多很多,建議英文水平好的讀者看英文的KB。

場景四:用戶在打開Microsoft Outlook 時,系統提示輸入用戶名和密碼,輸入有效憑據後,收到以下內容的錯誤信息:Your logon information is incorrect。去事件查看器中查看發現:事件 ID: 1000 事件來源: Userenv  描述:Windows不能確定用戶或計算機名稱。返回值 (1753)。

TOOL:錯誤代碼查看工具

錯誤代碼查看工具同樣是為管理員和工程師准備的一本詳盡字典,涵蓋了大部分錯誤代碼的原因(包含SQL-server,Windows Server等)。讀者可以從微軟網站上下載:

http://www.microsoft.com/downloads/details.aspx?familyid=be596899-7bb8-4208-b7fc-09e02a13696c&displaylang=en

下載回來後,解壓,得到一個文件夾Err,然後在命令行提示符下進入Err目錄,鍵入err加錯誤代碼,例如:err 1753

從圖中可以看出,1753這個錯誤代碼在SQL-ServerWindows中有著不同的含義,在Windows Server中表示RPC 終結點映射程序錯誤。同樣,這時我們就可以去微軟的KB上查詢這個錯誤的原因以及相應的解決方案,在此筆者不再贅述。

場景五:活動目錄域少不了組策略,但是在很多時候,用戶最終生效的策略往往與管理員設想陰差陽錯,那麼對組策略的應用檢查需要使用哪些工具呢?

TOOL

l        GPResult.exe

談到組策略,網管人員問的最多的問題莫過於“為什麼我預先設定的策略沒有生效?”,看似簡單的一句話,其中卻包含了很多問題。筆者認為,組策略的排錯應該有一定的順序。首先,要把故障再確定一下,例如,是什麼策略沒有生效?是計算機設定?還是用戶設定?還是桌面設定?亦或是安全設定?等等等等。搞清楚這些問題以後,我們還應該確定,組策略對象是什麼?它鏈接在何處?此外,用戶或者是計算機是否鏈接在GPO(組策略對象)所在的OU下?用戶的操作系統是什麼?與服務器的連接速度是慢速還是快速?例如,如果客戶端和服務器的連接速度過慢(撥號方式),那麼應用程序安裝策略是不會生效的。

確定了以上問題後,一般首先使用GPResult.exe(系統自帶,2000support\tools中)來獲取用戶或計算機的組策略設置和策略的結果集,看看這台計算機究竟被應用到了哪些策略,這時,需要注意的是沒有被應用的策略,管理員應該從這裡找原因,看看為什麼這些策略沒有被應用。另外,GPResult.exe還會顯示出用戶和計算機在哪個OU中,這時你應該注意設定的組策略與用戶和計算機是否在同一個OU中。

Copyright © Windows教程網 All Rights Reserved