"橫霸霸"

2008年9月13日 星期六

NTFS與FAT格式的認識

一次要講的是磁碟的格式,從DOS年代開始,Win3x、Win9x、WinME…相信大家都對FAT16與FAT32格式相當熟悉。而使用過WinNT、Win2k、WinXP的人又會認識一個新的格式,就是NTFS了。到底這兩種格式有什麼不同,又如何能在這兩種格式間轉換,下面將一一為你介紹。

FAT16
這個話說在上古的DOS時代,由於CPU不夠快,硬碟速度也很慢,所以在希望電腦速度能加快的期望之下,就只有盡可能的加速硬碟中檔案的存取速度了,這也是當時電腦增進效能的關鍵之一。
那要如何做呢?首先要了解到,檔案在磁碟上是以一個稱為叢集(Cluster)為單位的方式來儲存,也就是說任何檔案不論大小,在磁碟中所佔的空間都一定是叢集大小xN (N為自然數),因此為了加快檔案的存取或執行速度,適度的將一個叢集單位所佔用的容量提高會有不錯的效果(因為一次就可以將較多的內容從硬碟中讀取出來),所以當初的FAT16規格便針對當時的硬碟容量不同而制定了不同的叢集單位大小,大致如下:

硬碟容量 一個叢集大小
0~31MB 512Bytes
32~64MB 1KB
64~127MB 2KB
128~255MB 4KB
256~511MB 8KB
512~1023MB 16KB
1024~2048MB 32KB


由這個表可以看出,當初的硬碟肯定是個奢侈品,如果在當時有個2GB的硬碟肯定讓大多數的人羨慕到不行,現在卻是丟在路邊連撿它都嫌太重!唉~硬碟的悲慘命運…好!所以說從上面的表可以知道,這樣的定義確實讓電腦的系統整體效能都有所改善,但是~!卻也衍生出另一個問題,就是硬碟空間嚴重的浪費!舉例說明好了,如果有一台1.2GB的硬碟(就當1200MB吧),根據當時的定義,一個叢集的大小是32KB,也就是說如果你只有一個純文字文件不過5Bytes,儲存在硬碟中的時候卻仍然佔用了32KB的容量(大約32768Bytes)!?一供浪費了32768-5=32763Bytes。怎樣,夠可怕了吧!?

FAT32

就這樣,微X做著違背良心的事情(其實DOS是IBM開發的啦),一年一年的過,電腦技術不斷的快速成長,CPU及硬碟速度與當時已不可同日而語!所以當初為了改善效能的規格似乎也沒有必要了!終於,微X開發出了一種全新的格式,就是WinNTNTFS啦 (NTFS的優點稍後再說)!但是在大約1997年時代,由於NTFS格式仍不夠普及,還無法幹掉FAT格式啦,於是微X終於在Win95 OSR2開始提供了新的規格-FAT32,用來解決FAT16所產生的硬碟空間浪費問題。就先來看一下FAT32FAT16有什麼不同吧:

硬碟容量一個叢集大小
260MB~8GB4KB
8GB~16GB8KB
16GB~32GB16KB
32GB以上32KB

同樣再以一個1.2GB的硬碟來看,同樣的也儲存一個5Bytes的檔案,需要佔用一個叢集,也就是4KB,很明顯的和FAT16比起來,已經減少了許多的浪費。說明到這裡,也許有人會問,那為什麼不乾脆將叢集大小制定為1Bytes,就相當完美啦!?當然,理論上是這樣沒錯,實際上這樣做就會因為存取檔案的時間加長(因為對硬碟存取次數增加),而導致系統效能嚴重降低。在空間與效能的平衡點上,FAT32算是一個折衷方案吧!?

總結來說,FAT32格式所改善的地方大致有兩點:

減少硬碟空間的浪費,這是一定的啦!

對於大容量硬碟不需要再分割成好幾個,現在的硬碟可謂”俗又大碗”,但是FAT16只能分割到最大2GB,如果一台10GB的硬碟就必須分割成5~6個磁區了,第9,相當不方便更何況10GB現在也絕種了!取代的是更大容量的時代來臨,使用FAT32就完全沒有這個問題,你甚至可以將數百GB的容量都分割在同一個邏輯磁區中。

