成人在线你懂的-成人在线免费小视频-成人在线免费网站-成人在线免费视频观看-日韩精品国产一区二区-日韩精品国产一区

掃一掃
關(guān)注微信公眾號(hào)

詳細(xì)描述NTFS文件系統(tǒng)的可恢復(fù)性
2007-01-23   中國(guó)IT實(shí)驗(yàn)室


NTFS是隨著Windows NT操作系統(tǒng)而產(chǎn)生的,全稱為“NT File System”,中文意為NT文件系統(tǒng),如今已是windows類操作系統(tǒng)中的主力分區(qū)格式了。它的優(yōu)點(diǎn)是安全性和穩(wěn)定性極其出色,在使用中不易產(chǎn)生文件碎片,NTFS分區(qū)對(duì)用戶權(quán)限作出了非常嚴(yán)格的限制,每個(gè)用戶都只能按著系統(tǒng)賦予的權(quán)限進(jìn)行操作,任何試圖越權(quán)的操作都將被系統(tǒng)禁止,同時(shí)它還提供了容錯(cuò)結(jié)構(gòu)日志,可以將用戶的操作全部記錄下來(lái),從而保護(hù)了系統(tǒng)的安全。本文主要論述的就是NTFS在系統(tǒng)崩潰或磁盤出現(xiàn)故障后如何安全的恢復(fù)文件系統(tǒng)。

NTFS是一個(gè)具備錯(cuò)誤預(yù)警的文件系統(tǒng)。由于NTFS對(duì)關(guān)鍵文件系統(tǒng)的系統(tǒng)信息采用了冗余存儲(chǔ),故而當(dāng)磁盤上的某個(gè)扇區(qū)損壞時(shí),NTFS仍可以訪問(wèn)卷上的關(guān)鍵數(shù)據(jù)。NTFS分區(qū)的最開(kāi)始的16個(gè)扇區(qū)是分區(qū)引導(dǎo)扇區(qū),用以保存分區(qū)引導(dǎo)代碼,接下來(lái)是主文件表(MFT),如果MFT所在的磁盤扇區(qū)出現(xiàn)損壞,NTFS文件系統(tǒng)會(huì)將MFT轉(zhuǎn)移到到硬盤的其他扇區(qū),這樣就保證了NTFS文件系統(tǒng)和Windows操作系統(tǒng)的正常運(yùn)行。比之先前的FAT16和FAT32文件系統(tǒng)的FAT(文件分配表),F(xiàn)AT只能固定在分區(qū)引導(dǎo)扇區(qū)的后面,一旦該扇區(qū),整個(gè)文件系統(tǒng)就會(huì)癱瘓,NTFS文件系統(tǒng)顯然要先進(jìn)的多了。不過(guò)這種移動(dòng)MFT的做法卻也并非十全十美,如果分區(qū)引導(dǎo)代碼中指向MFT的部分出現(xiàn)錯(cuò)誤,那么NTFS文件系統(tǒng)便會(huì)不知道到哪里尋找MFT ,從而會(huì)報(bào)告“磁盤沒(méi)有格式化”這樣的錯(cuò)誤信息。為了避免這樣的問(wèn)題發(fā)生,分區(qū)引導(dǎo)代碼中會(huì)包含一段校驗(yàn)程序,專門負(fù)責(zé)偵錯(cuò)。

NTFS文件系統(tǒng)通過(guò)基于事務(wù)處理模式的日志記錄技術(shù)(transaction logging and recovery techniques),成功保證了NTFS卷的一致性,實(shí)現(xiàn)了文件系統(tǒng)的可恢復(fù)性。在 FAT 或 HPFS 上執(zhí)行 CHKDSK 時(shí),系統(tǒng)會(huì)檢查目錄、分配和文件表中指針的一致性;但是在 NTFS 下,系統(tǒng)會(huì)維護(hù)針對(duì)這些組件的事務(wù)日志,因此,CHKDSK 只需將事務(wù)回滾到上一個(gè)提交點(diǎn)就可以恢復(fù)文件系統(tǒng)中的一致性。事務(wù)日志方法需要的系統(tǒng)開(kāi)銷是很小的。NTFS并不是直接在日志文件中存取記錄,而是通過(guò)LFS來(lái)讀寫。LFS提供了包括打開(kāi),寫入,向前,向后,更新等操作來(lái)幫助NTFS處理日志文件。

