Samba - 如何真正禁用混乱的名称

Samba - 如何真正禁用混乱的名称

我正在尝试使用 Samba 创建一个媒体服务器,但我不需要或不想要混乱的名称,因此我在 中禁用了该功能smb.conf。(我不希望任何 Windows 客户端连接。)但是,当我这样做时,那些混乱的文件就会消失。这是目录应包含的内容:

Chorale Prelude "Ein feste Burg ist unser Gott", BWV 720.flac
Chorale Prelude "Nun freut euch, lieben Cristen", BWV 734a.flac
Chorale Prelude "Wachet auf, ruft uns die Stimme", BWV 645.flac
Fantasia and Fugue in G minor, BWV 542 "The Great": II. Fugue.flac
folder.jpg
Fugue in G major, BWV 571 "The Jig".flac
Fugue in G minor, BWV 578 "The Little".flac
Passacaglia and Fugue in C minor, BWV 582: II. Fugue.flac
Passacaglia and Fugue in C minor, BWV 582: I. Passacaglia.flac
Toccata, Adagio, and Fugue in C major, BWV 564: II. Adagio.flac
Toccata, Adagio, and Fugue in C major, BWV 564: III. Fugue.flac
Toccata, Adagio, and Fugue in C major, BWV 564: I. Toccata.flac
Toccata and Fugue in D minor, BWV 565: I. Fugue.flac
Toccata and Fugue in D minor, BWV 565: I. Toccata.flac
Toccata in F major, BWV 540.flac

禁用混乱的名称后,Ubuntu 客户端上可以看到以下内容:

folder.jpg
Toccata in F major, BWV 540.flac

这是我的smb.conf

[global]

security = user
map to guest = bad user
guest account = nobody

mangled names = no

[T&S Media Server]

path = /media/shadow-mini
only guest = yes
guest ok = yes

我尝试添加行unix charset = UTF-8、、,dos charset = CP850hide special file = no无济于事。

换句话说,禁用损坏的名称只会让这些文件从客户端中消失。

我怎样才能在 Samba 上仍然看到所有带有原始名称的文件?

答案1

Samba 文档mangled names在您提到的配置选项上:

此共享级别选项指定 Samba 是否会为 8.3 客户端修改文件名。如果将选项设置为 no,Samba 将不会修改文件名,并且(根据客户端的不同)对于使用 8.3 操作系统的用户来说,这些文件名将不可见或被截断。默认值为 yes。您可以按如下方式覆盖每个共享:

[data]
    mangled names = no

由此我们可以推断,您的客户端选择不显示与混淆规则相匹配的文件名的文件。

我建议检查您的客户端可以处理哪些字符,然后使用适当的配置标志相应地更新服务器上的 samba 配置。

答案2

这个答案在 unix.stackexchange 上。摘要:使用catiasamba vfs 对象将非法字符转换为文件名中罕见的类似 unicode 字符。

相关内容