Linux で GUI を使わずに Dropbox をインストールする


Dropbox は複数の端末で簡単にファイル共有が行えるすばらしいソフトだが、標準のインストーラは GUI 版で、サーバー機などの X がない端末のことは考えられていない。その場合は Python によって書かれたインストールスクリプトを使うことが勧められている。

TipsAndTricks/TextBasedLinuxInstall – Dropbox Wiki
http://wiki.dropbox.com/TipsAndTricks/TextBasedLinuxInstall

では手順通りにインストールしてみよう。

dropbox.py のダウンロード & インストール

CUI 版 Dropbox のインストーラ件起動スクリプトは dropbox.py である。書いてあるとおりにダウンロード & インストールを行おうとすると……あれ?

$ curl -LO https://www.dropbox.com/download?dl=packages/dropbox.py
$ chmod +x dropbox.py 
$ ./dropbox.py start --install
  File "./dropbox.py", line 128
    with open(pidfile, "r") as f:
            ^
SyntaxError: invalid syntax
$

エラーで動かない。調べてみると、dropbox.py には Python 2.6 以上が必要らしい。CentOS 5.6 の Python は 2.5 系なので動かないのだ。

今回は pythonbrew を使ってユーザー領域に Python 2.7.1 をセットアップした。依存関係なんぞ考えなくていいから便利だ。

初めての perlbrew & pythonbrew
https://blog.delphinus.dev/2011/05/perlbrew-and-pythonbrew.html

次に dropbox.py の一行目を書き換える。

#!/usr/bin/python
#!/usr/bin/env python

改めてインストールを実行する。

$ ./dropbox.py start --install
Starting Dropbox...
Dropbox is the easiest way to share and store your files online. Want to learn more? Head to http://www.dropbox.com/

In order to use Dropbox, you must download the proprietary daemon. [y/n] y
Downloading Dropbox... 100%
$

ホントはダウンロードの後にファイルが解凍されるはずなのだが、今回はなぜかここで終了してしまった。しょうがないので手動で解凍する。

$ tar zxvf dropbox.tar.gz

スクリプトはもういらないので削除しておく。

$ rm dropbox.py

HOST_ID の登録

実際に Dropbox を起動する前に、ユーザー情報と関連づける必要がある。これは指定された URL にアクセスすることによって行う。

URL を知るには、デーモンを起動する。

$ ~/.dropbox-dist/dropboxd
このクライアントはアカウントにリンクされていません...
このマシンをリンクするには https://www.dropbox.com/cli_link?host_id=169b1f31e947c34b17e23947aa438dce&cl=ja を開いてください。

デーモンはここで止まってしまうが起動したまま放っておく(ここで Control + C などで dropboxd を終了してしまうとうまくいかない。そのまま放置したまま次に進む。)。次に、ブラウザ(別のマシンでかまわない)で Dropbox のサイトを開き、メッセージに記されたアドレスを開く。

110506-0003.png

パスワードを入力する。

110506-0004.png

するとブラウザには「コンピュータがアカウントにリンクされました。」と表示され、端末にもメッセージが現れる。この時点で ~/Dropbox にファイルが同期されていくはずだ。

$ ~/.dropbox-dist/dropboxd
このクライアントはアカウントにリンクされていません...
このマシンをリンクするには https://www.dropbox.com/cli_link?host_id=169b1f31e947c34b17e23947aa438dce&cl=ja を開いてください。
クライアントはリンクされました。○○○○○ さん、ようこそ!

問題ないようなら、とりあえず Control + C で終了しよう。

OS 起動時に自動で有効になるようにする

さて、これで設定はできたのだが、OS が起動するたびに ~/.dropbox-dist/dropboxd を手動で起動するのはめんどくさい。起動スクリプトを作っておいて自動で起動するように設定しよう。

ここから先は OS によって異なる。今回は CentOS 5.6 で行ったことを書く。

起動スクリプトの作成

CentOS は RedHat 系なので、サイトにある Fedora 用スクリプトを使う。

TipsAndTricks/TextBasedLinuxInstall/FedoraStartup – Dropbox Wiki
http://wiki.dropbox.com/TipsAndTricks/TextBasedLinuxInstall/FedoraStartup

このスクリプトを dropbox という名前で保存し、実行権限をつけた上で /etc/init.d/dropbox にコピーする。

$ cat > dropbox

# ここでコピーしたスクリプトをペースト
# Control + D で抜ける

$ chmod +x dropbox

# 管理者権限でコピーする
$ sudo cp dropbox /etc/init.d/
$

設定ファイルの作成

次に、設定ファイルを作成する。これにも管理者権限が必要だ。

$ sudo sh -c 'cat > /etc/sysconfig/dropbox'
DROPBOX_USERS="user1 user2"
# ここには実際にログインする Linux のユーザーアカウントを書く
# Control + D で抜ける
$

自動起動の設定

一般的なデーモンの場合と同じだ。

$ sudo /sbin/chkconfig dropbox on
$

これで設定は完了。OS を再起動すると、自動的に Dropbox が起動するはずだ。

コメントを残す