このブログを検索

2012-08-06

sambaにゴミ箱機能をつける

sambaにゴミ箱機能をつけます。

sambaでゴミ箱を有効にする
$ sudo vim /etc/samba/smb.conf

[global]セクションに以下を追記
# recycle
vfs objects = recycle
recycle:repository = .recycle
recycle:keeptree = yes
recycle:touch = yes
recycle:versions = yes
recycle:maxsize = 0
recycle:exclude = *.tmp *.temp *.o *.obj ~$* *.~??
recycle:exclude_dir = /tmp|/cache
#recycle:noversions = *.doc *.xls *.ppt

repositoryはゴミ箱名
versionsは同名ファイルを別名保存するか
excludeはゴミ箱除外ファイル名
exclude_dirはゴミ箱除外ディレクトリ名
noversionsは別名保存除外ファイル名
共有ディレクトリ別に設定も可能

$ testparm $ sudo /etc/init.d/smbd restart

これで共有ディレクトリ上でファイルを削除すると
共有ディレクトリ直下に.recycleディレクトリが作成され、そこに削除ファイルが移動します。


次にゴミ箱を定期的にクリアします。

$ sudo aptitude install tmpreaper

$ sudo vi /etc/tmpreaper.conf

デフォルトだとcronスクリプトが警告を出して止まるためSHOWWARNINGをコメントアウトする
TMPREAPER_TIMEをコメント解除し、ゴミの生存期間を指定する。
TMPREAPER_DIRSにゴミ箱を追加する
例:TMPREAPER_DIRS='/tmp/. /home/user/.recycle/.'

設定してみた結果は後日報告
cronでlocateが実行される際にアクセス時間が変更されて何時まで経っても削除されないという話題があったがとりあえずは対処しないで確認してみようと思う。

参考:
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/734recycle3.html
http://landisk.kororo.jp/diary/19_tmpreaper.php


0 件のコメント:

コメントを投稿