ドラッグアンドドロップで異なるファイル名のファイルが開く

提供: Samba-JP
移動先:案内検索
KB番号 J0027
最終更新日 2001/06/30
作成者 たかはしもとのぶ
最終更新者

対象

この文書は、以下のプロダクトに付いて説明したものです。

  • Samba 2.0.7
  • Samba 2.0.7 日本語版

現象

同一ディレクトリ内に先頭から5文字目までが同一のファイル名が多数存在しているとドラッグアンドドロップ操作で意図しないファイルが操作の対象とされることがあります。

説明

Windowsと異なり、Sambaではファイル名の先頭5文字が同一のファイルに限り、短いファイル名(SFN)が同一であるファイルが同じディレクトリ中に存在することがあります。これについては smb.conf(5) の mangled names の項にある通り、現状のSambaの仕様になります。この場合、同じSFNを共有するファイルをドラッグアンドドロップした場合、SFNが同じ別のファイルがドラッグアンドドロップの対象として認識されることがあります。

例えばSambaの共有上の同一ディレクトリに以下のような

 d20010215.hnf
 d20010404.hnf

という二つのファイルが存在する場合、どちらも短いファイル名は D2001~76.HNF となります。この場合に起動していないアプリケーションのアイコンに対してドラッグアンドドロップを行なうと、どちらを選択した場合でも、d20010215.hnfに対してアクションが行なわれます。

なお、既に起動しているアプリケーションに対するドラッグアンドドロップではこの現象は発生しません。

Windows NTがサーバの場合、SFNの情報はファイルシステム上に記録されており、SFN生成時に重複チェックが行なわれているため、この事象は発生しません。

一方SambaではSFNの情報は動的に一定のロジックにより生成されるため、この事象が発生します。

なお、本件はSamba 2.0.8以前の全てのバージョンで同一の事象が発生すると考えられます。

対応策

これは現状のSambaの名前変換の仕様に起因する制限事項になります。関連する情報として、短いファイル名が同一になるも参照してください。

この技術情報は sugj-tech:3017 からの一連のスレッドの議論を元に作成されています。