ちょっとした編集作業ならシームレスでやりたいところです。最近、sshfs(MacFUSE+sshfs)というツールを知りました。SSHでログインできるサーバを、ローカルにマウントして、あたかも手元のMacのHDDのように扱うことができるのです。「 私の欲しかったのはこれだっ!」と、何かがビビビときましたので、今回はこの話題で行きたいと思います。
MacFUSE+sshfsで楽々サーバ開発
さっそく導入してみます。まず、MacFUSEをインストールします。MacFUSEとは、Mac OS X上でフル機能のファイルシステムを実現することを可能にするプログラムです。MacFUSEのオフィシャルページ から「MacFUSE-Core-0.4.0.dmg」をダウンロードします(図1 ) 。あとは、インストーラの指示に従ってインストールします(図2 ) 。MacFUSEのインストールはこれで完了です。
図1 URL:http://code.google.com/p/macfuse/
図2 インストーラ
次に本題であるsshfsをインストールしましょう。これにより、SSHでアクセスできるサーバがファイルシステムになるのです。同じくMacFUSEのオフィシャルページの右カラムから「sshfs-0.3.0.dmg」をダウンロードして、アイコンを「アプリケーション」フォルダにドラッグ&ドロップして、完了です。アイコンはこんな感じです(( 図3 ) ) 。
図3 sshfsのアイコン
使ってみる
さて、実際に使ってみましょう。SSHでログインできるサーバとして、さくらインターネット のレンタルサーバでやってみます。
操作はターミナルからコマンドラインでもできるのですが[1] 、ここではGUIを使います。
まず接続。先ほどインストールした、sshfs([ アプリケーション] -[ sshfs] )をダブルクリックして起動します。[ Connect to SSH Server]( SSHサーバへの接続画面)が出てきますので、サーバ名、ユーザ名、マウントしたいサーバ側のディレクトリを入力します(( 図4 ) ) 。[ Connect]をクリックすると、パスワード入力ウィンドウが出てくるので、サーバのパスワードを入力します。
図4 SSHサーバへの接続画面
そして[OK]をクリックすると、サーバ名と同じ「yattane.sakura.ne.jp」というラベルのボリュームができます。ここにyattane.sakura.ne.jp:/home/yattaneがマウントされています。Finderから見てみましょう。普通にサーバ側のファイルが見えています(( 図5 ) ) 。
図5 サーバ側のファイルが見える
ターミナルからは、
ls /Volumes/yattane.sakura.ne.jp/
cp a.txt /Volumes/yattane.sakura.ne.jp/
など、普通のファイルシステムとして操作できます。ファイルやディレクトリの作成、削除、編集も思いのままです。つまり、ローカルマシンでサーバの開発作業ができるわけです。これはうれしい!
あと、コピーやバックアップなども手軽にできます。ドラッグ&ドロップなどのGUI操作もシームレスにできて便利です。
アンマウントは、Finderのボリューム名の右にある アイコンをクリックするだけです。USBメモリなどのストレージのアンマウントと同じですね。
MacFUSEを使った、sshfs以外のファイルシステム
sshfsはSSHを使ったファイルシステムなのですが、それ以外にもMacFUSEベースのファイルシステムが公開されています。
たとえば、WindowsのNTFSに対応したNTFS-3gというのがあります。BootCampでWindows(NTFSフォーマット)を入れたときに、Mac OSからWindows側のボリュームにアクセスしたい場合などに利用できます[2] 。
また、SpotlightFSは、Mac OS標準のファイル検索機能「Spotlight」と連動したファイルシステムです。マウントされたボリューム内に適当な名前でディレクトリを作ると、その名前でのSpotlight検索結果ファイルがそのディレクトリ内に集まります[3] 。