NTFS
再這邊要先說明一下,FATNTFS的關係,同時也解釋一下,很多人認為Win9x/me系列作業系統不穩的原因。從作業系統(Operating System)的角度而言相對於UNIX或Linux,FAT16FAT32是非常簡單的檔案系統,當然也就表示在安全性、保密性、自我修復與還原能力…等方面非常差(當然也包括Win9x系統不穩定、架構不成熟…等因素)!因此微軟才會積極的開發新的檔案格式系統,打算培養新一代的接班人,也就是Windows NT,而NTFS就是Windows NT採用的檔案系統,可是呢,由於天不時、地不利、人不合的情況之下,Windows NT並沒有如預期的取代Win 9x系統,也因此拖到2000年才由Win 2k系統出面正式向Win 9x系統宣戰!?打算一舉將
FAT格式掃進博物館。另外FAT檔案系統允許其他軟體程式在安裝的時候,由於該軟體可能會因為某原因而手篡串改或修改系統檔案(最典型的就是語言版本不同,而覆蓋Win9x原有的檔案),這一連串的原因,也就導致為什麼Win9x系統會越用越不穩的主因,隨著軟體的新增移除,系統檔案也就被一再的修改,當然不會穩啦!而NTFS檔案系統在這方面就相當的嚴謹了,NTFS絕對禁止任何無故對系統檔案修改的行為,這樣自然就穩定多了。
說到這裡,講一點微軟系統的歷史吧,這就不得不為微軟說一點點話(就一點點喔),由於FAT檔案格式是沿用DOS時代的系統,微軟當然也知道FAT16格式的這些弊病,所以在新格式NTFS不被廣泛接受的無奈之下,才推出FAT32格式,怎知微軟費盡心機,將Windows NT介面加以改良,進化成Win 2k時,仍然不被大家所接受!?可能宣導不夠吧?大家仍然沒有認知到NTFS格式的好處及優點,不得已,又推出Win me來臨陣湊一角(不然哪有錢賺啊?)。誰知道這臨危受命上場的Win me不但沒有為微軟穩定軍心,反而給他捅了個大蔞子!終於,微軟再也忍不住了,決定這次一定要將FAT格式送進墳墓(連博物館都不讓它放),全新推出Win XP系統,利用多元化的操作介面,多功能軟體的結合,加上多變炫麗色彩的介面,打算將NTFS格式推上主流,雖然Win XP還是允許使用FAT格式,也許是微軟不忍心吧!?(其實是為了能兩邊討好多賺錢吧)

如何知道系統格式
既然簡單的了解了各種系統的特性後,要如何知道自己的系統是什麼格式呢!?雖然在當初做Fdisk或安裝系統的時候就應該知道了,但也許很多人的電腦不是自己組裝的。很簡單的,你只要使用檔案總管在磁碟上按滑鼠右鍵,觀看磁碟內容,就可以看到你的檔案系統是什麼格式了。

轉換格式需注意什麼

其實在基本上,轉換檔案格式並沒什麼好擔心的問題,Just do it!但還是有幾點要注意一下的,就是相容性的問題。雖然說FATNTFS格式,都是微軟一手促成的,但卻彼此不相容,在FAT的系統格式下無法對NTFS格式的檔案做存取,甚至無法正確判讀NTFS系統格式的磁碟(就是看不到啦)。所以舉例說,如果你要將FAT格式轉換成NTFS格式,就要注意,是否未來需要將硬碟拿到FAT格式底下讀取,是否會與其他作業系統共用(例如Linux、MacOS…),另外,許多DOS時代的程式(尤其是遊戲),無法在NTFS下使用。諸如此類的細節,希望在做轉換前要留意。

好!都看到這裡了,就繼續看下去吧,下面將說明如何悠游於FATNTFS格式之間,如何做FATNTFS格式的互相轉換,準備好了嗎?

在此要提醒各位,不管做任何的轉換,最好還是先對重要資料檔案進行備份,或是使用Ghost將磁碟整個備份,以備不測風雲的發生啊!

FAT與NTFS格式互轉

*FAT16轉FAT32

1.使用FAT32轉換器(for Win98)

在Win98(含SE)中有提供一個FAT32轉換程式,所以Win98(含SE)的使用者可以使用它來進行轉換,在進行轉換前記住,一定要將螢幕保護程式、電源管理程式、各類常駐程式全部關閉,避免在轉換過程中造成干擾。
首先,在開始功能表中-程式集-附屬應用程式-系統工具-磁碟轉換器(FAT32),執行磁碟轉換器,在一開始的說明畫面,直接按「下一步」,接著選擇你要轉換的磁碟代號,再按「下一步」,接下來會檢查你的系統中是否有和FAT32不相容的程式軟體,有的話就會顯示在列表中,如果有你一定要執行的重要程式,那就先不要轉換吧,如果沒有,就按「下一步」吧,然後會要求你做備份,建議不需要備份,直接按「下一步」吧,接下來會告訴你FAT轉換程式是屬於DOS程式,所以要重新開機在DOS下進行,按「下一步」重新開機吧。進入DOS模式後就會自動開始轉換了,完成後又會自動重新開機,這一步完全不用動手。再重新進入Windows後會立刻對系統做磁碟重組,以便將系統所有檔案正確的轉換到FAT32儲存,可以先睡一覺了,重組完成後會出現一個對話框,告訴你轉換已成功,按下「完成」就算大功告成了。

2.使用Partition Magic(for WinME/2k/XP)

