web-dev-qa-db-ja.com

samba共有の.recycle機能を無効にする

会社のファイルサーバーがいっぱいになったとき、私はかなり大きな恐怖を感じました。

ソースをタックダウンした後、削除されたすべてのファイルを保持する.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 =

これらの行をコメントアウトする必要があります。

拒否権ファイルはどうですか? (マークされた *)

5
Crash893

Samba Recycle プラグインが構成されています。これにより、Samba共有を介してファイルが削除されると、ファイルが.recycleディレクトリにコピーされます。

プラグインは、vfs objectsの-​​ smb.conf 共有構成オプションを使用して有効になります。無効にするには、vfs objects構成オプションを見つけて、値からrecycleを削除します(または、recycleのみを参照している場合はオプションを完全に削除します)。また、接頭辞recycle:が付いているオプションをすべて削除することもできます。

次のような毎日のcronジョブを使用して、10日より古い.recycle内のファイルを削除し、空のディレクトリをクリーンアップします。

#!/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

このスクリプトは tmpreaper パッケージを使用します。

veto files オプションは、ユーザーがファイル共有を介して.recycleディレクトリを表示またはアクセスできないようにします。

Recycleプラグインを無効にする場合は、veto files行を除いて強調表示したすべての行を削除またはコメントアウトします。ユーザーが.recycleという名前のディレクトリを表示およびアクセスできるようにするには、veto files行も削除またはコメントアウトします。

5
Phil Ross