所以我在服务器 A 上有一个 Samba 共享。我将该共享安装到另外两个服务器 B 和 C。这个想法是 B 和 C 需要将临时文件写入一个位置,以便多个后台处理作业(也在 B 和 C 上运行)可以访问相同的文件池。
当后台进程完成后,他们会删除他们正在处理的文件。当我在删除文件后对共享进行目录列表时,原始文件名现在类似于cifs79
等cifs78
。它们占用的空间与原始文件相同,因此我假设它们是原始文件,只是重命名了.
问题是这些文件不会消失,除非我重新启动 samba(我不打算这样做)。我是否缺少一个会立即删除文件的简单配置参数?
我用这个命令创建了我的共享:
mount -t cifs //10.251.251.251/uploads ./uploads -o username=samba_user,noexec
文件以原样进入共享,-rw-------
并在更改名称后保持原样。
这是完整smb.conf
文件: http: //gist.github.com/172474和运行结果:http smbstatus
: //gist.github.com/172478
更多信息:
如果我从安装了共享的框中手动创建一个文件,我可以创建、编辑、删除没有问题。如果我启动 IRB(交互式 ruby)会话,我可以使用 Ruby 创建/删除文件没有问题。似乎是应用程序本身创建了具有奇怪权限的文件。虽然应用程序和我的 IRB 会话作为同一个用户运行,但他们应该有相同的权限来做任何事情。
谢谢你的帮助!