由於WinME已經沒有FAT32轉換程式(因該也沒有人到WinME還在用FAT16吧),在Win2k/xp中當然也就不會有啦(此時還有人用FAT16就真的是罕見了)!所以就要借助其他軟體來完成不可能的任務(也沒有這麼嚴重啦),在此推薦使用Partition Magic 7.0這套軟體,以下是操作說明。
安裝完軟體後,開啟程式,在左邊的視窗中會顯示你所有的磁碟樹狀結構(有點像檔案總管),在你要轉換的磁碟上點一下滑鼠右鍵,然後在彈出的功能表中選擇「轉換(Convert)」,然後出現轉換格式選擇對話框,在此選擇FAT32然後按「OK」,接著出現一個確認對話框,請按「Yes」繼續,接著就出現Wrong對話框,告訴你必須到DOS下進行,同樣按「確定」繼續,重新開機後進入DOS就會開始轉換了,轉換完成後也會自動重新開機,再次進入Windows後就完成啦。

*FAT32轉FAT16

相信各位應該沒有什麼理由會需要將FAT32轉成FAT16吧!?不過為了極少數的異族,還是說明一下吧。由於FAT16最多只支援2GB的磁碟,所以如果你的容量超過2GB就無法轉換了,想當然爾,微軟也不會提供這樣的轉換程式,所以又要借助Partition Magic的幫助了。
同樣執行該軟體,再左邊的視窗中一樣選擇你要轉換的磁碟代號,在滑鼠右鍵中選擇「轉換(
Convert)」,在磁碟格式選擇對話框中選擇FAT16,按「OK」繼續,關閉Partition Magic後一樣出現確認對話框,按「Yes」繼續,相同的,也必須到DOS下進行轉換,所以按「確定」吧。重新開機到DOS下後就開始轉換了,完成後會再重新開機進入Windows,轉換工作也就完成了。

*FAT16或FAT32轉NTFS(for Win2k/XP)

在Win 2k/XP中有內建一個Convert轉換程式,用以將檔案系統轉換成NTFS格式,操作如下:
首先在開始功能表中-附屬應用程式-命令提示字元,先進入模擬DOS的命令提示字元下,輸入如下範例的指令:
E:\>convert d:/fs:ntfs  (其中d為你要轉換的磁碟代號)
然後出現一些d磁區的資訊,並檢查該磁區的相關資訊及檔案配置情形,然後就會自動開始進行轉換工作(速度還不錯),結束後回到原來的命令提示字元下,輸入exit關閉D
OS視窗就可以了。下次你再進入Windows時就會自動轉換檔案,完成後會自動重新開機,就算完成了。
如果你要轉換的磁碟為系統本身所在的磁區,會稍有不同,請看以下範例:
E:\>convert e:/fs:ntfs  (假設e磁區為系統所在磁區)
輸入上述的指令後按Enter,會出現訊息告訴你,你要強制卸下磁碟區嗎?(Y/N),輸入n
然後問你是否進行轉換?(Y/N),請輸入y,
然後告訴你下一次重新啟動系統時,轉換會自動執行,同樣輸入exit關閉DOS視窗,下次你再進入Windows時就會自動轉換檔案,完成後會自動重新開機,就算完成了。

*NTFS轉FAT32(for Win 2k/XP)

1.使用Partition Magic 7.0

如果你對於NTFS格式並不滿意,或是另有用意一定要轉回
FAT32格式,在不傷及磁碟資料的前提下,可以使用Partition Magic 7.0來完成。同樣的也是先執行該軟體,在左邊的視窗中選擇你要轉換的磁區,按下滑鼠右鍵,選擇「轉換(Convert)」,在磁碟格式選擇對話框中選擇FAT32,按「OK」進行下一步,如果你使用Partition Magic 7.0英文版,就會出現一個對話框,告訴你應該使用中文版來進行轉換,否則有些中文檔案名稱可能會無法正確轉換,不過內容本身並不受影響,沒問題的話就按「確定」繼續吧。關閉Partition Magic視窗就會出現一個確認對話框,按「Yes」繼續,接著會再次警告你找到中文檔名,最好使用中文版,若無所謂就按「是(Yes)」繼續吧,然後就開始轉換了,可以看到顯示的進度百分比,完成後就可以按「OK」來結束,最後會出現要求重新開機的訊息,按「確定」後重新開機吧。

2.用開機片進行
利用Windows 2000安裝光碟直接開機或是使用四片開機片開機,將磁區格式為FAT32,此法會把原NTFS資料刪除,請先備份資料。四片開機片製作方法,準備Windows 2000安裝光碟片、執行光碟目錄中的「BOOTDISK」中的「Makeboot.exe」、依序放入空白磁片即可製作開機片了。

3.使用FDisk
如果是要重新安裝作業系統,資料也都備份了,那使用FDisk就可以幫你輕鬆完成了。先講解一個觀念,除了FAT格式外,在FDisk下,任何格式都被視為非DOS磁區(NonDOS),所以使用開機片進入純DOS下,執行FDisk,選擇第三個選項「刪除磁區」,然後選擇第四個選項「刪除非DOS(NonDOS)磁區」,就可以將NTFS格式的磁區刪除掉,然後重新開機,使用FDisk再分割一次,將磁區分割為FAT32格式就行囉!

好!以上已經介紹了各種格式間的轉換,也小敘了一段各種格式的說明,相信各位應該對於檔案系統格式有進一步的認識了,以後需要重新安裝系統也就不用再苦思囉!

沒有留言: