「NTFS」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(序文を更新)
 
(同じ利用者による、間の3版が非表示)
21行目: 21行目:
 
=== パフォーマンスの向上 ===
 
=== パフォーマンスの向上 ===
   
パフォーマンスを向上のために、 いくつかの {{man|8|mount}} オプションを有効にすることができます
+
{{ic|prealloc}} {{man|8|mount}} オプションを有効にすると、並列書き込み操作の場合に断片化を減らすことができます (HDD の場合に最も役立ちます)
   
  +
=== Windows で許可されていない名前の作成を防止する ===
* {{ic|noatime}} – ファイルシステムの操作を高速化できます。
 
  +
* {{ic|prealloc}} – 並列書き込み操作の場合の断片化を減らします(HDD に最も役立ちます)
 
  +
NTFS 自体には使用する文字と名前に対する制限はありませんが、[https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#naming-conventions Windows には制限があります]
  +
  +
カーネルバージョン 6.2 以降、ntfs3 は {{ic|windows_names}} {{man|8|mount}} オプションをサポートします。互換性を厳密に維持するために使用します。
  +
  +
{{Note|[[udisks]] では、このオプションがデフォルトで有効になっています。}}
   
 
== 既知の課題 ==
 
== 既知の課題 ==
38行目: 43行目:
 
== トラブルシューティング ==
 
== トラブルシューティング ==
   
=== 未知のファイルシステムタイプ 'ntfs' です ===
+
=== unknown filesystem type 'ntfs' ===
   
 
NTFS を[[マウント]]する際に、以下のようなエラーが発生することがあります。
 
NTFS を[[マウント]]する際に、以下のようなエラーが発生することがあります。
   
mount: ''/mnt'': 未知のファイルシステムタイプ 'ntfs' です.
+
mount: ''/mnt'': unknown filesystem type 'ntfs'
   
[[#マウントに必要な明示的なファイルシステムタイプ]] を参照してください。
+
[[NTFS#マウントに必要な明示的なファイルシステムタイプ|マウントに必要な明示的なファイルシステムタイプ]] を参照してください。
   
 
{{ic|ntfs}} パーティションのデフォルトドライバとして、{{ic|ntfs3}} を使用したい場合、このような [[udev]] ルールが役立ちます。
 
{{ic|ntfs}} パーティションのデフォルトドライバとして、{{ic|ntfs3}} を使用したい場合、このような [[udev]] ルールが役立ちます。
60行目: 65行目:
 
ntfs_defaults=uid=$UID,gid=$GID,noatime,prealloc
 
ntfs_defaults=uid=$UID,gid=$GID,noatime,prealloc
   
  +
=== パーティションがダーティとマークされているため、ntfs3 でマウントできない ===
=== ntfs3: Unknown parameter 'windows_names' ===
 
  +
  +
正常な NTFS パーティション (つまり、NTFS-3G で正常にマウントされ、{{ic|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 は、強制オプションを使用しないと、ボリュームがダーティとしてマークされているパーティションをマウントしません。{{ic|dmesg}} は次のように言って、状況の認識を明示的に支援します:
  +
  +
''sdb1'': volume is dirty and "force" flag is not set!
   
  +
引数の {{ic|--clear-dirty}} を {{ic|ntfsfix}} に渡してクリーンアップしてみてください。[https://bbs.archlinux.org/viewtopic.php?id=271650]
[[#udisks のサポート]]を参照してください。
 
   
 
== 参照 ==
 
== 参照 ==

2024年1月6日 (土) 06:36時点における最新版

関連記事

Wikipedia より:

NTFS (New Technology File System) は、Microsoft が開発した独自のジャーナリングファイルシステムです。 Windows NT 3.1以降、これは WindowsNT ファミリのデフォルトのファイルシステムです。

ntfs3 カーネルドライバーはファイルシステムの読み取りと書き込みをサポートしています。

ノート:
  • バージョン 5.15 以降の公式サポートカーネルはすべて CONFIG_NTFS3_FS=m でビルドされているため、これをサポートしています。5.15 未満のカーネルでは、NTFS の読み取りと書き込みのサポートは NTFS-3G FUSE ファイルシステムによって提供されます。あるいは、ntfs3-dkms を使ってバックポートされた NTFS3 を使うこともできます。
  • カーネルモジュールの作成者である Paragon Software は、NTFS3 用のユーザースペースユーティリティをまだリリースしていません。NTFS-3G ドライバーが無くても、ntfsprogs-ntfs3AUR 経由で NTFS-3G ユーザースペースユーティリティを使用できます。

ヒントとテクニック

パフォーマンスの向上

prealloc mount(8) オプションを有効にすると、並列書き込み操作の場合に断片化を減らすことができます (HDD の場合に最も役立ちます)

Windows で許可されていない名前の作成を防止する

NTFS 自体には使用する文字と名前に対する制限はありませんが、Windows には制限があります

カーネルバージョン 6.2 以降、ntfs3 は windows_names mount(8) オプションをサポートします。互換性を厳密に維持するために使用します。

ノート: udisks では、このオプションがデフォルトで有効になっています。

既知の課題

マウントに必要な明示的なファイルシステムタイプ

ntfs3 をマウントするには、明示的なファイルシステムタイプが必要です。

ファイルシステムをマウントするには、ファイルシステムタイプを ntfs3 と指定します。例えば、mount(8)-t/--types オプションを使用します。

# mount -t ntfs3 /dev/sdxY /mnt

トラブルシューティング

unknown filesystem type 'ntfs'

NTFS をマウントする際に、以下のようなエラーが発生することがあります。

mount: /mnt: unknown filesystem type 'ntfs'

マウントに必要な明示的なファイルシステムタイプ を参照してください。

ntfs パーティションのデフォルトドライバとして、ntfs3 を使用したい場合、このような udev ルールが役立ちます。

/etc/udev/rules.d/ntfs3_by_default.rules
SUBSYSTEM=="block", ENV{ID_FS_TYPE}=="ntfs", ENV{ID_FS_TYPE}="ntfs3"

ただし、この方法は推奨されず、一部のサードパーティツールを混乱させるがあります。

udisks のサポート

udisks は NTFS3 をサポートしていますが、現時点ではいくつかの問題があります。udisks ntfs3 PR および issue 932 を参照してください。

回避策として、/etc/udisks2/mount_options.conf[defaults] セクションにこのようなオプションを追加してください。

ntfs_defaults=uid=$UID,gid=$GID,noatime,prealloc

パーティションがダーティとマークされているため、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-dirtyntfsfix に渡してクリーンアップしてみてください。[1]

参照

翻訳ステータス: このページは en:NTFS の翻訳バージョンです。最後の翻訳日は 2022-03-12 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。