![使用 scp 保留权限](https://linux22.com/image/579085/%E4%BD%BF%E7%94%A8%20scp%20%E4%BF%9D%E7%95%99%E6%9D%83%E9%99%90.png)
即使使用 -p 选项,SCP 似乎也不会保留所有权戳。
scp -p /mysql/serv/data_summary.* some_server:/mysql/test/
这些文件归 mysql 所有,我希望在目标服务器上分配相同的所有权。由于一些管理问题,我需要在两台服务器上以 root 身份复制文件。我无法更改为 mysql@
答案1
尝试使用 rsync,除了保留所有权、权限和增量副本之外,它还有很多好处:
rsync -av source 192.0.2.1:/dest/ination
除此之外,由于 rsync 使用 ssh,它应该在 scp 工作的地方工作。
答案2
没错。“-p” 不会这样做。请参阅手册页:
-p 保留修改时间、访问时间和模式 原始文件。
请注意,它说的是时间和模式,而不是用户/组所有权。使用“rsync”会更好,因为它具有在不同的系统之间进行复制时保留权限的各种功能。例如,rsync 中的“-p”。