從Windows 2000開始,微軟在Windows中引入了“Windows文件保護”功能(Windows File Protection)。WFP在后臺自動運行,可以防止重要的系統(tǒng)文件被替換,大大提高了系統(tǒng)的穩(wěn)定性。但是現(xiàn)在很多人都說這個功能經(jīng)常報錯,你知道這是什么原因嗎?病毒作怪,系統(tǒng)故障的原因都是造成出現(xiàn)這些問題的原因,下面我們就給大家講講他的一些應用技術及原因技術。
WFP是怎樣發(fā)揮作用的呢?原來,當重要的系統(tǒng)文件(包括sys、dll、ocx、ttf、fon、exe等類型)被替換或移動時,WFP會對新文件的數(shù)字簽名進行驗證,以確定新文件的版本是否為正確的Microsoft版本,如果文件版本不正確,Windows文件保護會自動調用DLLCache文件夾或Windows中存儲的備份文件替換該文件,如果Windows文件保護無法定位相應的文件,系統(tǒng)就會提示用戶輸入該位置或插入安裝光盤,如圖1。

每次啟動都掃描
在默認設置下,Windows文件保護并非時時刻刻都對那些受保護的文件進行掃描,如果你使用的是公用計算機,那么還是安全為好,在“開始→運行”對話框中鍵入“gpedit.msc”,打開“本地計算機策略→計算機配置→管理模板→系統(tǒng)”窗口,找到“Windows文件保護”組,在右側窗格中雙擊“設置Windows文件保護掃描”項,如圖2所示,將其設置為“已啟用”,并設置掃描頻率為“啟動期間掃描”,這樣只要Windows啟動就會掃描保護文件,這樣系統(tǒng)會穩(wěn)定得多,但其缺點是啟動時間會適當拖長。
或者,也可以打開“注冊表編輯器”,找到[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon]右側窗格中的SFCDisable值,其默認設置是0,即重新啟動后不掃描受保護的文件,我們可以將其設置為1,可以達到同樣的目的。
給文件掃描設置計劃任務
常規(guī)上,我們要么手工執(zhí)行SFC,要么將之設置為每次啟動系統(tǒng)時執(zhí)行,事實上這兩種方式都未免太呆板了些,為什么不為文件掃描量身訂做一個計劃呢?
首先,我們需要將 “設置Windows文件保護掃描”項中設置為“已禁用”,然后在“控制面板”中打開任務計劃窗口,雙擊“添加任務計劃”,定位至Windowssystem32sfc.exe,同時選擇“每周”,然后可以選擇起始時間和具體的日期,接下來設置用戶名和密碼。
右擊剛剛創(chuàng)建的計劃任務,打開屬性窗口,在“運行”框中添加一個空格和/scannow參數(shù),表示立即掃描所有受保護的系統(tǒng)文件,以后一到指定的時間,就會自動執(zhí)行文件掃描操作了。
如果限制DLLCache文件夾
缺省設置下,Widnows會將驗證過的文件版本存儲在DLLCache文件夾中,這個文件夾的默認大小是400MB,而Windows Server 2003則無此限制,也就是說允許使用最大空間,如果你的硬盤空間比較緊張,那么不妨考慮適當限制一下。
仍舊打開“本地計算機策略→計算機配置→管理模板→系統(tǒng)”窗口,找到“Windows文件保護”組,在右側窗格中雙擊“限制Windows文件保護緩存大小”項,在彈出的窗口中進行設置,注意最小值應當大于50MB,如果需要指明緩存大小不受限制,請選擇“4294967295”作為磁盤空間最大量。
或者,也可以打開“注冊表編輯器”,找到[HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NTCurrentVersionWinlogon]右側窗格中的SFCQuota值進行設置,其默認大小是0xFFFFFFFF(即4294967295,400MB)。
讓安裝盤進駐硬盤
如果經(jīng)常遇到如圖1所示的提示插入Windows安裝光盤的事情,總是相當麻煩的 。不過,我們只要先在非系統(tǒng)分區(qū)上(如D:)建立一個文件夾,如WININS,再把Windows 2000/XP的安裝光盤上的所有文件拷貝到這個文件夾下。接著,安裝TweakUI,然后打開“控制面板”,雙擊“用戶接口自定義”圖標,單擊“我的電腦”標簽,在“特殊文件夾”選項組中“文件夾名稱”旁邊下拉列表框,從中選擇“安裝路徑”項目,并單擊“改變位置”按鈕,從打開的“瀏覽文件夾”窗口中選中我們拷貝安裝光盤的路徑即可,如D:WININS。
小提示
★現(xiàn)在硬盤非常大,建議你把Office安裝程序從光盤上拷貝到硬盤上再安裝,這樣添加或刪除Office組件時將不再需要插入安裝光盤。
如何清空DLLCache文件夾
如果你的系統(tǒng)目前一切正常,沒有什么問題,而由于某些原因需要騰出更多的可用空間,那么可以在“開始→運行”對話框中鍵入“SFC /purgecache”命令清空Dllcache文件夾,注意/前有一個英文半角的空格字符,這樣將清空保存在DLLCache中的文件緩存。
不過這樣一來,一旦出現(xiàn)問題,我們將會看到彈出的窗口,需要插入Windows安裝光盤,并從上面恢復相應的系統(tǒng)文件。
文件保護也可以實現(xiàn)共享
默認情況下,Windows會從WINDOWSSYSTEM32DLLCACHE中讀取保護文件,事實上,我們可以打開“注冊表編輯器”,定位到[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinLogon]下,找到SFCDllCacheDir鍵值,將它指到一個更大的分區(qū)(如d:dllcache),或者一個網(wǎng)絡共享文件夾中(如serversharedllcache),然后將WINDOWSSYSTEM32DLLCACHE下的所有文件(夾)移動到上述文件夾中,這樣Windows將會從這些文件夾中恢復保護文件。
小提示
★此技巧僅適用于Windows 2000,并不適合于Windows XP。
★如果你公司有多臺機器,可以將dllcache文件夾放到共享文件夾中,這樣可以省下硬盤空間。如果有不同版本的Windows,則需要指定不同的文件夾,如servershareendllcache、serversharechsdllcache等。
安裝光盤如何實現(xiàn)共享
#p#分頁標題#e#如果你在公司的局域網(wǎng)中工作,那可以打開“注冊表編輯器”,定位到
[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionSetup]下找到SourcePath項,雙擊之,將它修改為網(wǎng)絡共享文件夾,如serversharechswinxp,然后將Windows XP安裝光盤上的所有文件拷貝到serversharechswinxp下,以后需要Windows安裝文件時,就會自動從該文件夾下拷貝文件而不會提示插入安裝光盤。這樣,同事們可以省下足夠的本地硬盤空間,而“共享”一個安裝文件夾。
Windows操作系統(tǒng)的穩(wěn)定性和安全性越來越受人重視,從Windows2000開始,系統(tǒng)就提供一種文件保護機制功能(Windows File Protection)。該功能可以有效地保護Window s中某些重要的系統(tǒng)文件夾,如DLL、OCX、SYS、CPL等后綴的文件。而且系統(tǒng)會自動備份這些文件到“%SYSTEMROOT%system32dllcache”目錄中,一旦受保護的文件被破壞或替換,Windows文件保護功能自動從dllcache目錄中的備份、恢復這些文件。但我們如何使用文件保護功能呢?下面就介紹兩種方法。
方法一:組策略
點擊“開始→運行”,在運行對話框中輸入“gpedit.msc”命令,打開了組策略編輯器,打開“計算機配置→管理模板→系統(tǒng)→Windows文件保護”,在右側窗體中顯示四條文件保護策略?使用這些策略就可以輕松定義Windows系統(tǒng)的文件保護功能。
1、設置Windows文件保護掃描
這條策略用來設置是否啟用Windows文件保護。鼠標雙擊打開該策略,系統(tǒng)默認是沒有啟用文件保護功能,點擊“巳啟用”單選項,如果你想每次啟動系統(tǒng)都進行掃描,在“掃描頻率”下拉列表框中選擇“啟動期間掃描”,如果只想在安裝文件時進行掃描,選擇“啟動期間不要掃描”選項。
2、隱藏文件掃描進度窗口
啟用這個設置后,在進行Windows文件保護掃描時就不會顯示掃描的進度窗口。打開該策略,選擇“巳啟用”,點擊“確定”按鈕即可。
3、限制Windows文件保護緩存大小
文件保護功能會備份大量的被保護的文件到dllcache目錄中,但隨著系統(tǒng)安裝的軟件越來越多,會發(fā)現(xiàn)dllcache目錄的體積不斷增大,浪費了很多硬盤空間。該策略就是用來限制dllcache目錄的大小。在“限制Windows文件保護緩存大小”對話框中,點擊“巳啟用”選項,然后指定“緩沖區(qū)大小”,如我們想限制dllcache目錄最大為300MB,就在輸入欄中輸入“300”即可,最后點擊“確定”按鈕。
4、指定Windows文件保護緩存位置
dllcache目錄默認位置是在“%SYSTEMROOT%system32dllcache”,但是很多朋友不想浪費系統(tǒng)盤空間,那么就可以使用該策略重新指定緩存文件的位置,打開該策略,選擇“巳啟用”,然后在“緩存文件路徑”輸入框中輸入新的位置,如“D?BAK”,最后點擊“確定”按鈕。
完成以上設置后,需重新啟動系統(tǒng)才能生效。
用SFC命令保護文件
Windows操作系統(tǒng)的穩(wěn)定性和安全性越來越受人重視,從Windows2000開始,系統(tǒng)就提供一種文件保護機制功能(Windows File Protection)。上期我們講了如何用組策略來實現(xiàn)文件保護功能,這次的方法就是如何用SFC命令來實現(xiàn)它。
如何禁用WFP
作為一個后臺運行的服務,WFP會消耗一定的資源,如果你的電腦配置不是很高,那么就完全可以禁用,以便提高電腦性能。不過禁用后Windows的穩(wěn)定性可能得不到保障,這個由你自己來決定。
如果你要禁用WFP,需要修改注冊表,同時,在注冊表中也可以完成其他的一些設置。
運行regedit打開注冊表編輯器,展開注冊表到HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon,這里有幾個鍵是需要我們設置的:
SFCDisable,值為0時打開了WFP,這也是默認的狀態(tài)。雙擊后可以改成1,這將禁用WFP,并且需要重啟動一下才能生效;值為2,僅僅會在下一次啟動時禁用;值為4,將啟用,并且不會顯示提醒用戶的窗口。
SFCQuota,可以決定允許WFP使用的最大硬盤空間,直接輸入大小就可以,單位為MB,默認為300MB。而設置為FFFFFFFF就可以備份本地硬盤上所有的系統(tǒng)文件。
控制Windows文件保護掃描
描述:
該設置可以控制是否要系統(tǒng)開啟文件保護功能即 (SFC) 它可以監(jiān)視Windows的系統(tǒng)文件每當系統(tǒng)啟動時候。我們可以修改注冊表自由的控制文件的掃描參數(shù)。
操作:
打開你的“注冊表編輯器”。然后找到[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon]這個子鍵。在右側的窗口中創(chuàng)建一個“雙字節(jié)值”并命名為“SFCScan”然后修改其值為 0 = 禁用, 1 = 啟動時掃描, 2 = 掃描一次。
退出“注冊表編輯器”注銷或重新啟動計算機,你會看到更改后的效果。
Windows XP和2000包括一種叫做WFP(Windows File Protection,Windows文件保護)的技術。把"SFCDisable"鍵的鍵值設置為"ffffff9d"可禁用WFP,而設置為"0"則可以啟用它。其它一些可用的鍵值如下:
1 - 禁用,但是在系統(tǒng)啟動的時候會詢問你是否重新啟用
2 - 只在下一次重啟動的時候禁用,也不會詢問你是否重新啟用
4 - 啟用,并且,不顯示彈出窗口
ffffff9d - 完全禁用
還原受保護的Windows系統(tǒng)文件:在運行對話框中輸入"Sfc /scannow"然后點擊OK
實際操作后應該是:改注冊表為SFCScan ---0 SFCDisable-------4
Windows文件保護彈出警告框的原因和對策
1 系統(tǒng)中毒。這個時候你應該把你的殺毒軟件病毒庫升級到最新,然后對系統(tǒng)進行一些徹底的病毒清查。
2 軟件問題,某些比較老舊的或設計不良的軟件會替換系統(tǒng)文件,也會出現(xiàn)這種提示框;
如果查無毒的情況下,請檢查你安裝軟件的兼容性,然后插入光盤,使用Sfc恢復文件,用法是,點擊開始/運行,鍵入命令:SFC/Scannow,確定。有時候會出現(xiàn)不認盤的情況,這時候可以手工恢復系統(tǒng)文件。插入光盤,等系統(tǒng)認出光盤后,點擊開始/運行,鍵入SFC /scannow確定。如果你的系統(tǒng)安裝過補丁,而你的原盤不帶補丁,這種方法是無效的。比如你安裝了2000SP4,你就必須放入集成了SP4的光盤. 先把光盤放入光驅,一定要提前放入光驅!然后點擊開始/運行,輸入SFC /scannow 確定。另外要注意:使用windows2000 3合1的光盤是無法用這種方法修復系統(tǒng)文件的。#p#分頁標題#e#
3 如果當初安裝系統(tǒng)時用的是盜版盤(windows XP),而后來你激活了(算號器激活,俄羅斯電話補丁,或是自動激活程序等),也會出現(xiàn)wfc警告框;
開始 運行 sfc/purgecache
開始 運行 gpedit.msc(組策略) 計算機配置=>管理模板=>系統(tǒng)=>windows文件保護 右邊的設置為disable
開始 運行 regedit 或者 regedt32 找到[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon 在右側的窗格中右鍵單擊選擇New-->DWORD Value,為其命名為SFCDisable 在Hexadecimal項下輸入鍵值為ffffff9d以關閉WFP 重新啟動系統(tǒng)使所做的更改生效。
為了確保WFP確實已經(jīng)被關閉,你可以在重啟電腦后查看日志文件。點擊開始-->設置-->控制面板。打開Administrative Tools-->Event Viewer。你會看到圖中所示的記錄。在每次Windows 2000啟動后都會記錄下WFP被關閉的情況。
注意:雖然WFP被關掉了,但dllcache文件夾下仍然備份了文件。如此這般你應該在WFP被關掉后把這些文件都刪除。你只要打開%SystemRoot%/System32/dllcache這個文件夾,然后把目錄下的文件刪除就是了。
4 較具體的情況:
xp系統(tǒng),一會就彈出文件保護,說安裝語言不符合 開始 運行 sfc /scanonce 重啟; windows2000server,裝了office2000后,老是彈出個對話框,說系統(tǒng)文件被修改,讓插入安裝盤,要不插盤的話,隔一會就往出彈 對策為第3條所述。或者更換office xp;
小知識:
Windows文件保護如何工作?
通過兩種機制,Windows文件保護特性可以檢測并糾正應用程序安裝過程中某些文件被未被授權文件替換的情況。第一種機制是,在某個重要系統(tǒng)文件被修改時,Windows文件保護會得到通知。然后Windows文件保護找到目標文件以及這個文件是否是被保護的。如果目標文件確實是被保護的,那么Windows文件保護將在一個編目文件里檢查文件的簽名。如果簽名是假的,那么這個文件將被Dllcache文件夾里的對應文件替換,或被新應用程序的安裝程序用新的文件替換。
另一個機制是系統(tǒng)文件檢查器 (Sfc.exe) 工具。在圖形用戶界面安裝的最后階段,系統(tǒng)文件檢查器工具會掃描所有被保護的文件,為安裝程序修改文件做好準備。它還檢查所有用來跟蹤正確文件版本的編目文件。如果發(fā)生丟失或損壞的情況,Windows文件保護將對受影響的編目文件重新命名,并從DLLcache文件夾下恢復這個文件的緩存版本。如果不能獲得這個文件的緩存版本,Windows文件保護將會要求插入適當?shù)拇疟P或光盤來獲得編目文件的一個新的拷貝。
你還可以用系統(tǒng)文件檢查器做什么
掃描所有被保護的文件,以驗證它們的版本。
檢查和重新填充%Systemroot%System32Dllcache文件夾。
修復被損壞或無法再使用的Dllcache文件夾內容。
設置文件緩存大小(分配給Dllcache文件夾的空間)。
有關Dllcache的細節(jié)
為所有類型的文件都保存一個緩存版本的需要可能會和磁盤空間方面的考慮發(fā)生沖突。但是,如果你決定為所有類型的文件都保存一個緩存版本的話,那么請在注冊表里把SFCQuota的值設置為0xFFFFFFFF,這樣就可以緩存所有被保護的系統(tǒng)文件(大約2700個文件)。然而更好的情況是,如果你安裝了Windows 2000并且有足夠的磁盤空間,那么Windows 2000將會自動緩存所有被保護的系統(tǒng)文件。
Windows文件保護對Dllcache文件的操作:
如果Windows文件保護檢測到一個侵入文件,而受影響的文件不是Dllcache文件,并且被操作系統(tǒng)使用的相關文件的版本為正確版本,則Windows文件保護將這個版本拷貝到Dllcache文件夾。
如果正在被操作系統(tǒng)使用的受影響文件的版本不是正確版本,或者文件沒有緩存到Dllcache文件夾,那么Windows文件保護特性會試圖找到這個文件的安裝路徑。如果介質沒有找到,則Windows文件保護會顯示一個對話框,讓你插入適當?shù)慕橘|,以替換文件或者Dllcache文件版本。


