Macでssh接続したサーバをマウント

Macでサーバに接続してごにょごにょしてるとguiで見る必要があるファイルに出くわす。
手元に落としてみてもよいが数が見たり移動したりと頻繁にする場合はやや面倒なので、Finderで見れたら便利。
ubuntuならNautilusで簡単にできるが、Macだとちょっと面倒なのでメモ。

必要なのはfuse4xとsshfsの2つ。macportsを使えば

sudo port install fuse4x
sudo port install sshfs

でOK.

使い方は、

sshfs -p port username@hostname:hostdirctory mountdirecotry

でOK.
具体的には

  • server IP: 111.111.111.111
  • server port:22
  • server username:hoge
  • server Dicrecotry:/home/hoge
  • Local Directory:/home/tanaka/mnt

で、サーバの/home/hogeをローカルの/home/tanaka/mntにマウントしたい場合は次のようにする。

sshfs -p 22 hoge@111.111.111.111:/home/hoge /home/tanaka/mnt

このとき、マウント先のローカルのディレクトリはあらかじめ作っておかないと怒られる。
マウント後はfinderなどから自由にアクセスが可能になる。
アンマウントするときは

umount /home/tanaka/mnt

でOK.
ただし、使ってみた感想として、割と不安定なのかファイルのコピーもまともにできなかったのは残念。
普通にscp使うことにした。

おまけ

マウントする度に毎回サーバのポートやアドレスを指定するのは非常に面倒。これらの設定は~/.ssh/configに書いておけば、ssh同様勝手に判断して適用してくれる。
~/.ssh/configに次のように書かれているとする。

Host test
hostname 111.111.111.111
user hoge
port 22

先ほどのsshfsは次のようになる。

sshfs test:/home/hoge /home/tanaka/mnt

でOK.
ssh_configファイルは色々と便利なので、詳しくは

man ssh_config

を読むと良い。