さくら VPS に Dropbox をインストールして WebDAV 化する

Dropbox を WebDAV 化すると、

  • 自分のマシン以外で作業する場合
  • iOS で Dropbox をサポートしていないアプリで作業する場合 (Pages など)
  • Dropbox 非対応の OS (FreeBSD や PC-BSD など) で作業する場合

などでも、Dropbox のファイルを編集できて便利です。

こうした目的のためには DropDAV が利用できるようですが、現在 (2012/12/16)、

Just $5 per month, 14-day Free Trial.

とのことです。Dropbox 無料 2GB を WebDAV 化するのに月々5ドルは少し割に合わないような気もします。

そこで、さくら VPS (Debian Squeeze) に Dropbox をインストールして WebDAV 化してみたいと思います。もちろん、さくら VPS に限らずルート権限のあるサーバが走っていれば手順は同様です。

1. Dropbox の CLI バージョンのインストール
2. Dropbox フォルダを WebDAV ディレクトリに変更
3. ローカルマシンで WebDAV にアクセス

Dropbox のインストール

Dropbox ダウンロード の説明にしたがってインストールします。64-bit の場合は、

$ cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -
$ ~/.dropbox-dist/dropboxd

表示さた URL にアクセスして Dropbox アカウントへのリンクを作成します。

Dropbox CLI ツールもイントールしておきます。

$ wget 'https://www.dropbox.com/download?dl=packages/dropbox.py' -O ~/bin/dropbox
$ chmod +x ~/bin/dropbox

Dropbox は lansync オプションによって、サーバーまでアクセスすることなく、Dropbox がインストールされた同一 LAN 内のマシン同士でファイルが同期されます。今の場合はこのオプションは無効にしておきます。

$ dropbox lansync n

Dropbox を WebDAV ディレクトリに変更

WebDAV の構築手順はここでは詳しく触れませんが、私の場合 (Debian Squeeze) 設定ファイル (/etc/apache2/sites-available/webdav-digest-ssl) は以下のように作成しました。

DavLockDB "/tmp/DavLock"
Alias /webdav "/home/webdav"

<Directory "/home/webdav">
    Dav On
    SSLRequireSSL
    Order Deny,Allow
    Allow from all
    Options Includes ExecCGI FollowSymLinks Indexes

    AuthType Digest
    AuthName "Restricted Area"

    AuthUserFile "/etc/apache2/key/.htdigest"
    AuthDigestProvider file

    <LimitExcept GET OPTIONS>
    require valid-user
    </LimitExcept>
</Directory>

WebDAV ディレクトリ (/home/webdav) を “www-data” グループで読み書きできるようにします。

$ chown -R hoge.www-data /home/webdav
$ chmod -R g+wr /home/webdav

WebDAV の設定を有効化します。

$ a2ensite webdav-digest-ssl
$ /etc/init.d/apache2 reload

次に、Dropbox のデフォルトのパスを WebDAV ディレクトリ配下に変更します。ここ のスクリプト (pyDropboxPath.py) で変更できると書いてあったのですが、残念ながらエラーでうまくいきませんでした。そこで、Dropbox フォルダを移動して、もとの場所に Symlink を作成しておきました。これでも一応大丈夫のようです。

$ dropbox stop
$ mv ~/Dropbox /home/webdav/
$ ln -s /home/webdav/Dropbox ~/
$ dropbox start

ローカルマシンから WebDAV にアクセス

例えば FreeBSD では Dropbox クライアントが利用できないようですので、この WebDAV を利用してみます。

Nautilus の場合「サーバーへの接続」からアクセスすることができます。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください