FAT32、NTFS、exFAT,記憶卡該怎麼格式化?

檔案格式支援情形 

在預設狀態下,Windows XP、Windows 7、Mac OS X 以及 Fedora 14 對於 FAT32、NTFS 及 exFAT 檔案系統的支援情形,整理如下表:

▼主流檔案系統於作業系統上的支援情形


FAT32
NTFS
exFAT
Windows XP 支援
(需小於32GB) 
支援 不支援 [註3]
Windows 7 支援
(需小於32GB)
支援 支援
Mac OS X 支援
(無容量限制)
只可讀取 [註1] 支援(系統版本10.6.5以後)
Fedora 14 (Linux) 支援
(無容量限制)
支援 [註2] 不支援 [註4]
  • 註1:Mac OS X 10.6 起已經支援寫入 NTFS 檔案系統,但系統預設並未啟用此功能;建議以 SL-NTFS(下載網址為http://juicybinary.com/sl-ntfs/)啟用 NTFS 檔案系統的寫入功能。此外,Mac OS X 10.4~10.6 的用戶亦可安裝 ntfs-3g for Mac,下載網址為http://www.tuxera.com/products/tuxera-ntfs-for-mac/
  • 註2:須安裝 ntfs-3g。ntfs-3g 為 Fedora 14 預設的安裝套件之一,如果您的 Linux 系統並未安裝 ntfs-3g,則需自行安裝。
  • 註3:Windows Vista SP1 及 Windows 7 業已支援 exFAT 檔案系統。Windows XP SP2/SP3 用戶,請自行下載安裝 KB955704 更新檔(下載網址為http://www.microsoft.com/downloads/details.aspx?FamilyID=1cbe3906-ddd1-4ca2-b727-c2dff5e30f61&displayLang=zh-tw)之後,即可支援 exFAT。
  • 註4:雖然 Fedora 14 官方並未支援 exFAT,但透過安裝開放原始碼的第三方驅動程式,即可支援 exFAT 檔案系統的讀寫功能。方式如下:
    • 1. 如果您的 Fodora 14 並未安裝 subversion、scons、fuse-devel 以及 gcc 套件,請先行安裝。
    • 2. 開啟「終端機」,並輸入如下指令下載並編譯 exFAT 驅動程式:
      • svn co http://exfat.googlecode.com/svn/trunk/ exfat-source
      • cd exfat-source
      • scons
      • sudo scons install
    • 3. 完成上述步驟之後,您的 Fedora 14 已經可以辨認並讀寫 exFAT 檔案系統了(但因 Fedora 14 並未原生支援 exFAT,現階段尚無法使用 exFAT 為磁碟格式化)。

格式化實測結果 

筆者分別使用創見 (Transcend) 8GB SDHC Class 6 記憶卡以及 1.5 TB USB 外接硬碟(內裝硬碟 Seagate Barracuda 7200.11 1.5 TB,型號:ST31500341AS)為例,分別於上述 3 種作業系統使用 FAT32、NTFS 及 exFAT 檔案系統進行格式化的結果:

▼Transcend(創見)8 GB SDHC Class 6 記憶卡

格式 檔案系統
所占空間
(位元組)
可用空間
(位元組)
叢集大小[註1]
(位元組)
格式化軟體
[註2]
FAT32 32,768 8,059,846,656 32,768(32k) SD Formatter 3.0
Windows 7
FAT32 4,096 8,048,332,800 4,096 (4k)
(系統預設值)
Windows XP SP3
FAT32 4,096 8,047,292,416 4,096 (4k)
(系統預設值)
Windows 7
NTFS 65,445,888 7,998,623,744 4,096 (4k)
(系統預設值)
Windows 7
NTFS 66,177,024 7,997,895,680 1,024 (1k) Windows 7
exFAT 98,304 8,061,878,272 32,768 (32k)
(系統預設值)
Windows XP SP3
Windows 7
exFAT 4,096 8,054,374,400 4,096 (4k) Windows 7
  • 註1:叢集 (cluster) 是儲存媒體的最小儲存單元。
  • 註2:以上格式化軟體為 Windows 7 及 Windows XP SP3,係表示使用該系統內建之工具軟體進行格式化(請參見「格式化工具」一節)。

▼Seagate Barracuda 7200.11 1.5 TB 硬碟(型號:ST31500341AS)

格式
[註1]
檔案系統所占空間
(位元組)
可用空間
(位元組)
叢集大小
(位元組)
格式化軟體
[註2]
FAT32 1,769,472 1,499,933,868,032 32,768 (32k) Mac OS X 10.6.7
FAT32 16,384 1,499,569,602,560 16,384 (16k) Fedora 14
NTFS 113,360,896 1,500,188,516,352 4,096 (4k)
(系統預設值)
Windows XP SP3
Fedora 14
NTFS 135,675,904 1,500,166,201,344 4,096 (4k)
(系統預設值)
Windows 7
NTFS 250,703,872 1,500,051,173,376 1,024 (1k) Windows XP SP3
NTFS 273,025,024 1,500,028,852,224 1,024 (1k) Windows 7
exFAT 1,703,936 1,500,252,864,512 131,072 (128k)
(系統預設值)
Windows XP SP3
Windows 7
exFAT 2,490,368 1,500,252,078,080 131,072 (128k) Mac OS X 10.6.7
  • 註1:Windows XP SP3 及 Windows 7 無法在大於 32GB 的儲存媒體使用 FAT32 進行格式化。
  • 註2:以上格式化軟體為 Windows 7、Windows XP SP3、Mac OS X 10.6.7 及 Fedora 14,係表示使用該系統內建之工具軟體進行格式化(請參見「格式化工具」一節)。

依據筆者的使用經驗,在相同的檔案系統(如 NTFS)之下,使用不同格式化軟體對於儲存媒體的效能並無明顯差異;但若選用的叢集大小不同,對於磁碟的儲存空間及讀寫效能上,則會產生決定性的影響。舉例而言,如果您在格式化磁碟時選擇 32k 位元組作為叢集大小,則儲存的資料將以 32k 位元組為單位進行配置。假設某個檔案大小為 32,770 個位元組 (=32,768+2) ,則因為超出 32,768 個位元組的部分(2 個位元組)亦需以 1 個叢集來儲存,所以這個檔案實際占用 2 個叢集,相當於 65,536 個位元組 (32k*2) 的儲存空間;也就是說,剩下的 32,766 個位元組就浪費掉了。

不過,如果儲存媒體有較大的叢集空間,一般而言也代表著較好的讀取效率(可一次讀入較多資料,減少讀寫頭移動的次數)。如果硬碟叢集過小,在頻繁地讀寫資料之下,資料檔案存放的位置將愈來愈零散,導致移動讀寫頭的機械動作過於頻繁,而嚴重減緩讀寫資料的速度。這時候,就必須經常搭配使用磁碟重組工具(Windows 系統內建於「附屬應用程式」→「系統工具」,但筆者建議改用重組速度更快、功能更強的 Smart Defrag 2,網址為 http://www.iobit.com/iobitsmartdefrag.html)重新編排資料檔案在硬碟中的位置,來提升磁碟效能。

至於檔案系統種類、讀寫效能與節省空間的選擇上,如何取捨,請繼續參考下一節。

哪種檔案系統是您的最佳選擇?

選擇最適合您的檔案系統,建議可從幾個面向考量:

1. 相容性:

以 SDHC 記憶卡為例,如果您的 SDHC 記憶卡係以提供數位相機、攝錄影機、車用導航機等週邊使用為主,則 FAT32 的高度週邊相容性,應是您的首要選擇;但如果您的週邊支援 32 GB 以上儲存空間的 SDXC 記憶卡,則 exFAT 或許是更佳考量。此外,對於市售儲存容量動輒超過 250 GB以上的外接硬碟,建議使用 NTFS 或 exFAT 檔案系統,在不同作業系統之間的相容性最佳。

2. 個人需求:

如果相容性並非您的主要考量(無需與其他電腦或週邊裝置共用儲存媒體),筆者建議您可依自己的需要訂作符合自身需求的檔案系統,至於 FAT32、NTFS 或 exFAT,因為主流作業系統皆已支援,皆是不錯的選擇。但對於常需要編輯影片的多媒體工作者而言,FAT32 有單一檔案儲存空間不得超過 4 GB 的限制,如果檔案大小有超過此限值的可能,則 NTFS 或 exFAT 檔案系統,應該是較好的選擇。而 NTFS 檔案系統支援日誌 (journaling) 功能,相較 FAT32 及 exFAT 有更佳的穩定性,但缺點是檔案系統本身占用較多的儲存空間(以筆者的 1.5 TB 外接硬碟為例,NTFS 檔案系統本身即占了數百 MB)。

當您決定選擇何種檔案系統,之後,建議再依據您主要的資料檔案類型,選擇搭配適當的叢集 (cluster) 大小(即Windows XP 及 Windows 7 格式化工具的「配置單位大小」下拉式清單項目),即可進一步將儲存空間做最有效率的使用。

最後,依據筆者的使用經驗,如果資料檔案類型係以文書、試算表等較小容量的檔案為主,則 4 kB 大小的叢集(或者更小的叢集)絕對是不錯的選擇。如果資料係以未壓縮型式 (RAW) 的數位照片、影音畫面等多媒體資料為主,則建議選用 32 kB 以上的大叢集,應可以增進您硬碟的讀寫效率。

老刀
作者

歡迎參觀我的部落格「老刀烏白講」

使用 Facebook 留言
Charlie Chou
3.  Charlie Chou (發表於 2011年4月30日 19:28)
※ 引述《Quinn》的留言:
> Fedora不代表所有的Linux阿

Fedora只是個老牌的Linux而已...
放ubuntu還比較實際...

結論:
外接硬碟用NTFS
Flash,記憶卡,隨身碟死守FAT32...
171eab64db6b60b2a3b9994d4e228110?size=48&default=wavatar
1人給推

4.  Fedora (發表於 2011年4月30日 20:48)
「磁碟公用程式」是 Red Hat Inc. 開發的,Fedora 是 Red Hat 支援的社群專案。

各位沒試過嗎?Ubuntu 同樣也有該程式,去試試看就知道完全一樣囉。
老刀
5.  老刀 (發表於 2011年4月30日 21:21)
其實 google code 那個 exFAT 驅動程式也有提供給 Ubuntu 專用的 binary,要不要下載來試一下?
zinklink
1人給推

7.  zinklink (發表於 2011年5月03日 16:17)
※ 引述《Quinn》的留言:
> Fedora不代表所有的Linux阿

Linux 分支太多,你總不能每個都測吧? 支不支援某種格式和Kernel 版本比較有關
發表回應
謹慎發言,尊重彼此。按此展開留言規則