大文字と小文字を区別する名前が有効になっている場合、SambaはWindowsで正常に動作しますか?


12

Windowsクライアントからアクセスできる* nix Samba共有が必要です。

Sambaには、ファイル名の大文字と小文字の区別を有効または無効にするオプションがあります。通常、Windowsアクセスの場合、これは無効になっているため、fred == FRED = fReDです。

しかし、これは1つの大きな落とし穴、AFAICTにつながります。

  • UNIXでは、「RODDY」と「roddy」という2つのフォルダーを作成します
  • Windowsでは、両方のフォルダーが表示されますが、...
  • Windowsから削除/名前変更/開くと、いずれかを削除/名前変更/などすることになります。 あなたはどれを知る方法がありません!

だから、私の質問は、大文字と小文字を区別するフラグが「ON」に設定されている場合、SambaはWindowsでどのように動作するのですか?ユーザーはまだ両方のフォルダーを見ることができ、ファイル操作は一貫した方法で機能しますか?

回答:


12

それは問題ないはずです。Windowsエクスプローラーは、ファイル名の大文字小文字を正しく表示するという素晴らしい仕事をします。私はsmb.confでこれを使用して、Explorerで入力する内容がSambaで使用するものであることを確認します(これらのすべてを共有ごとに設定します)。

case sensitive = True
default case = lower
preserve case = yes
short preserve case = yes

クイックテスト(バックエンドではSamba 3.0.24、フロントではWinXP)を実行しました。ファイルは、SSHセッションを介してsambaサーバー上に作成されました。

$ cd /some/samba/share/path
$ mkdir test
$ cd test

$ mkdir test1 TEST1
$ touch test1/foo TEST1/bar

この後、マップされたドライブをテストディレクトリに移動しました。「test1」と「TEST1」の両方のディレクトリが表示されます。「test1」を開き、「foo」ファイルを見ました。「TEST1」を開き、「bar」ファイルを見ました。ここまでは順調ですね。

次に、テストディレクトリに戻り、エクスプローラウィンドウでTEST1をTEST2に名前変更しました。Windowsは少しおかしくなりました-フォルダーの名前を変更し、両方のフォルダーをTEST2として表示しました-両方のフォルダーの名前を変更したようです。しかし、SSHターミナルで確認しました:

$ ls
test1 TEST2

そのため、Windowsはファイルの名前を変更し、Sambaはファイル名を正しく取得しました。エクスプローラーウィンドウでF5キーを押してフォルダーの内容を更新すると、表示が変わり、正しいフォルダー名が表示されました。

警告: Linuxファイルシステムでは、Windowsで許可されていない文字(「:」など)が許可されています。 Sambaには、これらのファイル名をWindowsが好むものに変える「名前マングリング」オプションがあります。たとえば、SSHウィンドウで「FA:23」というファイルを作成すると、Sambaは名前を「F7T4H0〜F」に変換し、それがエクスプローラーウィンドウに表示されます。


Windows 95クライアントでcase sensitiveは、オプションが有効になっている場合、共有内のディレクトリにアクセスできないことに注意してください。autoこの場合、オプションを使用する必要があります。
デビウス14年

UNIXファイルシステムにTest1とtest1の2つのフォルダーがあると仮定します。ユーザーがWindowsに表示するのはどちらですか?Sambaで、フォルダーTest1が存在し、unix上の誰かがフォルダーtest1を作成しようとすると、代わりに自動的にTest1にマージされ、Windowsユーザーが常にすべてのファイルを表示できることを確認できますか?私の経験では、Test1とtest1が存在する場合、Windowsユーザーは両方のフォルダーを見ることができませんが、どちらか一方だけが見えます。
エリック

@Erik通常、両方が表示されます。Windowsは、すべてのレベルで大文字と小文字を区別し、ファイルシステムに深く実装しています。でも試しませんでした。
ティベリウイオヌスタン

1

私のために働いたオプションは以下の通りです:

preserve case           = yes
short preserve case     = yes
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.