我們把每一個(gè)具體的對(duì)NTFS卷文件的I/O操作看作一個(gè)事務(wù),每個(gè)事務(wù)都是一個(gè)原子操作。這樣,任何復(fù)雜的操作都可以分解成很多個(gè)事務(wù)。系統(tǒng)面對(duì)的就是許許多多的不同的事務(wù)。當(dāng)一個(gè)事務(wù)開(kāi)始后,它要么被順利的完成,要么當(dāng)遇到某些意外而出錯(cuò)時(shí)能回滾到上一個(gè)提交點(diǎn),這時(shí)候NTFS卷處于該事務(wù)開(kāi)始前的狀態(tài)。很多原因都可以導(dǎo)致事務(wù)操作失敗,如磁盤壞道、內(nèi)存不足、設(shè)備連接錯(cuò)誤等等。

為了確保每個(gè)事務(wù)都能順利的完成或出錯(cuò)回滾到上一狀態(tài),對(duì)于每個(gè)事務(wù)NTFS文件系統(tǒng)都會(huì)執(zhí)行以下步驟:

(1) 把此次事務(wù)中的子操作記錄到已緩存在內(nèi)存的日志文件里;

(2) 把實(shí)際的子操作數(shù)據(jù)記錄到內(nèi)存中;

(3) 在緩存于內(nèi)存的日志文件里把此次事務(wù)標(biāo)記為已提交;

(4) 把日志寫入磁盤;

(5) 把數(shù)據(jù)寫入磁盤。

事實(shí)上,對(duì)于步驟 (4) 和步驟 (5) ,NTFS并不是即時(shí)寫入磁盤的,而是采用了延遲寫(lazy-write)技術(shù),選擇在之后一個(gè)適當(dāng)?shù)臅r(shí)機(jī)用最佳方式把很多數(shù)據(jù)批處理到磁盤上。使用延遲寫技術(shù)大大減少了磁盤操作的頻率,從而極大地改善了系統(tǒng)的性能,但是在系統(tǒng)崩潰時(shí)有可能導(dǎo)致磁盤的不一致性,有一定風(fēng)險(xiǎn)。在我們自己編寫的應(yīng)用程序中可以通過(guò)設(shè)定FILE_FLAG_WRITE_THROUGH讓系統(tǒng)不通過(guò)緩存而講數(shù)據(jù)直接寫入磁盤中——這時(shí)候系統(tǒng)其實(shí)仍然會(huì)緩存寫操作只是沒(méi)有延遲寫入磁盤而已。

NTFS文件系統(tǒng)保證了緩存的日志先于事務(wù)中更改的數(shù)據(jù)存入磁盤。當(dāng)文件系統(tǒng)更新緩存后,NTFS通過(guò)記錄在緩存的日志里被標(biāo)記為已完成的事務(wù)來(lái)提交這些事務(wù)。當(dāng)緩存的日志刷新到磁盤上時(shí),所有標(biāo)記為提交的事務(wù)都要保證已經(jīng)被完成了,即使系統(tǒng)可能會(huì)在把這些事務(wù)對(duì)數(shù)據(jù)的實(shí)際變動(dòng)都存入磁盤之前崩潰掉。

當(dāng)系統(tǒng)發(fā)生錯(cuò)誤時(shí),NTFS文件系統(tǒng)的日志中有足夠的信息去完成或中斷任何出問(wèn)題的事務(wù)。執(zhí)行恢復(fù)操作的時(shí)候,NTFS文件系統(tǒng)重做日志里每一個(gè)標(biāo)記為提交的事務(wù);然后文件系統(tǒng)在日志中查找那些在上一次系統(tǒng)崩潰時(shí)沒(méi)有提交的事務(wù),把日志中這些沒(méi)有提交的事務(wù)的子操作統(tǒng)統(tǒng)撤銷掉。因?yàn)镹TFS文件系統(tǒng)在任何數(shù)據(jù)變動(dòng)寫入硬盤之前已經(jīng)把這些變動(dòng)的日志先寫入了硬盤,所以NTFS擁有那些在恢復(fù)過(guò)程中需要回滾的子操作的所有的有效信息。

但是實(shí)際上,NTFS用這種事務(wù)日志技術(shù)來(lái)恢復(fù)數(shù)據(jù)也并不是那么保險(xiǎn)的。而且,因?yàn)橄到y(tǒng)是通過(guò)日志來(lái)恢復(fù)的,恢復(fù)的過(guò)程對(duì)文件系統(tǒng)的所有數(shù)據(jù)都有可能造成影響——除非用戶在存取數(shù)據(jù)的時(shí)候使用了FILE_FLAG_WRITE_THROUGH標(biāo)志。如果用戶程序沒(méi)有使用FILE_FLAG_WRITE_THROUGH存取數(shù)據(jù),那么在系統(tǒng)崩潰后用戶數(shù)據(jù)很有可能會(huì)丟失。有可能系統(tǒng)只恢復(fù)出很陳舊的數(shù)據(jù),或者恢復(fù)出不可意料的錯(cuò)誤數(shù)據(jù),或者無(wú)法恢復(fù)任何數(shù)據(jù)。

