張 博 陳 瑜
[摘要]在計算機維護過程中,經(jīng)常會將硬盤分區(qū)格式化。針對目前的操作系統(tǒng),要求格式成NTFS。然而在實際使用中,主要會遇到FAT32與NTFS的相互轉(zhuǎn)換以及丟失或刪除文件的回復(fù)等問題。所以針對NTFS文件系統(tǒng)所提出得相應(yīng)問題做好解釋,最終的目的是為了實現(xiàn)系統(tǒng)的安全性。
[關(guān)鍵詞]NTFS FAT32 磁盤管理 簇 轉(zhuǎn)換 屬性
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0920062-02
一、什么是NTFS
NTFS(New Technology File System)是Windows NT操作環(huán)境和Windows NT高級服務(wù)器網(wǎng)絡(luò)操作系統(tǒng)環(huán)境的文件系統(tǒng),目前最常見的三種文件系統(tǒng)有:FAT16、FAT32和NTFS。
(一)FAT
FAT(File Allocation Table)是“文件分配表”。其意義在于對硬盤分區(qū)的管理。
Windows 98開始使用FAT32文件系統(tǒng)。FAT32使用較小的簇,可以支持大到2TB的分區(qū)。FAT32盡可能不改動現(xiàn)有的Windows體系結(jié)構(gòu)、內(nèi)部數(shù)據(jù)結(jié)構(gòu)、應(yīng)用程序編程接口(API)和磁盤上的格式。然而,因為現(xiàn)在需要4字節(jié)來存儲簇值,所以許多內(nèi)部的和磁盤上的數(shù)據(jù)結(jié)構(gòu)以及發(fā)布的API都作了修改或擴展。現(xiàn)有工具和驅(qū)動程序在FAT32驅(qū)動器上應(yīng)能夠繼續(xù)正常運行。但是,MS-DOS塊設(shè)備驅(qū)動程序和磁盤工具需要經(jīng)過修改才能支持FAT32驅(qū)動器。
(二)NTFS
NTFS是Windows NT內(nèi)核的系列操作系統(tǒng)支持的、一個特別為網(wǎng)絡(luò)和磁盤配額、文件加密等管理安全特性設(shè)計的磁盤格式,提供長文件名、數(shù)據(jù)保護和恢復(fù),能通過目錄和文件許可實現(xiàn)安全性,并支持跨越分區(qū)。
NTFS文件系統(tǒng)所具備3個功能:錯誤預(yù)警功能、磁盤自我修復(fù)功能和日志功能:
錯誤預(yù)警功能:在NTFS分區(qū)中,如果MFT所在的磁盤扇區(qū)恰好出現(xiàn)損壞,NTFS文件系統(tǒng)會比較智能地將MFT換到硬盤的其他扇區(qū),保證了文件系統(tǒng)的正常使用,也就是保證了系統(tǒng)的正常運行。而FAT16和FAT32的FAT則只能固定在分區(qū)引導扇區(qū)的后面,一旦遇到扇區(qū)損壞,那么整個文件系統(tǒng)就要癱瘓。
磁盤自我修復(fù)功能:NTFS可以對硬盤上的邏輯錯誤和物理錯誤進行自動偵測和修復(fù)。在每次讀寫時,它都會檢查扇區(qū)正確與否。當讀取時發(fā)現(xiàn)錯誤,NTFS會報告這個錯誤;當向磁盤寫文件時發(fā)現(xiàn)錯誤,NTFS會換一個完好位置存儲數(shù)據(jù)。
日志功能:在NTFS文件系統(tǒng)中,任何操作都可以被看成是一個“事件”。事件日志一直監(jiān)督著整個操作,當它在目標地,發(fā)現(xiàn)了完整文件,就會標記“已完成”。假如復(fù)制中途斷電,事件日志中就不會記錄“已完成”,NTFS可以在來電后重新完成剛才的事件。
二、NTFS怎樣管理磁盤
除了儲存用戶的文件和目錄數(shù)據(jù)外,NTFS將一些用于磁盤管理的數(shù)據(jù)也儲存在文件中,當初始化一個NTFS磁盤時,NTFS將創(chuàng)建元數(shù)據(jù)文件。
(一)MFT
主控文件表MFT映射了磁盤上所有文件和目錄,包括NTFS的元數(shù)據(jù)文件。MFT以記錄為單位進行劃分,其本身也是一個由NTFS用MFT中的記錄映射的文件。這樣的結(jié)構(gòu)使MFT很容易擴展,使NTFS能很有效率地追蹤現(xiàn)存的元數(shù)據(jù)數(shù)量,來決定它們所占用的空間。
NTFS在內(nèi)部使用MFT中的記錄來標識文件和目錄,這些記錄描述了這些元數(shù)據(jù)的開始位置信息。因為MFT也是文件,當MFT變大而其它的文件使用的簇正好在它原來的結(jié)束處之后,MFT必須在磁盤中找另一處未使用的空間,這樣就導致MFT文件所映射的簇的順序不連續(xù)了。為了避免MFT碎裂,NTFS在MFT周圍保留一定范圍的簇不分配給其它的文件和目錄,這樣,在MFT需要增長時,能增加找到連續(xù)簇的機會,也能盡量少的使MFT靠近其它的數(shù)據(jù)。因此,在磁盤剩余容量較小時,MFT變得破碎的危險將會增加。
(二)MFT中的記錄
NTFS使用屬性儲存所有的文件和目錄信息。屬性包括:屬性表頭和屬性數(shù)據(jù)。表頭儲存屬性的類型、名字和標志,記錄著屬性數(shù)據(jù)的位置。MFT中的記錄由一個包含關(guān)于記錄的基本信息的小表頭和緊跟著的一些屬性組成,這些屬性用于描述記錄所對應(yīng)的文件或目錄的數(shù)據(jù)或特性。
NTFS將在MFT記錄里面直接儲存屬性數(shù)據(jù)。存儲在MFT記錄中的屬性稱為常駐屬性,其它的稱為非常駐屬性。只有當記錄表頭、屬性表頭、屬性數(shù)據(jù)都能放入一個記錄時,屬性才能是一個常駐屬性。因此,1KB(通常的MFT記錄大小)是NTFS磁盤上的屬性數(shù)據(jù)長度的上限。如果屬性的數(shù)據(jù)是常駐的,屬性表頭將指向在MFT記錄中的數(shù)據(jù)的位置。由于屬性和大量的數(shù)據(jù)可能跨越多個MFT記錄,而運行要覆蓋文件的不同的部分,而運行由多個運行項組成,一個運行項包含一個虛擬簇號(VCN),它是屬性數(shù)據(jù)內(nèi)部簇的順序編號;一個邏輯簇號(LCN),它是數(shù)據(jù)儲存在磁盤上的位置;以及數(shù)據(jù)在磁盤上所占用空間的連續(xù)簇的數(shù)量。如果一個文件有太多屬性要填入MFT記錄中,NTFS將分配附加的記錄并在基本記錄中儲存一個屬性-列表屬性。屬性列表指向在附加記錄中的屬性的位置,列表的每一項對應(yīng)著一個屬性。
三、FAT32與NTFS怎樣互換
(一)將FAT32換為NTFS
Windows2000/XP提供了分區(qū)格式轉(zhuǎn)換工具“Convert.exe”。Convert.exe是Windows 2000附帶的一個DOS命令行程序,通過這個工具可以直接在不破壞FAT文件系統(tǒng)的前提下,將FAT轉(zhuǎn)換為NTFS。先在Windows 2000環(huán)境下切換到DOS命令行窗口,在提示符下鍵入:D:>convert 需要轉(zhuǎn)換的盤符 /FS:NTFS后回車,所有的轉(zhuǎn)換將在系統(tǒng)重新啟動后完成。
此外,你還可以使用硬盤無損分區(qū)工具Partition Magic。首先在界面中的磁盤分區(qū)列表中選擇需要轉(zhuǎn)換的分區(qū)。從界面按鈕條中選擇“Convert Partition”按鈕,或者是從界面菜單條“Operations”項下拉菜單中選擇“Convert”命令。激活該項功能界面。在界面中選擇轉(zhuǎn)換輸出為“NTFS”,之后單擊“OK”按鈕返回程序主界面。單擊界面右下角的“Apply”添加設(shè)置。此后系統(tǒng)會重新引導啟動,并完成分區(qū)格式的轉(zhuǎn)換操作。
(二)將NTFS換為FAT32
最簡單的辦法是使用Hard Disk Manager。選擇磁盤后在分區(qū)功能菜單中選擇修改按鈕中的轉(zhuǎn)換功能,在出現(xiàn)的確認頁面上點擊確認,然后計算機會在重新啟動后開始執(zhí)行轉(zhuǎn)換。
四、如何在NTFS格式分區(qū)實現(xiàn)文件恢復(fù)
(一)原理分析
在NTFS文件系統(tǒng)中,在被刪除的文件記錄頭部將產(chǎn)生標志字節(jié)置為00/02H,文件記錄的其它屬性均沒有變化;對于有數(shù)據(jù)運行的文件,不改變數(shù)據(jù)運行的內(nèi)容,只是將數(shù)據(jù)運行所占用的簇在元文件$Bitmap中對應(yīng)的位均置為0。所以,要在NTFS文件系統(tǒng)下恢復(fù)數(shù)據(jù)就得:掃描主文件表MFT,查找刪除文件的文件記錄;通過分析文件記錄,確定文件的數(shù)據(jù)區(qū);對文件的數(shù)據(jù)區(qū)進行完整性判斷;對刪除文件進行恢復(fù)。所以,首先進行磁盤掃描,分析MFT中每一個文件記錄,找出所有刪除文件(或目錄)的文件記錄,重建文件刪除前原有的目錄關(guān)系,將文件記錄的物理地址記錄在數(shù)組中,供恢復(fù)時使用;然后獲取BPB參數(shù):StartClusterof $MFT,SectorsPerCluster,BytesPerSector;最后確定MFT區(qū)域,根據(jù)獲取到的BPB參數(shù),移動句柄到MFT的起始位置,然后讀取第1個元文件$MFT,分析該文件記錄中的數(shù)據(jù)流屬性,找出MFT的所有運行。由于MFT區(qū)域存在著物理上不連續(xù)的可能性,因此,確定NTFS分區(qū)上的MFT區(qū)域,對于查找出整個磁盤上所有的刪除文件十分重要。
(二)使用專用工具
常用軟件有:EasyRecovery或者Final Data for NTFS和Get Data Back for NTFS。
EasyRecovery不是在原始驅(qū)動器寫入,而是在內(nèi)存中重建文件分區(qū)表使數(shù)據(jù)能夠安全地傳輸?shù)狡渌?qū)動器中,這樣可以從被病毒破壞或是已經(jīng)格式化的硬盤中恢復(fù)數(shù)據(jù)。能夠恢復(fù)文件類型:圖片、應(yīng)用程序、OFFICE文檔文件、網(wǎng)頁文件、開發(fā)文檔、數(shù)據(jù)備份文檔??梢曰謴?fù)大于8.4GB的硬盤,支持長文件名。同時,被破壞的硬盤中像丟失的引導記錄、BIOS參數(shù)數(shù)據(jù)塊;分區(qū)表;FAT表;引導區(qū)都可以由它來進行恢復(fù)。EasyRecovery還具有:磁盤診斷和文件修復(fù)功能。
使用方法是:先選擇恢復(fù)類型;再選擇分驅(qū);然后尋找要恢復(fù)的文件,我們只能按照文件大小、修改時間、文件類型來判斷;選中文件,設(shè)置恢復(fù)屬性時不要選擇和要恢復(fù)的文件在同一分驅(qū);恢復(fù)完成,打開文件。
還可以使用Final Data for NTFS或者Get Data Back for NTFS。如果在文件刪除后沒有任何文件操作,恢復(fù)率接近100%。所以不要等到文件刪除后才安裝這個軟件,最好是與Windows系統(tǒng)一起安裝,并在出現(xiàn)文件誤刪除后立刻執(zhí)行恢復(fù)操作,一般可以將刪除的文件恢復(fù)回來。它們都可以恢復(fù)格式化刪除的數(shù)據(jù),但是低級格式化除外。常規(guī)格式化刪除的只是數(shù)據(jù)信息,低級格式化則刪除全部數(shù)據(jù)區(qū)。如果采用低級格式化,修復(fù)被格式化的硬盤時,只能將這個硬盤拆下來,安裝到其他的計算機中,之后執(zhí)行文件修復(fù)操作。Final Data可以修復(fù)由CIH病毒破壞的硬盤。
五、當系統(tǒng)崩潰時怎么辦
當系統(tǒng)崩潰時只能使用Windows 2000/XP的安裝光盤啟動來修復(fù)Windows,或者是制作Windows 2000/XP的安裝啟動應(yīng)急盤。注意:Windows 2000的安裝盤制作程序在安裝光盤中,而Windows XP的應(yīng)急盤制作是獨立提供的,需要從微軟的網(wǎng)站下載。
六、結(jié)束語
在計算機維護過程中會遇到更多的問題有待解決,但是實際操作起來,有時的工作量就比較大了。只針對硬盤分區(qū)格式化所提出的問題只待從基本的維護點出發(fā),選擇相應(yīng)的操作系統(tǒng)的同時要選擇相應(yīng)的軟件環(huán)境,才能達到安全有效的目的。
參考文獻:
[1]居錦武、王蘭英,NTFS文件系統(tǒng)剖析[J].計算機工程與設(shè)計,2007,(22):5438-6439.
[2]趙雙峰、費金龍、劉楠、武東英,windows NTFS下數(shù)據(jù)回復(fù)的研究與實現(xiàn)[J].計算機工程與設(shè)計,2008,(2):307-308.
[3]王偉,文件系統(tǒng)FAT32與NTFS[J]科技信息(學術(shù)研究),2007,(36):549.
[4]向玉艷,微型計算機文件系統(tǒng)FAT32與NTFS的互換[J].硅谷,2008,(02):15.
作者簡介:
張博(1978-),男,滿族,陜西省寶雞市人,畢業(yè)于長安大學,工學學士學位,長安大學機械學院碩士研究生在讀,助理工程師,就職于寶雞文理學院網(wǎng)絡(luò)管理中心,負責校園網(wǎng)絡(luò)系統(tǒng)維護,研究方向:機械電子工程;陳瑜(1979-),女,漢族,重慶市人,畢業(yè)于西安電子科技大學,工學學士,助理工程師,現(xiàn)就職于航天時代第九研究院710廠,華科公司,負責人力資源信息管理系統(tǒng)。