您當(dāng)前位置: 主頁 > IT服務(wù) > 數(shù)據(jù)恢復(fù)服務(wù) >
為了加深大家對數(shù)據(jù)恢復(fù)的理解,我們有必要簡單了解一下數(shù)據(jù)存儲的基本原理。這里以硬盤為例做簡單說明(軟盤、光盤及閃盤的數(shù)據(jù)存儲原理與硬盤大同小異)。先來看看硬盤的數(shù)據(jù)結(jié)構(gòu)。當(dāng)我們拿到一塊新硬盤時,必須先對其進(jìn)行分區(qū)和格式化操作后才能使用。對于目前大多數(shù)朋友所使用的Windows操作系統(tǒng)來說,硬盤被操作系統(tǒng)劃分成主引導(dǎo)扇區(qū)、操作系統(tǒng)引導(dǎo)扇區(qū)、文件分配表、目錄區(qū)和數(shù)據(jù)區(qū)這5個部分。其中主引導(dǎo)扇區(qū)在每塊硬盤中都是唯一的,一塊硬盤上只能有一個主引導(dǎo)扇區(qū),而其他部分則在硬盤的每個分區(qū)里都會存在。
軟盤、光盤、閃存盤和硬盤的數(shù)據(jù)存儲原理其實有較大不同。軟盤的存儲原理更像是錄音帶,直接通過電磁感應(yīng)原理把磁場變化變成電流變化,對磁頭和磁介質(zhì)等材料并沒有特殊要求。光盤上面也說了,至于閃盤,是直接用半導(dǎo)體儲存高電位和低電位信號來表示0和1的數(shù)據(jù)信息。同時,各種存儲介質(zhì)所采用的文件格式也有很大區(qū)別。
主引導(dǎo)扇區(qū)位于整個硬盤的0磁道0柱面1扇區(qū),它包括硬盤主引導(dǎo)程序MBR(Main Boot Record)和分區(qū)表DPT(Disk Partition Table)兩部分。主引導(dǎo)程序是由分區(qū)程序(如大家最常用的Fdisk)產(chǎn)生的,所以在不同的操作系統(tǒng)中,主引導(dǎo)程序可能會不同。它的作用就是檢查分區(qū)表是否正確并確定以哪個分區(qū)為引導(dǎo)分區(qū),然后在程序結(jié)束時把該分區(qū)的啟動程序(即操作系統(tǒng))調(diào)入內(nèi)存執(zhí)行。而對于分區(qū)表,大家應(yīng)比較熟悉了,它以80H或00H為開始標(biāo)志,以55AAH為結(jié)束標(biāo)志,共64字節(jié),位于0磁道0柱面1扇區(qū)的最末端。它規(guī)定著系統(tǒng)有幾個分區(qū),每個分區(qū)的起始和終止扇區(qū)、大小及是否為活動分區(qū)等重要信息。
操作系統(tǒng)引導(dǎo)扇區(qū)即OBR(OS Boot Record),通常位于硬盤的0磁道1柱面1扇區(qū)(如果硬盤被設(shè)置為多重引導(dǎo)方式,則位于每個引導(dǎo)系統(tǒng)所在的主分區(qū)或擴展分區(qū)的第一個扇區(qū))。它是操作系統(tǒng)可直接訪問的第一個扇區(qū),也包括一個引導(dǎo)程序和一個被稱為BPB(BIOS Parameter Block)的分區(qū)參數(shù)記錄表。引導(dǎo)程序的主要任務(wù)是判斷本分區(qū)根目錄前兩個文件是否為操作系統(tǒng)的引導(dǎo)文件。如檢查通過,就將引導(dǎo)文件讀入內(nèi)存,并把控制權(quán)交予該文件。BPB分區(qū)表參數(shù)塊則是記錄著本分區(qū)的起始扇區(qū)、結(jié)束扇區(qū)、文件存儲格式、硬盤介質(zhì)描述符、根目錄大小、FAT個數(shù)、分配單元(Allocation Unit,以前也稱為簇)的大小等重要參數(shù)。
不知大家注意過沒有,同一個硬盤,用生產(chǎn)廠家的原廠工具來分區(qū)與用Fdisk或Partition Magic之類的第三方工具來分區(qū)是有區(qū)別的。我們可以試一下,先用原廠工具來分區(qū),然后啟動Partition Magic查看,發(fā)現(xiàn)什么問題沒有?通常用原廠工具分區(qū)的硬盤開頭或結(jié)尾部分,有可能還剩下4~8MB左右的未使用空間,而用Fdisk或Partition Magic分區(qū)則不會產(chǎn)生這種情況。這是硬盤廠家為防止硬盤因為引導(dǎo)區(qū)的信息出錯,或該處扇區(qū)物理損壞而產(chǎn)生的一系列麻煩而采取的一個小小的但是卻很有實用價值的措施。所以,一般用原廠工具分區(qū),硬盤工作起來會比較穩(wěn)定,在非法關(guān)機時也不容易掉鏈子;即使出現(xiàn)所謂的零磁道損壞(邏輯零磁道)、引導(dǎo)區(qū)出錯而導(dǎo)致系統(tǒng)不認(rèn)盤等問題,用戶也不需使用Disk Editor、PCTools等軟件修復(fù)(甚至找JS維修),只需一個原廠工具重新快速低格然后分區(qū)就一切如常了。
文件分配表即FAT(File Allocation Table),是系統(tǒng)的文件尋址系統(tǒng),為了數(shù)據(jù)安全起見,F(xiàn)AT一般做兩個,第二FAT為第一FAT的備份。FAT區(qū)緊接在OBR之后,其大小由本分區(qū)的大小及文件分配單元的大小決定。FAT的格式有很多種,大家比較熟悉的有FAT12、FAT16和FAT32等格式。FAT12目前僅在軟盤驅(qū)動器中使用,F(xiàn)AT16只能用于2GB以下的分區(qū);而FAT32使用最為廣泛,可管理的最大分區(qū)為32GB。
在硬盤克隆、掃描、格式化、拷貝大文件過程中突然斷電的話,基本可肯定會出現(xiàn)分區(qū)表損壞的情況。不過現(xiàn)在大家知道原來分區(qū)表有兩個,同時如果使用原廠工具分區(qū),非法關(guān)機時則不易丟失分區(qū)表信息。文件系統(tǒng)的格式除了FAT16和FAT32外,還有NTFS、ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、VFAT、HPFS、NFS、SMB、SysV、PROC、JFS等。其實,日常我們接觸的都是DOS和Windows下的文件系統(tǒng),而其他的文件系統(tǒng)則同我們相距較遠(yuǎn),這里就不多做介紹了。
目錄區(qū)即DIR(Directory),它緊接在第二FAT表之后。只有FAT還不能定位文件在磁盤中的位置,F(xiàn)AT還必須和DIR配合才能準(zhǔn)確定位文件的位置。DIR記錄著每個文件(目錄)的起始單元(對于文件來說,這才是至關(guān)重要的)、文件的屬性等。操作系統(tǒng)在定位文件位置時,根據(jù)DIR中的起始單元,再結(jié)合FAT表就可知文件在磁盤的具體位置及大小了。
數(shù)據(jù)區(qū)即DATA,當(dāng)將數(shù)據(jù)復(fù)制到硬盤時,數(shù)據(jù)就存放在DATA區(qū)。對于一塊儲存數(shù)據(jù)的硬盤來說,它占據(jù)了硬盤的絕大部分空間,但如沒有前面所提到的4個部分,DATA區(qū)就僅只是一塊填充著0和1的區(qū)域,沒有任何意義。
也不能說沒有任何意義,特別是在SCSI硬盤這種具備完整的校驗和安全機制的硬盤上,數(shù)據(jù)區(qū)的信息里也還有很多附加標(biāo)識信息和校驗信息,可作為數(shù)據(jù)恢復(fù)的手段。IDE硬盤上則確實較麻煩,要花不少功夫。不過目前很多發(fā)布數(shù)據(jù)恢復(fù)軟件的公司都在不斷研究這個問題,希望能通過優(yōu)化算法,盡量提高數(shù)據(jù)恢復(fù)的成功率和恢復(fù)速度。
當(dāng)操作系統(tǒng)要在硬盤上寫入文件時,首先在DIR區(qū)中寫入文件信息(包括文件名、后綴名、文件大小和修改日期),然后在DATA區(qū)找到閑置空間將文件保存,并將DATA區(qū)中存放文件的簇號寫入DIR區(qū),從而完成整個寫入數(shù)據(jù)的工作。系統(tǒng)刪除文件時的操作則簡單許多,它只需將該文件在DIR區(qū)中的第一個字符改成E5,在文件分配表中把該文件占用的各簇表項清0,就表示將該文件刪除,而它實際上并不對DATA區(qū)進(jìn)行任何改寫。通常的高級格式化程序,只是重寫了FAT表而已,并未將DATA區(qū)的數(shù)據(jù)清除;而對硬盤進(jìn)行分區(qū)時,也只是修改了MBR和OBR, 并沒有改寫DATA區(qū)中的數(shù)據(jù)。正因為DATA區(qū)中的數(shù)據(jù)不易被改寫,從而也為恢復(fù)數(shù)據(jù)帶來了機會。事實上各種數(shù)據(jù)恢復(fù)軟件,也正是利用DATA區(qū)中殘留的種種痕跡,來恢復(fù)數(shù)據(jù),這就是整個數(shù)據(jù)恢復(fù)的基本原理。
--- 版權(quán)最終歸艾銻無限所有http://www.whgoodly.com/ 如需轉(zhuǎn)載,請標(biāo)明出處。
相關(guān)文章