Borg 远程备份报错

Vas*_*iki 3 linux synology

尝试使用 borg 将机器 1 备份到远程机器 2(这是 Synology),出现错误

Remote: sh: borg: command not found
Connection closed by remote host. Is borg working on the server?
Run Code Online (Sandbox Code Playgroud)

所有权限和防火墙均已测试。Machine1 可以 ssh 到 Machine2,但是当尝试从 Machine1 执行此操作时borg init --encryption=repokey borgdemo@Machine2:./demo,会出现上述错误。尝试在 Machine2 上使用 borg 效果很好。有任何想法吗?

Cyr*_*eau 6

有时,您无法在远程服务器上创建这样的符号链接(机器2上没有足够的权限)

因此,处理不同路径的最快方法是在客户端使用--remote-path参数:

/usr/bin/borg init --remote-path /usr/local/bin/borg borgdemo@Machine2:./demo
Run Code Online (Sandbox Code Playgroud)

...但最好的解决方案是在ssh 配置的服务器端强制使用绝对路径

$ cat .ssh/authorized_keys
command="/usr/local/bin/borg serve" ssh-ed25519 AAAAC...xyz
Run Code Online (Sandbox Code Playgroud)

通过此设置,来自客户端通过 ssh 隧道的每个 borg 连接都将在服务器端调用正确的二进制文件进行处理