smbfs共享上的rsync权限错误

我有一个nas设置了一个试图rsync文件。 它适用于我自己的文件

$ id dogmatic69 uid=1000(dogmatic69) gid=1000(dogmatic69) groups=1000(dogmatic69),4(adm),20(dialout),24(cdrom),33(www-data),46(plugdev),110(lpadmin),111(sambashare),112(admin) 

问题文件属于www-data用户

 $ id www-data uid=33(www-data) gid=33(www-data) groups=33(www-data) 

运行时会出现大量错误,如:

 rsync: failed to set permissions on "/some/file": Operation not permitted (1) 

我曾尝试为两个用户设置共享,但仍然遇到问题

 sudo smbmount //server/development development -o credentials=/home/dogmatic69/.smbpassword,uid=33,gid=33 

 sudo smbmount //server/development development -o credentials=/home/dogmatic69/.smbpassword,uid=1000,gid=1000 

所有的源文件都由www-data拥有,并具有g + rw,所以用户dogmatic69可以查看/编辑它们。

 $ ls -al total 956 drwxrwxr-x 11 www-data www-data 4096 2012-06-21 14:09 . drwxr-xr-x 13 root root 4096 2012-06-26 11:44 .. drwxrwxr-x 17 www-data www-data 4096 2012-06-21 14:10 folder1 drwxrwxr-x 7 www-data www-data 4096 2010-10-11 02:24 folder2 -rw-rw-r-- 1 www-data www-data 510649 2011-05-26 20:48 file.html -rw-rw-r-- 1 www-data www-data 78792 2011-05-26 20:15 other.html 

任何想法如何设置这个,所以没有错误,并可能保持所有者的细节正确。

编辑:

托pipe这些文件的服务器是一个基于Linux的NAS,它是一个简单的盒子,没有SSH和NFS或SMBFS的select。 我玩NFS,但发现它非常垃圾,有几个人说,它相当过时。

从rsync命令行中删除任何选项以设置所有权。 Rsync尝试设置权限,显然SMB服务器不支持该function。

如果//server/development是一个Windows框,然后尝试设置所有权的权限几乎永远不会工作。 如果是Samba主机,则需要确保在服务器上启用了CIFS UNIX扩展,并且如果希望能够通过SMB使用unix样式的权限,则需要使用mount.cifs而不是smbmount

这其实很简单..我做了一些更多的rsync选项挖掘和rsync -a结合了几个选项。 其中之一是-O来维持所有权。 请注意,这个选项要求rsync与root一起运行。

简单地将sudo添加到命令的开头,这就解决了这个问题。