sshfs中に通信が切れた場合の対処法

sshfsの問題点

機械学習を行う際、基本的に自宅サーバーのフォルダをsshfsでマウントして、作業を行っている。

www.robotech-note.com


しかし、アンマウントを忘れて通信を切断、スリープしてしまうとマウントポイントが残ったままとなり、以降このディレクトリにアクセスできなくなる。
当然、この状態になると、再度sshfsでマウントしようとしても以下のエラーが出て、マウントできない。

例えばmacだとこんな感じでエラーが出る。

mount_osxfuse: mount point (マウント先リンク) is itself on a OSXFUSE volume
fuse: failed to mount file system: Invalid argument

解決策(接続時に自動で強制アンマウントさせる)

そこで、エラーが出たマウント先を強制的にアンマウントし、再度接続してあげる。

umount -f (マウント先ディレクトリ)

以下のようにエイリアス作っちゃうと便利。

alias sshfs2="umount -f (マウント先ディレックトリ);(マウント元アドレス):(マウント元ディレクトリ) (マウント先ディレクトリ)"