リモートのファイルをローカルのファイルのように扱うsshfs

UNIXではリモートで作業することは何かと多い。
リモートのファイルをローカルのファイルのように扱えると何かと便利。


そこでsshfsを使う。
どういうことができるかというと、ssh経由でリモートのサーバーをマウントし、ローカルのファイルのように見せかける。
Ubuntuなら簡単にインストールして利用できる。

インストール

% sudo apt-get install sshfs

参考にしたサイトではこのあとadduserとかしてるけど、
当方の環境(Ubuntu8.10)ではこれだけでできた。

使用方法

マウントポイント(ここでは~/mnt)を作ってマウントする。
usernameはユーザー名。
servernameはサーバー名。

% mkdir ~/mnt
% sshfs username@servername:/home/username ~/mnt

/home/usernameのところも環境に合わせてかえる。
これだけ!
びっくりするほど簡単にできた。
前はtramp(2009-05-14 - SEにはなりたくない情報系の大学生)を使ってリモートのファイルを編集したりしてたけどこっちのほうが安定感がある。
ちなみにアンマウントは

% fusermount -u ~/mnt

2010-09-30 追記

上記の方法ではシンボリックリンクはうまくあつかえません.
以下のオプションでシンボリックリンクを追跡できます.

sshfs -o follow_symlinks username@servername:/home/username ~/mnt