当启用区分大小写的名称时,Samba是否能与Windows一起使用?

前端之家收集整理的这篇文章主要介绍了当启用区分大小写的名称时,Samba是否能与Windows一起使用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我希望 Windows客户端可以访问* nix Samba共享.

Samba可以选择启用或禁用文件名区分大小写.通常对于Windows访问,这是禁用的,因此fred == FRED = fReD.

然而,这导致了一个主要问题,AFAICT:

>在unix上,您创建两个文件
被称为“RODDY”和“roddy”
>在Windows上,你会看到两个
文件夹,但……
>从Windows中删除/重命名/打开一个时,
你可能会结束
删除/重命名/等等.
你无从知道哪个!

所以,我的问题是,如果区分大小写的标志设置为“ON”,Samba如何在Windows上运行?用户是否仍然可以看到这两个文件夹,并且文件操作是否以一致的方式工作?

解决方法

应该没问题. Windows资源管理器可以正确显示文件名大小写.我在我的smb.conf中使用它来确保我在资源管理器中键入的内容是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”文件.到现在为止还挺好.

然后我回到测试目录,在Explorer窗口中,将TEST1重命名为TEST2. Windows略有吓坏 – 它重命名了该文件夹,然后将两个文件显示为TEST2 – 似乎已重命名这两个文件夹.但是,在SSH终端中,我检查了:

$ls
test1 TEST2

因此,Windows重命名了该文件,Samba正确获取文件名.当我在资源管理器窗口中按F5刷新文件内容时,显示更改为显示正确的文件名称.

警告:Linux文件系统允许Windows没有的一些字符(如“:”). Samba has a “name mangling” option将这些文件名转换为Windows会喜欢的内容.例如,如果我在SSH窗口中创建一个名为“FA:23”的文件,Samba将名称变为“F7T4H0~F”,这就是Explorer窗口中显示内容.

原文链接:https://www.f2er.com/linux/400882.html

猜你在找的Linux相关文章