使用Bginfo幫助您簡化用戶管理

Bginfo是一款桌面顯示系統信息的軟件,使用它可以協助系統管理員更高效的診斷用戶的故障。通過Bginfo,用戶的桌面會顯示出計算機名、IP地址等信息。例如,
 
 
最近,我在公司的AD上部署了這款軟件,有一些心得給大家分享。
 
基礎篇
 
這款軟件可以在http://technet.microsoft.com/zh-cn/sysinternals/bb897557(en-us).aspx下載到,最新版本是4.16。
 
下載後,在閱讀許可協議後打開軟件,編輯你想要顯示在桌面上的字段,然後點擊即可。在界面上方可以編輯顯示信息的字體等格式,右側的Fields可以插入預置的字段。當然,如果需要更多的字段,可以通過Custom按鈕進行自定義。
 
在設置好顯示內容後,可以點擊Preview進行預覽(修改內容實時生效),確定後點擊OK即可。
 
 
馬上,您將會看到桌面的壁紙上多了讓人振奮的計算機信息吧?讓我來簡單的說一下原理。這款軟件通過WMI查詢將數據組織好以圖層的方式附在當前壁紙上並重新生成新的壁紙,然後應用新壁紙。也就是說,其實,我們的壁紙是被軟件替換了,那些信息就是壁紙圖片的一部分。
 
試想一下,如果用戶的桌面都有了這樣的壁紙,當我們詢問用戶的IP地址的時候,再也不用指導用戶去查看IP地址了,一切工作變得輕鬆快捷:)
 
進階篇
 
在這個小節,我將講述如何將Bginfo部署到AD環境中。
 
部署的簡單思想就是將軟件及其配置文件放在共享目錄中,然後配置組策略的用戶啓動腳本來調用這個軟件和其配置。
 
簡單部署步驟:
 
Step1:在域控制器上建立一個共享目錄,權限設爲NTFS和共享目錄都指派Domain Users爲可讀。
 
Step2:Bginfo程序拷貝到共享目錄中,編輯好需要顯示的內容,然後將配置文件(*.bgi)也存放在共享目錄。
 
Step3:在共享目錄中建立批處理文件(*.bat),內容範例如下,
 
@echo off
\\192.168.0.200\bginfo\bginfo.exe /nolicprompt /i\\192.168.0.200\bginfo\bginfo.bgi /timer:00
 
解釋一下,第一行@echo off是爲了不顯示下面執行的代碼內容,這樣做可以提高安全級別,用戶執行時候的CMD窗口看不到後面的語句。事實上執行速度很快,用戶基本上看不到CMD窗口。但爲了安全,我們還是加上這一句話。第二行,\\192.168.0.200\bginfo\bginfo.exe是程序的路徑,/nolicprompt參數的含義是跳過許可協議EULA,/i是制定配置文件的路徑,\\192.168.0.200\bginfo\bginfo.bgi就是我的配置文件,/timer:00是顯示主界面的時間,0爲不顯示。
更多參數說明,請點擊bginfo軟件的help--about或參考http://technet.microsoft.com/zh-cn/sysinternals/bb897557(en-us).aspx
 
Step4:
部署組策略用戶配置的啓動腳本。注意,腳本路徑請填寫UNC路徑,IP地址比主機地址更好。
 
這樣部署,初的來看似乎沒什麼問題,但是時間久了,您將會發現有兩個問題:1)用戶的桌面會變成純色的桌面 2)如果用戶更換了桌面壁紙,Bginfo還是會顯示純色的桌面,也就是說用戶根本不能更改壁紙。
 
出現上述問題的原因,我分析了一下,基本上是由於Bginfo是在共享文件夾中調用運行,並不能獲取用戶原先的壁紙。
 
根據這樣的推斷,上述的步驟可以稍作修改:
組策略用戶啓動腳本分兩個,1)使用VBS將bginfo、bgi配置文件拷貝到用戶本地磁盤 2)運行用戶本地磁盤上的bat批處理
當然,要想讓VBS順利的拷貝到本地,您需要新建一個計算機策略,在文件系統中開放Domain User/System/User的寫入文件夾權限(也許這個權限設定不嚴謹,歡迎讀者指出)
 
基本上大功告成啦!不過鑑於XP的組策略生效方式是異步處理,所以兩條用戶啓動腳本的執行中最好加入時間間隔。
 
網上講bat文件延時的方法很多,我就介紹一種最簡單的方法,那就是2003系統及後續系統中附帶的timeout工具。您可以從這些系統中提取後使用,但請千萬注意32位系統和64位系統的timeout不能混用。
 
有了這個工具,我們也可以把這個程序拷貝到用戶本地文件夾,然後修改bat批處理文件,在@echo off後加入這句話,
c:\bginfo\timeout.exe /t 10
這樣,Bginfo就會在拷貝文件完成後的10秒後執行。
 
高手篇
 
既然Bginfo是利用WMI讀取用戶信息,那麼我們是否有辦法可以將這些信息蒐集起來呢?
 
Bginfo非常友好,提供了TXT/XLS/SQL的輸出。
 
設置輸出,只需在Bginfo的軟件中,點擊file,database。
 
 
經測試,DC上能夠正常將信息寫入SQL,但是客戶端始終報錯,沒有寫入權限。這個問題也沒有一個很好的辦法。如果哪位高人知道如何解決,麻煩給小弟指引一二:)
 
另外,如果您使用的是將統計信息寫入到SQL,請一定要在批處理的參數中加入/silent,這個參數能靜默執行Bginfo,即使出錯也不顯示出錯信息。這樣做,因爲Bginfo的出錯信息中含有數據庫的帳號和明文密碼!!!
 
 
以上信息僅供參考,歡迎您回覆文章與我討論。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章