硬盤故障的修復(fù)

NTFS文件系統(tǒng)利用cluster remapping技術(shù)來(lái)減小磁盤的壞扇區(qū)對(duì)NTFS卷的影響。NTFS可以對(duì)硬盤上的邏輯錯(cuò)誤和物理錯(cuò)誤進(jìn)行自動(dòng)偵測(cè)和修復(fù),但在FAT16和FAT32時(shí)代,我們需要借助 Scandisk這個(gè)程序來(lái)標(biāo)記磁盤上的壞扇區(qū),但當(dāng)發(fā)現(xiàn)錯(cuò)誤時(shí),數(shù)據(jù)往往已經(jīng)被寫在了壞的扇區(qū)上了,損失已經(jīng)造成。

NTFS 文件系統(tǒng)則不然,每次讀寫時(shí),它都會(huì)檢查扇區(qū)正確與否。當(dāng)讀取時(shí)發(fā)現(xiàn)錯(cuò)誤,NTFS會(huì)報(bào)告這個(gè)錯(cuò)誤;當(dāng)向磁盤寫文件時(shí)發(fā)現(xiàn)錯(cuò)誤, NTFS將會(huì)十分智能地 換一個(gè)完好位置存儲(chǔ)數(shù)據(jù),操作不會(huì)受到任何影響。在這兩種情況下,NTFS都會(huì)在壞扇區(qū)上作標(biāo)記,以防今后被使用。這種工作模式可以使磁盤錯(cuò)誤可以較早地被發(fā)現(xiàn),避免災(zāi)難性的事故發(fā)生。

在 FAT 或 HPFS 下,只要位于文件系統(tǒng)的特殊體中的一個(gè)扇區(qū)失效,簡(jiǎn)單扇區(qū)失效(single sector failure)就會(huì)發(fā)生。 NTFS 在兩方面阻止這種情況的發(fā)生:第一,不在磁盤上使用特殊數(shù)據(jù)體且跟蹤并保護(hù)磁盤上的所有對(duì)象。第二,在 NTFS 下,會(huì)保存有多份(數(shù)量是由卷的大小決定的)主文件表。

小結(jié):

在系統(tǒng)的可靠性與可恢復(fù)性方面,NTFS文件系統(tǒng)比以往的FAT32文件系統(tǒng)體現(xiàn)了極大的優(yōu)勢(shì)。自從Windows2000開(kāi)始,微軟開(kāi)始推薦大家使用NTFS的磁盤格式,其后推出的XP更是要配合這種磁盤格式才能發(fā)揮其最大的性能優(yōu)勢(shì)。而且實(shí)際上隨著海量硬盤的發(fā)展,使用NTFS的分區(qū)格式將越來(lái)越必要;在新一代的windows系統(tǒng)中,F(xiàn)AT系統(tǒng)也勢(shì)必會(huì)被NTFS逐漸取代。NTFS的安全性、可靠性與高效性即使與ext3、reiserfs等優(yōu)秀文件系統(tǒng)相比也毫不遜色,相信如果將來(lái)微軟能開(kāi)放更多NTFS技術(shù)細(xì)節(jié)的話,NTFS必將得到更廣泛的應(yīng)用,必將在文件系統(tǒng)世界里大放異彩。

熱詞搜索:

上一篇:在Vista中禁用UAP功能
下一篇:懶人秘籍 Windows操作一鍵輕松搞定(上)

分享到: 收藏
主站蜘蛛池模板: 电影《忠爱无言》| 喜迎20大文艺汇演主持词| 天地争霸美猴王免费观看完整版| 我们的高清免费视频观看| 工会基层组织选举工作条例| 女生被艹网站| 水管十大品牌排行榜前十名| 道德底线| 无声无息电影| 少年派3免费观看完整版电视剧| 沟通能力自我评价| 苹果广告| 在线抖音| 性治疗营电影| 保坂尚辉| 女生操女生| 《无人生还》电影在线观看| 松永纱奈在线| 真的爱你最标准谐音歌词| 黎明电影| 80年代欧美动画片| 蜡笔小新日语原版| 试衣间电影| 张家界旅游攻略自由行攻略| 口舌 — 视频 | vk| 李白电影| 同性gay| 扫毒3:人在天涯 电影| 蜡笔小新日语版| 夫妻激情| 北之萤| 欧美变态sososo另类| 《哪吒3》免费全部观看| 英雄卡片简单又漂亮| 《伪装者》演员| 二年级拍手歌生字组词| 24点数学题目100道| 庞瀚辰| 豪勇七蛟龙 电影| 扎西顿珠的个人资料简介| 春风不问路|