天天看點

讓 Linux 讀寫 NTFS 格式分區

 目前來說,讓 Linux 支援 NTFS 讀寫操作,有三種方式(商業軟體撇開不談,讀寫測試請見下表):

1、Linux-NTFS

  核心版本為 2.6.X 的,可以通過編譯核心直接擷取對 NTFS 檔案系統的支援。

  在目前 2.6 版本的核心裡,包含了 Linux-NTFS 項目組的驅動,該驅動可以對 NTFS 分區進行快速而可靠的讀取操作,然而寫操作雖然可用,穩定性無法保障。

  優點:可以直接內建在核心中,也可以單獨編譯成子產品;讀寫速度尚算可以。

  缺點:編譯核心不當可能導緻系統無法啟動;而且編譯步驟複雜,耗時較長;雖然讀寫速度都比較快,但執行寫操作可能令分區原有資料丢失(當然,也有反映完全沒問題的)。

2、Captive NTFS

  幾年前,Jan Kratochvil釋出了Captive NTFS(http://www.jankratochvil.net/project/captive/)。該驅動利用 ReactOS(http://www.reactos.org/) 對 Windows 的 NTFS 原始驅動 NTFS.SYS 進行包裝,進而提供了對NTFS 讀寫的完全支援。

  優點:直接調用 M$ 官方檔案系統驅動,在心理上給人以安全感;發行版本包括 rpm 及 tar.gz 壓縮包,安裝友善,亦可自由定制。

  缺點:讀寫速度超慢;需要附加 FUSE 才能實作啟動時自動加載 NTFS 分區;雖然聽起來這是一個不錯的解決方案,可是由于版權的問題,NTFS.SYS 是不能随便釋出的,這給應用帶來了問題。

3、NTFS-3g

  近年,來自 Linux-NTFS 項目組的 Szabolcs Szakacsits 出台了他的新思想,給 NTFS 寫操作的支援帶來了曙光。

  通常驅動程式工作在核心空間 (kernel space),然而也有些驅動程式工作在使用者空間 (user space),FUSE (http://fuse.sourceforge.net/) 就是一個例子。通過 FUSE 的支援,可以開發出具有完全功能的使用者空間檔案系統。

  新的驅動暫時命名為 NTFS-3g,在 FUSE 的基礎上,通過開源的代碼,直接提供了對 NTFS 檔案系統的完全讀寫支援,而不用微軟的 NTFS 驅動。

  優點:開源;相對穩定;讀寫速度快;運作在使用者空間,核心和使用者空間可以做到100%的隔離,系統的穩定性不受影響。

  缺點:需要附加 FUSE 才能實作啟動時自動加載 NTFS 分區;目前還處于測試階段,部分使用者反映穩定性欠佳。

繼續閱讀