rsync 正在更改我的目录权限

Chr*_* G. 5 rsync

我有一个 rsync 设置,可以将文件从我的本地开发机器传输到我的生产 Web 服务器。在生产服务器上,storage目录需要为 775。

rsync 完成后,它会更改为 755

pro*_*ris 12

我添加了这个答案,因为接受的答案没有为我做所需的事情(使用 -p 不会阻止 rsync 更改目标路径上的权限)!

Indeed, the appropriate option here (for NOT changing perms of existing stuff) is --no-perms

rsync --no-perms src/ /dest
Run Code Online (Sandbox Code Playgroud)

此后从rsync男人那里摘录:

总而言之:要为目标文件(旧文件和新文件)提供源权限,请使用 --perms。要为新文件提供目标默认权限(同时保持现有文件不变),请确保关闭 --perms 选项并使用 --chmod=ugo=rwX (确保启用所有非屏蔽位)。


Chr*_*own 5

man rsync

-p, --perms                 preserve permissions
Run Code Online (Sandbox Code Playgroud)

假设您想要保留所有元数据而不仅仅是权限,您可能需要使用-awith -HAX,这意味着-p

-a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)
Run Code Online (Sandbox Code Playgroud)