NTFS - Arch Linux 中文维基

跳至內容

# NTFS

出自 Arch Linux 中文维基

相關文章

- 文件系統
- NTFS-3G
- Ufsd

翻譯狀態：

- 本文（或部分內容）譯自 NTFS，最近一次同步於 2025-11-15，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

來自維基百科：

  NTFS (New Technology File System) 是一個由微軟開發的專有日誌文件系統。從 Windows NT 3.1 開始是 Windows NT 系列的默認文件系統。

ntfs3 內核驅動提供了讀寫支持。

內核驅動並沒有配套的用戶空間工具，因此仍需使用 Windows 機器或 NTFS-3G 等外部工具來格式化分區或進行維護。

## 提示與技巧

### 提高性能

你可以啟用為 mount(8) 啟用 `prealloc` 選項來為並行寫入操作減少碎片（對機械硬碟更有用）。

### 防止創建 Windows 不支持的命名

NTFS 本身對字符和名稱沒有限制，但 Windows 對此有限制。

從內核版本 6.2 開始，ntfs3 支持 `windows_names` mount(8) 選項。使用該選項可嚴格保證兼容性。

提示：udisks 默認啟用該選項。

## 已知問題

### 掛載時需要明確的文件系統類型

`ntfs3` 掛載時需要明確的文件系統類型，否則可能會將文件系統掛載為只讀，詳見#文件系統掛載為只讀。

要掛載文件系統，請將其類型指定為 `ntfs3`。例如，使用 mount(8) 的 `-t`/`--types` 選項：

    # mount -t ntfs3 /dev/sdxY /mnt

## 排障

### 文件系統掛載為只讀

linux包提供的內核啟用了`CONFIG_NTFS_FS`兼容性選項 [1]。它會模仿舊版驅動的行為，把掛載選項中文件系統類型為`ntfs`的文件系統掛載為只讀。

要掛載文件系統為可讀寫，請使用`ntfs3`類型。詳見#掛載時需要明確的文件系統類型。

### unknown filesystem type 'ntfs'

掛載 NTFS 時，可能會遇到如下錯誤：

    mount: /mnt: unknown filesystem type 'ntfs'

請檢查是否已安裝 ntfs-3g：

    $ pacman -Qi ntfs-3g

如果尚未安裝，可安裝之。也可以使用 `-t ntfs3` 參數來指定使用內核的 ntfs3 驅動。

若將 `ntfs3` 作為 `ntfs` 分區的默認驅動程序，那麼 udev 規則可以解決問題：

    /etc/udev/rules.d/ntfs3_by_default.rules

    SUBSYSTEM=="block", ENV{ID_FS_TYPE}=="ntfs", ENV{ID_FS_TYPE}="ntfs3"

不過這僅為一種方法而非建議，並且可能弄暈一些第三方工具。

### 無法用 ntfs3 掛載被標記為髒的分區

嘗試掛載一個正常的 NTFS 分區時（成功地使用 NTFS-3G 掛載，執行 `ntfsfix --no-action` 不匯報任何錯誤時），你可能會獲得下面的錯誤：

    mount: /mnt: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error.
           dmesg(1) may have more information after failed mount system call.

當分區被標記為「髒的」時，ntfs3 將不會掛載它。`dmesg` 會幫助你判斷這個情況，會說：

    sdb1: volume is dirty and "force" flag is not set!

你可以嘗試用 `--clear-dirty` 參數來使用 {ntfsfix(8) 來清理它。 [2]

## 參見

- NTFS3 內核文檔
- NTFS3 驅動 FAQ – Paragon Software Group
- NTFS3 性能比較

分類：​

- 文件系統

NTFS
新增話題