终于实现Linux可写不可删除

终于实现Linux可写不可删除

通过szxsztszk的提示
今天终于实现了linux可写不可删除的要求。
同时运用了POSIX ACL

我们公司的要求是这样的(我只做出我公司要求的步骤,不同的要求,稍加改正即可)
共享目录 To_manager   只有manager这个用户对此目录拥有完全权限。
其它用户对此目录只有:可向其内复制并新建文件的权限。但是不能删除文件不能copy出文件,不能读文件。

步骤:
1。更改smb.conf 如下



[To_manager]
  comment=To_manager   
  path=/To_manager
  writable=yes
  create mask =1600
  directory mask= 1600


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。写个小脚本



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


最后运行脚本,重启smb即可.