
Windowsシステム上のNTFSの場合、「ABC」ディレクトリを作成してから「abc」ディレクトリを作成しようとすると、Windowsは両方のディレクトリが同じ名前を持っていると思うので拒否されます。
Linuxでは、標準のntfs-3gファイルシステムではこれは発生しません(NTFSはデフォルトで両方を許可しますが、Windowsは許可しません)。
私はこれで-t lowntfs-3g -o ignore_case
エラーが発生したことを発見しましたが、すべてを小文字に強制してそのようにしました。 mkdir ABC
明らかになるabc
。
Windowsのアプローチに従うLinuxでNTFSを使用する方法はありますか?表示目的で大文字と小文字を保持しますが、作業中に大文字と小文字を区別しませんか?
答え1
Windowsのアプローチに従うLinuxでNTFSを使用する方法はありますか?表示目的で大文字と小文字を保持しますが、作業中に大文字と小文字を区別しませんか?
表示目的システムに不明な場合は、ファイルシステムからディレクトリエントリを読み込みます。だから事件を守りながらも無視することは不可能です。同時に。
openat()/fstat()
これは、ファイルシステムの実装がls
情報を読み取るか(たとえば経由で)読み取るのかわからないためですcat
。
-t lowntfs-3g -o ignore_case
たとえ展示する小文字の場合、元の大文字と小文字が保持されます。 2つのインストールセッションでこれを確認できます。
ファイルシステムの作成:
# dd if=/dev/zero of=/tmp/ntfs bs=1M count=100
# mkfs.ntfs -F /tmp/ntfs
これでignore_case(および小文字)を使用すると、次のようになりますAbC
。
# mount.lowntfs-3g -o ignore_case /tmp/ntfs /mnt
# mkdir /mnt/AbC
# ls /mnt
abc
# umount /mnt
次に、大文字と小文字を変換せずに同じファイルシステムを削除して再インストールします。
# mount.ntfs /tmp/ntfs /mnt
# ls /mnt
AbC
# umount /mnt
しかし、達成したいことは可能です。私はビューのntfs-3g
現在の実装ではありません。これを行うには、カスタムまたはファイルエクスプローラを使用できますls
(最終的にWindowsで実行されます)。たとえば、プリロードreaddir()
も機能できるようです。