ben*_*ene 75 networking linux ssh fuse
我正在使用SSHFS挂载从我的笔记本电脑到中央服务器。
显然,SSHFS 挂载在较长时间断开连接后(例如在挂起期间)被破坏,导致底层 SSH 连接超时。
有没有办法让 SSHFS 挂载在长期断开连接(> 5 分钟)甚至使用不同 IP 重新拨号的情况下幸存下来?
kub*_*zyk 89
用 -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=3
这种组合ServerAliveInterval=15,ServerAliveCountMax=3会导致 I/O 错误在网络中断一分钟后弹出。这很重要,但在很大程度上没有记录。如果ServerAliveInterval选项保留为默认值(因此没有活动检查),遇到 I/O 挂起的进程似乎会无限期地休眠,即使在 sshfs 被reconnect'ed 之后。我认为这是一种无用的行为。
换句话说,-o reconnect如果没有分配ServerAliveInterval,任何 I/O 要么成功,要么无限期挂起应用程序,如果 ssh 在下面重新连接。结果,典型的应用程序变得完全挂起。如果您希望允许 I/O 返回错误并恢复应用程序,则需要ServerAliveInterval=1或更高。
ServerAliveCountMax=3无论如何,这是默认值,但我喜欢指定它以提高可读性。
ben*_*ene 58
感谢 autossh 和 autofs 的提示。
但是,出于我的直接目的,我找到了一个更简单的解决方案,但没有很好地记录:
sshfs -o reconnect server:/path/to/mount
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
52056 次 |
| 最近记录: |