我已经运行了命令
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