回答:
Sambaのmangled names
オプションの問題は、どちらの設定も理想的ではないことです。マングルされていないが、不正な文字が含まれているためにアクセスできない名前、またはDOS 8.3形式にマングルされており、判読不能に近い名前を使用できます。
幸い、カスタム文字マッピングを提供するVFSモジュールcatia
が(現在)呼び出されています。特に、Windowsファイル名で違法と見なされる文字をマッピングすることが可能です。
では[global]
セクションこれらの行を配置します。
# Mapping illegal characters, where enabled with "vfs objects = catia"
mangled names = no
catia:mappings = 0x22:0xa8,0x2a:0xa4,0x2f:0xf8,0x3a:0xf7,0x3c:0xab,0x3e:0xbb,0x3f:0xbf,0x5c:0xff,0x7c:0xa6
各[share_name]
セクションに次の行を追加します(既にvfs objects
行がある場合はcatia
、リストに追加します)。
vfs objects = catia
私のDebianベースのシステムでは、このVFSオブジェクトモジュールは標準パッケージの一部としてインストールされました。
この設定によってマップされるファイル名の一例は2017-12-24 12:23.txt
です。を使用するmangled names = yes
と、このファイルはとして表示され2BB0Y9~4.TXT
ます。vfs objects = catia
代わりにを使用すると、このファイル名はと表示され2017-12-24 12÷23.txt
ます。それは完璧ではありませんが、それはかなり良いです。そして最も重要なのは、Windowsアプリケーションからアクセスできることです。
何らかの理由で、Sambaはコロンを含むファイル名を壊し始めました。これまでのところ、インターネットでのこの動作については何も見つかりませんでした。
解決策は非常に簡単です。Sambaにセクションを追加mangled names = no
して再起動[global]
する/etc/samba/smb.conf
と、問題が修正されました。
特殊文字の疑問符?\ <> * etcはWindowsファイル名では違法であり、私は常にそれらを使用しないようにしています。
それにもかかわらず、FreeNAS-11.3-U1およびSMB / SambaセットアップにアクセスするmacOS Catalina を使用してこれらの文字に問題はありません。なぜこの設定がデフォルトでないのかはわかりませんが、MacOSで問題なく動作させるには、次の手順に従う必要があります。
FreeNAS webUIで、共有> SMB>編集に移動します
fruit:encoding = native
次に、サービスに移動し、SMBを再起動します