Dropbox を WebDAV でアクセスできるというサービスができた。
Netwalker では、Dropbox のクライアント・アプリが無いので、さっそく使ってみることとした。
また、今、仕事にでかけている某T社では、Dropbox がアクセス禁止なので、こちらでも使おうと思っている。
さて、WebDAV のクライアントだが、Windows なら標準でマイ・ネットワークから使えるが、それではおもしろくないので、WebDAV クライアントを探してみた。
エクスプローラ風のものや、ドライブに割り付け可能なものなどあったが、クライアントによっては接続できない場合もあり(特にプロキシ経由だと)、結局、以下のものを使う事とした。
本当は、ドライブに割り付け可能ならば、コマンドラインからも操作できて良いのだが、某T社で使う場合、あまり頻繁に使うとヤバそうなので、エクスプローラ風の「CarotDAV」とした。これは作者が日本人だし、結構さくさく動くので、使い勝手も良い。
次に、Linux だが、GNOME には WebDAV のクライアント機能があるが、DropDAV には接続できなかった。
そこで、「davfs2」を使ってみる事とした。
まず Synaptic から「davfs2 1.3.3」と「fusedav 0.2」をインストールする。「davfs2」は、仮想ファイルシステムの fuse か coda を使うようになっているが、fuse のほうが導入が簡単なのでこちらを使う。coda だと、カーネルの再構築が必要となる。
インストールしたら、以下の設定を行なう。
$ sudo chmod u+s /usr/sbin/mount.davfs
davfs2 のマウントコマンドに、root権限のsetuidを設定しておく。これで、一般ユーザが直接マウント可能となる。
・ /etc/davfs2/davfs2.conf
dav_user iizu
dav_group iizu
davfs2 を使用するユーザとグループを指定する。個人使用のマシンなので、自分のユーザとグループに限定してしまった。
・ ~/.davfs2/davfs2.conf
use_locks 0
server_charset UTF-8
・ ~/.davfs2/secrets
https://dav.dropdav.com DropboxのID パスワード
「~/.davfs2/」以下のファイルは、「/etc/davfs2」のものをコピーすれば良い。
「secrets」は権限を
600 にしなければならない。
・ /etc/fstab
https://dav.dropdav.com /home/iizu/dav davfs user,noauto 0 0
fstab にマウント・ポイントやオプションを記述しておく。これで、以下のコマンドでマウントできる。
$ mount /home/iizu/dav
$ df -h
...
https://dav.dropdav.com 77G 39G 39G 50% /home/iizu/dav
ファイル/ディレクトリ名が日本語のものは全く表示されない。
ただし、見えているファイルやディレクトリの読み書きは普通にでき、変更結果は、まずまず即座に Dropbox 本体に反映されている。
しかし、Dropbox に置いてある CVSリポジトリに対して cvs commit を行なうとエラーとなる。ファイルに対する情報の取得が一部うまくいっていないようだ。
まあ、とりあえずマウントできる程度で我慢というところかな。