從理論上講,NTFS格式化為FAT32后,就是把分區(qū)表的分區(qū)類型07改成了0B或0C,然后重寫了DBR,應(yīng)該不會破壞最后一個(gè)扇區(qū)的NTFS的DBR備份,如果這個(gè)備份沒有被破壞的話,相對就比較簡單,只需要把這個(gè)備份的DBR復(fù)制到原來的DBR位置,然后把分區(qū)表中的分區(qū)類型改回07即可,但我在操作過程中發(fā)現(xiàn),在NTFS格式化為FAT32后,最后一扇區(qū)的DBR備份也已經(jīng)被清零了,這就需要重建原來NTFS的DBR。
首先從一個(gè)完好NTFS分區(qū)中復(fù)制一個(gè)DBR覆蓋原來的DBR,然后需要修改DBR中BPB的七處參數(shù)(視具體情況,主要有四處):
1.每簇扇區(qū)數(shù);
2.隱藏扇區(qū)數(shù);
3.扇區(qū)總數(shù);
4.$MFT起始簇號;
5.$MFTMirr起始簇號;
6.文件記錄的大小描述;
7.索引緩沖區(qū)的大小描述。
具體的修改方法:
1.隱藏扇區(qū)數(shù):通過分區(qū)表獲得;
2.扇區(qū)總數(shù):也可由分區(qū)表獲得,但要比分區(qū)表中少一個(gè)扇區(qū);
3.$MFT起始簇號:搜索文件記錄“46494C45”,找出0號MFT記錄,由其80屬性的DATARUN算出起始簇號;
4.$MFTMirr起始簇號:0號MFT的下一個(gè)文件記錄就是$MFTMirr記錄,同樣由其80屬性的DATARUN算出起始簇號;
5.每簇扇區(qū)數(shù):由80屬性的DATARUN中的簇?cái)?shù)和80屬性的屬性體的大小字節(jié)數(shù)算出每簇扇區(qū)數(shù)。即:每簇扇區(qū)數(shù)=文件大小字節(jié)數(shù)÷每扇區(qū)字節(jié)數(shù)512÷簇?cái)?shù);
6.文件記錄的大小描述和索引緩沖區(qū)的大小描述一般就依據(jù)默認(rèn)。
為了方便,也提倡用模板修改,修改好后保存,重啟或是退出重新加載,數(shù)據(jù)就會重現(xiàn)!