さくらVPSを同じお値段で移行して、サーバの容量にかなり余裕ができたので、それを使って自分専用Dropbox的なことをやってみようと思いました。

使うのは、SparkleShare というオープンソースのソフト。

インストールは基本的には、上記サイトにあるようにやっていけば大丈夫です。

クライアントのインストール

まずは、クライアントを入れます。 Downloads · hbons/SparkleShareからダウンロードできます。
自分は、mac版を入れて、Applicationsに入れました。他にもLinux版とWindows版のクライアントもあります。

それを起動すると、以下のような画面でユーザ名とメールアドレスを入力します。 SparkleShare1

で、最後まで進めます。

すると、SparkleShare というディレクトリがホームフォルダにできています。 その中に、keyが書かれたファイルが作られています。

SparkleShare key

このファイルに書かれたkeyを後で使います。

サーバ側の設定

サーバ側では、gitというユーザを作って、そのユーザでSparkleShareを利用することにします。

以下のコマンドで、ユーザと、gitのプロジェクトと、.ssh以下のキーファイルを書くためのファイルの作成を行います。 MyProject は他の名前でも大丈夫です。

sudo adduser ––disabled-password git
sudo git init ––bare /home/git/MyProject
sudo mkdir /home/git/.ssh
sudo touch /home/git/.ssh/authorized_keys

ここで作られたauthorized_keysのファイルに、先程クライアント側でできたkeyのファイルに書かれた文字列をコピーします。

その後に、以下のコマンドを実行します。

sudo chmod 700 /home/git/.ssh
sudo chmod 600 /home/git/.ssh/authorized_keys
sudo chown -R git:git /home/git

以上で、サーバ側の設定は終わりです。

クライアントにサーバの設定を追加する

サーバの設定が終わったら、そのサーバの情報をクライアントに追加します。 まず、メニューバーにあるSparkleshareのアイコンをクリックして、 "Add Hosted Project" を選択します。

sparkleIcon

で、そこに今のサーバのアドレスと、先程サーバ側で作ったプロジェクトへのpathを入力します。 sshでデフォルトの22以外を使う場合はアドレスに続いてportを指定します。
(たしか[host]:[port]のように書けばOKだったと思います) これで、今までの設定があっていれば、うまく設定が完了します。

あとは、ファイルを~/SparkleShare/MyProjectに追加すれば、自動的にアップされます。

他のマシンで共有する場合は、新しいマシンにクライアントを入れて、そのクライアントのkeyをサーバのauthorized_keysに追記して、クライアント側でサーバの設定を入力すれば、OKです。

S3をバックエンドに持つDropboxのようなデータの冗長性はないですけど、サーバのディスクが余ってる人なら、Dropboxのような感覚で無料で使えるので試してみてもよいと思います。
また、外部のサービスにはデータ置けないっていう会社の人も、LAN内のサーバで運用するなどすれば使えるかもしれません。

関連しそうなサイト: