CIFS(Samba) + ACL = 不起作用

CIFS(Samba) + ACL = 不起作用

我有两台装有 Debian 5.0 的服务器。

服务器1:samba 2:3.2.5-4lenny9 smbfs 2:3.2.5-4lenny9

smb.conf:

[test]
   comment = test
   path = /var/www/_test/
   browseable = no
   only guest = yes
   writable = yes
   printable = no
   create mask = 0644
   directory mask = 0755

server1:~# mount | grep sda3
/dev/sda3 on /var/www type ext3 (rw,acl,user_xattr)

# getfacl /var/www/_test/
# file: var/www/_test/
# owner: www-data
# group: www-data
user::rwx
group::rwx
other::r-x
default:user::rwx
default:user:www-data:rw-
default:user:testuser:rw-
default:group::rwx
default:mask::rwx
default:other::r-x

服务器2:

samba 通用 2:3.2.5-4lenny9 smbfs 2:3.2.5-4lenny9

server2:~# mount.cifs  //server1/test /media/smb/test -o rw,user_xattr,acl
server2:~# mount | grep test
//server1/test on /media/smb/test type cifs (rw,mand)
server2:~# getfacl /media/smb/test/
# file: media/smb/test/
# owner: www-data
# group: www-data
user::rwx
group::rwx
other::r-x
default:user::rwx
default:user:www-data:rw-
default:user:testuser:rw-
default:group::rwx
default:mask::rwx
default:other::r-x

但问题在于:

server2:~# su - testuser
(reverse-i-search)`touch': touch 123
testuser@server2:~$ touch /media/smb/
testuser@server2:~$ touch /media/smb/test/123
touch: cannot touch `/media/smb/test/123': Permission denied

怎么了?!

答案1

您还需要对该文件夹具有执行权限。Touch 会执行以下两项操作之一:

  1. 如果指定的文件存在,则更新时间戳
  2. 如果指定的文件不存在,则创建一个新文件

要知道 /media/smb/test/123 是否存在,touch 需要列出 smb 文件夹的目录内容,这需要执行权限。

相关内容