为 samba 共享禁用 .recycle 功能

Cra*_*893 6 samba disk-space-utilization

当我公司的文件服务器被填满时,我非常害怕。

在找到源代码后,我发现有一个 .recycle 文件夹可以保存所有已删除的文件(也是隐藏的)

无论如何要禁用此功能?

或定期运行将删除所有垃圾的命令?

编辑

我的 smb.conf 示例

 [homes]
            comment = Home
            path = /home/%S/smbhome
            browseable = no
            writable = yes
            read only = no

 -->*          veto files = /.recycle/
 -->           vfs objects = recycle
 -->                   recycle:keeptree=True
 -->                   recycle:versions=True
 -->                   recycle:touch=True
            hide dot files = yes

            force directory mode = 0770
            force create mode = 0660
            force group = grp-it

            valid users = @grp-it, %S
            invalid users =
Run Code Online (Sandbox Code Playgroud)

我应该注释掉这些行吗?

VETO 文件呢?(标*)

Phi*_*oss 6

您已经配置了 Samba Recycle插件。当通过 Samba 共享删除文件时,这会将文件复制到 .recycle 目录。

该插件是使用中的vfs objects共享配置选项启用的smb.conf。要禁用它,请找到vfs objects配置选项并recycle从值中删除(如果仅引用 ,则完全删除该选项recycle)。您还需要删除任何以 为前缀的选项recycle:

我们使用如下的日常 cron 作业来删除 .recycle 中超过 10 天的文件并清理空目录:

#!/bin/sh

for d in /home/*/.recycle 
do
  if [ -d "$d" ]
  then
    tmpreaper --mtime-dir --symlinks 10d "$d"
    find "$d" -depth -mindepth 1 -type d -print0 | xargs --null --no-run-if-empty rmdir --ignore-fail-on-non-empty
  fi
done
Run Code Online (Sandbox Code Playgroud)

此脚本使用tmpreaper包。

veto files选项阻止用户.recycle通过文件共享查看或访问目录。

如果要禁用 Recycle 插件,请删除或注释掉除该行之外突出显示的所有veto files行。允许用户查看和访问名为 的目录.recycle,然后删除或注释掉该veto files行。