2006-10-25 22:16
lovegqin
终于实现samba可写不可删除
通过szxsztszk的提示
今天终于实现了linux可写不可删除的要求。
同时运用了POSIX ACL
我们公司的要求是这样的[color=Red](我只做出我公司要求的步骤,不同的要求,稍加改正即可)[/color]
[b]共享目录 To_manager 只有manager这个用户对此目录拥有完全权限。
其它用户对此目录只有:可向其内复制并新建文件的权限。但是不能删除文件不能copy出文件,不能读文件。[/b]
步骤:
1。更改smb.conf 如下
[code][To_manager]
comment=To_manager
path=/To_manager
writable=yes
create mask =1600
directory mask= 1600[/code]
2。让Linux支持POSIX ACL (这个 POSIX ACL 的功能在 Linux kernel 2.6 上被正式支持,之后又被 back-port
到 2.4 kernel 上。大家常用的档案系统,如:ext3,xfs,jfs,和 ReiserFS,都能使用
ACL。当然,大家须要在编译 kernel 时启动 ACL。)
我们亦可以在 /etc/fstab 中加入选项:
/dev/sda1 /home ext3 acl 1 2
如果对POSIX ACL 不熟悉请看http://bbs.chinaunix.net/viewthread.php?tid=760730&highlight=lovegqin
3。写个小脚本
[code]#!/bin/bash
mkdir /To_manager
chmod 777 /To_manager
chown manager:manager/To_manager
chmod o+t /To_manager
setfacl -m d:u:manager:rwx /To_manager [/code]
最后运行脚本,重启smb即可.
[[i] 本帖最后由 lovegqin 于 2006-10-28 17:39 编辑 [/i]]
2006-10-26 08:51
bian1124
学习一下,试试
2006-10-26 09:07
比尔盖子
不错不错
路过,不错,收了。。。
2006-10-26 11:10
i770880
我在windows下开启了NTFS的拒绝删除选项,结果是:
新建文件夹
新建文件夹(2)
新建文件夹(3)
如此下去如何得了?????
就是在刚生成新建文件夹还处于更名状态下也不能改名字,恐怖呀。
怎么能够重命名文件名呢?
2006-10-26 11:19
lovegqin
按照我的方法,是可以实现可写不可删除的
而且是可以实现多用户可写可删,多用户可写不可删除,而且也可以实现谁新建的文件,谁就有对它的完全权限
目的就是为了防止如楼上所说的弊端
至于WIN我不就清楚了
2006-10-26 11:34
i770880
POSIX ACL就是依据NTFS的ACL改进的。由于对NTFS的ACL的这个缺陷太失望了,就没摆弄过POSIX ACL;
不知道POSIX ACL是不是已经避免了这个缺陷,能够允许特定的人改文件名却不能删除文件?如果真的改进了,的确值得。
2006-10-26 11:44
lovegqin
谁新建的文件,谁就有完全权限,这样不是很合理吗?
而且在a这个用户新建了一个文件的同时,还可以让另一个用户也对这个文件拥有完全权限。我认为这也是很合理的
但是如果a这个用户新建了一个文件,但是不能对它拥有完全权限,我觉得就是不合理的了
像楼上所说的,[b]能够允许特定的人改文件名却不能删除文件[/b]我觉得这个要求很是过分。
2006-10-26 12:39
i770880
试一下win下的NTFS ACL你就知道,可写不可删除的准确定义:
用户自己建立的文件用户没有完全权限,他自身不能删除他建立的文件的。
如果自己建立的文件自己可以删除,其实ext下的粘附设置就能够做到。设置此位后,文件只能被三个人删除:文件主,文件所属目录的属主,root
正因为这样的特点,我才弃用NTFS而用ext3作为文件服务器的。遇到重要的文件,ssh上去修改一下文件属主,就限制了原来建立文件的用户的删除权限了。
2006-10-26 15:37
szxsztszk
如果把参数改成下面的就更好了.
[To_manager]
comment=To_manager
path=/To_manager
writable=yes
create mask =1600
directory mask= 1700
可以试试,看看和以前的有什么不同.
[[i] 本帖最后由 szxsztszk 于 2006-10-26 16:24 编辑 [/i]]
2006-10-26 15:42
lovegqin
楼上的兄弟你好
不知怎样实现
对目录内的文件只读但是不能copy呢?
2006-10-26 16:09
szxsztszk
[quote]原帖由 [i]lovegqin[/i] 于 2006-10-26 15:42 发表
楼上的兄弟你好
不知怎样实现
对目录内的文件只读但是不能copy呢? [/quote]
恐怕不能实现这个功能.因为能读也就能拷贝了.
2006-10-26 17:20
szxsztszk
有些保密文件可以结合公司的行政管理来管.单纯靠技术比较吃力.
2006-10-26 17:27
lovegqin
我也是这么想的,不过领导要求技术上实现
所以只能试试了
2006-10-28 09:31
gydoesit
楼主,你这不叫linux可写不可删吧,叫samba似乎合适些。与windows的完全不是一回事吧,在windows下,即使你是owner,但没有删除权限你也删不了。而linux只要你是owner又可写,那就能删除。
哎,现在都不重要了。重要的是samba的文件修改时间windows差1秒如何解决呀。大家帮我看看。
[url]http://bbs.chinaunix.net/viewthread.php?tid=843751&highlight=gydoesit[/url]
2006-10-28 12:42
juanshuchun
learing
2006-10-28 18:29
newbuding
不错,学习...
2006-10-29 00:13
lovegqin
[quote]原帖由 [i]gydoesit[/i] 于 2006-10-28 09:31 发表
楼主,你这不叫linux可写不可删吧,叫samba似乎合适些。与windows的完全不是一回事吧,在windows下,即使你是owner,但没有删除权限你也删不了。而linux只要你是owner又可写,那就能删除。
哎,现在都不重要了 ... [/quote]
满意了?
2006-10-29 15:22
windychan
收藏
2006-10-30 01:02
MicroHard
有意思,顶
2006-10-31 13:53
zhengwei_zw
非常有用!适合网吧
页:
[1]
2
3
4
5