rsync 许可?

rsync 许可?

我已经运行了命令

sudo rsync --chmod=a+rwx testfile testfile2

这将创建一个文件testfile2,但其权限为755 (-rwxr-xr-x)

有人可以解释一下如何获得权限吗777 (-rwxrwxrwx)

答案1

使用

sudo rsync --perms --chmod=777 testfile testfile2

或者

sudo rsync --perms --chmod=a+rwx testfile testfile2

答案2

使用 --chmod=777 与 rsync 可能会失败:

sudo rsync --perms --chmod=777 ./testfile ./testfile2
rsync: Invalid argument passed to --chmod (777) 
rsync error: syntax or usage error (code 1) at main.c(1453) [client=3.0.9]

然而,这些都是成功的:

sudo rsync --perms --chmod=u+rwx ./testfile ./testfile2
sudo rsync --perms --chmod=g+rwx ./testfile ./testfile2
sudo rsync --perms --chmod=o+rwx ./testfile ./testfile2

例如分别为用户(u)、组(g)或其他(o)添加(+)权限。

此外 (a)=all 也成功:

sudo rsync --perms --chmod=a+rwx ./testfile ./testfile2

或者:

sudo rsync --perms --chmod=ugo+rwx ./testfile ./testfile2

可以用 -p 代替 --perms ,结果相同。

撤销(-)权限的工作方式相同,甚至可以使用逗号分隔的添加和撤销组合:

sudo rsync --perms --chmod=u-rwx,o+rwx ./testfile ./testfile2

答案3

如果我说“我在文档中找到了它”,那我就撒谎了,那么问题来了,但它仍然有效!

--perms  --chmod=D770,F660 

让你“可执行”目录(别名:目录可浏览)而所有文件是不可执行的。(= 正是医生所要求的。同样的事情可以实现使用大写 X 来使用常规 chmod 命令-x+rwX,但不使用 rsync...),所以了解这一点很好。

相关内容