rsync 是否可以不在目标上创建目录?
想象一下我有那个来源:
a/
a/x.txt
b/
b/y.txt
Run Code Online (Sandbox Code Playgroud)
而且我有这个目的地:
a/
a/z.txt
Run Code Online (Sandbox Code Playgroud)
想要的结果rsync source destination:
a/
a/x.txt
a/z.txt
Run Code Online (Sandbox Code Playgroud)
当然,我的真实情况涉及数千个文件/文件夹结构,我不想要涉及显式同步文件夹列表的解决方案,我可以这样做。我正在寻找一种干净的方法来防止在目标上创建任何文件夹。通过排除或过滤......这甚至可能是 rsync 之外的东西,比如如果 rsync 不能做到这一点,则具有权限的黑客攻击......
有关信息,这真的很容易出现这种情况,就我而言,我有:
A& B。和一个本地驱动器C。rsync用来同步(和合并)远程A&B到本地C。C文件同步回A和B。(只是新文件......不是目标上不存在的文件夹)小智 0
也许进行正常的 rsync,然后在第二步中删除所有新创建的文件夹......听起来很危险。
为了提高此操作的安全性,您可以使用目标系统上的另一用户:
rsync $src $specialuser@server:$destination
Run Code Online (Sandbox Code Playgroud)
删除该用户远程创建的文件夹:
ssh $normalUser@destination "find $destination -type d -user $specialuser -exec rm -r {} \;"
Run Code Online (Sandbox Code Playgroud)
然后将权限设置回正常:
ssh $normalUser@destination "chown -R $defaultUser:$defaultGroup $destination"
Run Code Online (Sandbox Code Playgroud)
该死,这看起来很脏......这需要一些重大改进:D
| 归档时间: |
|
| 查看次数: |
9754 次 |
| 最近记录: |