gpt4 book ai didi

ssh - 通过 SSH 将远程文件同步到我的本地机器,在本地使用 sudo 权限和我的个人 SSH key

转载 作者:行者123 更新时间:2023-12-04 16:20:23 25 4
gpt4 key购买 nike

我想同步一个目录 /var/sites/example.net/从远程机器到本地机器上相同路径的目录。

远程机器仅使用 key 而不是密码来验证 SSH 连接。

在我的本地机器上,我在 ~/.ssh/config 中设置了一个别名,以便我可以轻松地运行 ssh myserver进去。

我正在尝试 rsync -a myserver:/var/sites/example.net/ /var/sites/example.net/但它失败了,因为我的本地用户没有编辑本地目录/var/sites/example.net/的权限。

如果我尝试 sudo rsync -a myserver:/var/sites/example.net/ /var/sites/example.net/ (仅添加 sudo),我可以修复本地权限问题,但随后我遇到了另一个问题——我的本地 root 用户没有看到正确的 ssh key 或 ssh 别名。

有没有办法通过修改这个 rsync 命令来完成这个文件同步?我想避免更改任何其他内容(例如,不更改文件权限或 ssh 设置)

最佳答案

尝试这个:

sudo rsync -e "sudo -u localuser ssh" -a myserver:/var/sites/example.net/ /var/sites/example.net/

这运行 rsync作为 root,但是 -e标志原因 rsync运行 ssh作为您的本地用户(使用 sudo -u localuser ),所以 ssh命令可以访问必要的凭据。 Rsync 本身仍以 root 身份运行,因此它具有必要的文件系统权限。

关于ssh - 通过 SSH 将远程文件同步到我的本地机器,在本地使用 sudo 权限和我的个人 SSH key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21639906/

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