我想将远程位置的文件夹安装到我的 mac 上的 /mnt/volume,但该文件夹通常是通过登录服务器访问的[电子邮件受保护]使用 SSH 之类的(-A 是必要的,因为它对后续跃点使用相同的 SSH 密钥),然后在这台服务器上执行一次。我想将此服务器主目录中的一个文件夹安装到我的 mac 上。我该怎么做呢?ssh -A -Y -o [email protected]
ssh -A -Y -o [email protected]
我已经验证我可以在服务器登录上安装一个文件夹,如下所示: 所以我的 sshfs 正在工作。sudo sshfs -o allow_other,defer_permissions,IdentityFile=~/.ssh/id_rsa [email protected]:/home/users/myname /mnt/volume
我尝试过这个方法https://www.larkinweb.co.uk/computing/mounting_file_systems_over_two_ssh_hops.html
我在哪里 ,然后 但它回来了。ssh -f [email protected] -L 2223:server-main.com:22 -N
sudo sshfs -p 2223 [email protected]:/ /mnt/volume
remote host has disconnected
答案1
使用选项ssh_command
:
sshfs :/mnt/volume -o ssh_command='ssh userB@systemB -t ssh userC@systemC'
卸载:
fusermount -u /mnt/volume
答案2
在您引用的文章中有两个命令。首先,
$ ssh -f userB@systemB -L 2222:systemC:22 -N
在本地主机和 之间建立隧道systemB
;向 发出的请求localhost:2222
将转发到22
上的端口systemC
。
因此,要安装/remote/path/
(位于systemC
) 上,localhost
您必须连接到localhost:2222
,如第二个命令所示:
$ sshfs -p 2222 userC@localhost:/remote/path/ /mnt/localpath/
但在你的问题中,你正在尝试连接到systemC:2223
.
相反,它应该是:
$ ssh -f [email protected] -L 2223:server-main.com:22 -N
$ sudo sshfs -p 2223 myname@localhost:/ /mnt/volume