给Samba添加回收站功能

之前在使用windows服务器做文件共享时,如果客户端在共享文件夹里删除文件,那么将无法在端找到已经删除的文件.如果在客户端有误删文件的情况,那么成功恢复文件的机率将非常小.

后来在网上查阅了一些资料, 原来samba共享是可以添加回收站功能的.删除的文件给直接放到设置好的回收站目录里.
只需要在已经设置好的共享文件字段里加上以下代码:
 

#recycle:repository = /samba/deleted/public/%U #指定该共享文件夹的回收站目录 %U是按登录的用户名分开存放
recycle:repository = /samba/deleted/public
recycle:keeptree = Yes #指定是否按删除时的目录结构存放
recycle:versions = Yes #指定是否区覆盖同名的文件,yes是不覆盖
recycle:maxsixe = 0 #指定回收站目录的大小,0是不限制
recycle:exclude = *.tmp|*.mp3 #不放入回收站的文件类型
recycle:noversions = *.doc #指定覆盖同名文件的文件类型

完整设置如下:

[公用文件夹]
comment = 公用文件夹
path = /samba/public#共享文件夹路径
read only = no#共享文件夹是否是只读

valid users = @kfb,root #用@指定可访问的用户组,不同组和用户之前用”,”分开

#指定用户建立文件或目录时的默认权限

create mask = 0660

    directory mode = 2770
force create mode = 0660
force directory mode = 2770

#禁止上传的文件
veto files = /*.mp3/*.mp4/*.rmvb/*.wma/*.exe/*.bat/*.dll/*.avi/*.rar

#回收站设置
vfs object = recycle
recycle:repository = /samba/deleted/public
recycle:keeptree = Yes
recycle:versions = Yes
recycle:maxsixe = 0
recycle:exclude = *.tmp|*.mp3
recycle:noversions = *.doc

 

注意事项:

1.回收站文件夹的用户和用户组设置, 权限设置要和共享文件夹的设置是一样的, 如果不一致被删除的文件是无法保存到回收站文件夹
2.如果maxsize设置为0, 那么回收站的文件需要管理员手工去删除. 当然, 可以将删除文件的任务交给计划任务去完成,如:

vim /etc/crontab

30 8 * * * root find /samba/deleted/ -mtime +30 -exec rm -rf {} \;

上面的设置就是每天8:30 删除回收站内大于30天的文件

3.每个共享文件夹要单独设置一个回收站文件, 避免同名文件覆盖,同时也方便管理和查找.

————————————分割线————————————

如何在

VMWare 机 Ubuntu 双网卡 访问 samba 速度 翻倍

Samba文件共享加入Windows Server 2003域

Samba安装配置

Samba服务器安装和配置 

Win7+VMware+

————————————分割线————————————

Samba 的详细介绍

更多内容请长按二维码关注(更有不定期发红包活动吆^0^):
致儒先生

转载自:https://www.linuxidc.com/Linux/2016-06/132423.htm

声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 智乐兔
转载请注明:转自《给Samba添加回收站功能
本文地址:https://www.zhiletu.com/archives-7288.html
关注公众号:智乐兔

赞赏

wechat pay微信赞赏alipay pay支付宝赞赏

上一篇
下一篇

相关文章

在线留言

你必须 登录后 才能留言!

在线客服
在线客服 X

售前: 点击这里给我发消息
售后: 点击这里给我发消息

智乐兔官微