まずは、MacFUSE って何?ってことから始めないといけないんだけど (僕も最近調べてわかったので) 要するに Mac 版 FUSE の実装。 FUSE ってのはユーザスペースで動作するファイルシステムのことで、通常 Linux などではカーネルモジュールとして組み込まないとならない。FUSE 自体はファイルシステムの API で単体で使う場合は開発者が使うことになる。けど、利用者は sshfs などを使えばそのあたりのことはまったく気にせず使える。
MacFUSE で強調されているメリットとしては NTFS の読み書きが出来るようになるってことがあげられている。現状の Mac でも読み書き出来るのですが、書き込みが 2GB までという制約がある。(たしかあったはず) けど個人的には sshfs でネットワーク先をマウントするのが便利だと思う。
sshfs とは ssh を使ったネットワーク先のファイルやフォルダをマウントするためのコマンドで、ネットワークに繋がっていれば、リモートサーバーをローカルの Mac にマウント出来きローカルから編集可能になる。
具体的な話をすると僕の場合、DreamHost を契約してるんですが、HDD が 200GB もあるわけです。でも実際 WebSite ぐらいをホストするだけならそんなに容量もいらないわけで、物置代わりに使いたいっと。sshfs で繋いしまえばローカルからドラッグ&ドロップで画像なりファイルなりを入れれちゃう。っでローカルからファイルを CarbonEmacs 使って編集とか出来ちゃうわけです。めっちゃ便利。あと、自分のネットワーク内では Samba、リモートサーバーとは WebDav でやっていたけど、外に出た時自宅サーバーに Samba では繋ぐことが出来ないわけです。そんな時 sshfs だったら ssh でコマンドラインじゃなくって GUI でもいじれてしまう。これテラ便利。
導入
上記の Google Code 内に最新版のパッケージがあるのでダウンロードしてインストールするだけ。再起動を求められるので再起動しておく。また sshfs の .app 版も置いてあるので GUI で使いたい人は入れておく方が良い。
GUI 版 では /Applications/sshfs.app/Contents/Resources/sshfs-static に CUI コマンドがあります。これにシンボリックリンクをはってもいいですし、MacPorts に CUI 版の sshfs もあります。
使い方
MacFUSE は インストールするだけです。sshfs はリモート側の sshd を使うのですが、立ち上げてホストなどを入力したあとパスワードを聞かれます。この時、公開鍵認証をしている場合はパスフレーズを入力すれば OK。
公開鍵認証をしている場合 CUI 版ではパスフレーズの入力はしないですみます。CUI 版の場合はを以下の通り
% sshfs username@hostname:/path/to/file /mount/point/ -oping_diskarb,volname=VOLNAME
外したい時は
% umount /mount/point
マウント出来たら Finder に上記のように表示されるはず。
参考リンク
問題点
気になった点が一つあって sshfs で mount した Vol を umount するときに落ちることがある。ただ落ちるんじゃなくて、Mac 全体がシャットダウンするしかなくなる。まだ開発版だからだとおもうんだけど...、安定性って意味ではまだ次第点なんでしょう。
たぶんやり方があるんだろうけど、Mac 起動時に自動で sshfs でマウントしてくれると便利だろうなぁっと思いつつまだやり方を調べてない。
雑記
coLinux でも使いたくて、っというか coLinux で sshfs を使うと samba と絡めてかなり使いやすくなるらしい。coLinux の場合カーネルが Windows 側にあるからカーネルのモジュールイメージを作らないといけなくて、そこでなぜだかモジュールをビルド出来なくて諦めた。
次は NTFS-3G の導入と使い方でも書いてみようかと。
コメントする