sshfs

sshのファイル転送をwrapしてファイルシステムに見せてしまう、というもの凄いもの。SuSE10.1ではsshfsのパッケージが既に入っていたので、早速

sshfs user@server:/path ./mnt

したところ、/dev/fuseが無い、と言われる。ようわからんが、mknodしろと言ってる人がいるのでその通りに。

mknod -m 666 /dev/fuse c 10 229

再度sshfsすると、あっさりmountされた。素晴らしい。サーバ側に何の設定もいらない。もちろんsshdは動いてないとダメだが。
Debian sargeでは、かなり苦戦。

apt-get install sshfs

でパッケージを入れて、/dev/fuseが無いと言われるところまでは同じ。他にデバイスファイル作ってくれそうなパッケージを探してみるが無さそう。そもそも、そんなものがあるなら依存パッケージとしていっしょに入るはず。あんまり気にせず、mknodすると、今度はpermission denied。/usr/bin/sshfsはset-UIDされてるので、一般ユーザで問題ないはず。sshfsのインストールと同時に"fuse"というユーザgroupができてるので、ひょっとしてと思い、このgroupに自分を追加。今度は、modprobe fuseしろと言われる。その通りやってもダメ。そもそもそんなmoduleは存在してない。

module-assistant a-i fuse

とすると、kernelのバージョンに一致したheaderが無いよと言われる。

apt-get install kernel-headers

の後、再度module-assistantして、ようやくOK。

hao@hoxen2:~$ mount
/dev/hda1 on / type ext3 (rw,errors=remount-ro)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
//10.10.13.26/public on /mnt type smbfs (rw)
sshfs#hao@ho166.quattro.unisys.co.jp:/cobd1/public on /home/hao/mnt type fuse (rw,nosuid,nodev,max_read=65536,user=hao)