gpt4 book ai didi

unix - 以不同于 ssh key 所有者的用户身份使用 rsync+ssh+public key 同步本地和远程目录

转载 作者:行者123 更新时间:2023-12-04 08:11:45 27 4
gpt4 key购买 nike

目标是通过 ssh 同步本地和远程文件夹。

我当前的用户是 user1,我通过 ssh 对服务器 server1 进行了无密码访问设置。
我想通过 将本地文件夹与 server1 上的文件夹同步rsync 公用事业。
通常我会运行:

rsync -rtvz /path/to/local/folder server1:/path/to/remote/folder

ssh 访问按预期工作, rsync 可以通过 连接ssh ,但它返回“权限被拒绝”错误,因为在 server1 上的文件夹 /path/to/remote/folder归 user2:user2 所有。文件夹的文件权限不允许其他任何人更改。
user1 是 server1 上的 sudoer 所以 sudo su - user2工作期间 ssh session 。
如何造福 rsync 切换用户时 ssh 到服务器?

将 user1 添加到组 user2 不是一个选项,因为服务器上的所有用户/组管理都是自动完成的,并且每 X 分钟从一个中央存储库复制一次,我无法访问。

更改目标文件夹的权限/所有权也是如此:它会定期自动更新并重置所有权限。

我想到的可能解决方案是将本地文件夹与服务器上 user1 拥有的临时中间远程文件夹同步的脚本,然后将两个远程文件夹同步为 user2。

谷歌搜索更短、更漂亮的解决方案并没有取得任何成功。

最佳答案

我自己没有尝试过,但是如何使用 rsync 的“--rsync-path”选项?

rsync -rtvz --rsync-path='sudo -u user2 rsync' /path/to/local/folder server1:/path/to/remote/folder

关于unix - 以不同于 ssh key 所有者的用户身份使用 rsync+ssh+public key 同步本地和远程目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14351190/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com