CUI環境のDebian 64bit版でDropboxを使う

2015/03/18[公開]

 自宅のDebianサーバーでもDropboxを使いたいと思い、Debian GNU/Linux Wheezy 7.8の64bit版で設定した記録です。家のDebianはデスクトップ環境無しのCUI環境ですが、GUI無しでも大丈夫なようです。Dropboxが使えるようになったら、WordPressのバックアップデータを入れたいという計画なのです。

 Dropboxは公式サイトでLinux用のページを用意してくれています。デスクトップ環境があれば簡単にインストールできるようですが、コマンドラインインストールの方法は公式サイトの説明だけではさっぱりわかりません。

 いろいろググったり、試行錯誤してウチのDebianにて設定を進めた備忘録です。Dropboxのアカウントは作成済みの前提です。

スポンサー リンク

Dropbox のインストール

 Dropboxのサイトからwgetでダウンロードして解凍する。公式サイトの説明通りです。root権限ではなく、メインユーザーの一般権限でコマンドを入れます。

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

 続いて、ユーザーディレクトリに展開された.dropbox-distフォルダの中のdropboxデーモンを起動します。

$ ~/.dropbox-dist/dropboxd

dropbox4

 こんな感じで延々とhttps://www.dropbox.com/~~にアクセスしろと繰り返します。デスクトップ環境があればここでブラウザが開いてログインできます。ない場合は、このアドレス部分をコピーして別なPCでこのリンクを開いてログインします。この画面は出したままにするのを忘れずに。

 dropbox6

 別なPCでログインすると、「このコンピューターはDropboxにリンクされました。ようこそ、」と表示されたら成功です。Ctrl+Cでこの画面から抜けます。

PythonスクリプトでDropboxを管理

 Dropboxをコマンドラインで操作できるようにします。Dropboxが用意してくれているpythonスクリプトを使います。まずはスクリプトファイルをダウンロードします。ここからはsuでroot権限になって操作します。

# wget 'https://www.dropbox.com/download?dl=packages/dropbox.py' -O /usr/local/sbin/dropbox

  私は追加のスクリプトファイルを/usr/local/sbin/にdropboxというファイル名にして保存していますが、パスは環境により最適な場所に保存してください。

# chmod u+x /usr/local/sbin/dropbox

  保存したファイルに所有者の実行権限を与えて

# dropbox
Dropbox command-line interface

commands:

Note: use dropbox help <command> to view usage for a specific command.

 status       get current status of the dropboxd
 help         provide help
 puburl       get public url of a file in your dropbox
 stop         stop dropboxd
 running      return whether dropbox is running
 start        start dropboxd
 filestatus   get current sync status of one or more files
 ls           list directory contents with current sync status
 autostart    automatically start dropbox at login
 exclude      ignores/excludes a directory from syncing
 lansync      enables or disables LAN sync

 dropboxとコマンドを打つと、使えるコマンドが表示されます。

# dropbox status
Dropbox isn't running!

  dropbox status と打つと現在のステータスが確認できます。まだDropboxは動いていないようです。(rootではなく先ほどのユーザーで動いていると思われます。)

初回インストール

  あとはDropboxをスタートさせるだけと思いきや、初回はオプション-i を付けるようにとのこと。

# dropbox start -i
In order to use Dropbox, you must download the proprietary daemon. [y/n]

  なにやらデーモンをダウンロードするか聞いてくるので「y」を押します。

# aptitude install python-gpgme

  先にpython-gpgmeをインストールしておかないとダメと言われた場合はインストールします。私の場合は先にインストールが必要でした。

一般ユーザーでDropboxを利用する

 rootで利用してもいいのですが、ユーザーのホームディレクトリのDropboxフォルダが同期された方が使い勝手が良いと私は思うので、一般ユーザーで利用できる設定で進めます。

 ユーザー名を[user-name]としています。

# chown [user-name] /usr/local/sbin/dropbox

 ファイルの所有者を利用するユーザーに変更します。

# su [user-name]

  一般権限のユーザーに切り替えてから

$ /usr/local/sbin/dropbox start
 Starting Dropbox...Dropbox isn't running!
 Done!

  /usr/local/sbin/dropbox start とコマンドを入れてDropboxをスタートさせます。

$ /usr/local/sbin/dropbox status
最新の状態

 /usr/local/sbin/dropbox status でステータスを見ると「最新の状態」になりました。

 ユーザーのホームディレクトリにあるDropboxフォルダの中にファイルを置いて、クラウド上で同期されるのを確認できたら成功です。

OS起動時にDropboxをスタートさせるべくCronに登録する

 Debianを再起動させると、Dropboxもスタートし直す必要があります。それは面倒なのでCronに登録させておくと便利なようです。Crontabに@rebootでコマンドを入れておくと、cron起動時=OS起動時に実行してくれるそうです。

 /etc/crontab ファイルを編集します。

# m h dom mon dow user	command
17 *	* * *	root    cd / && run-parts --report /etc/cron.hourly
25 6	* * *	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6	* * 7	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6	1 * *	root	test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
30 4    * * *   root    /usr/local/sbin/fstrim.sh
#

@reboot [user-name] /usr/local/sbin/dropbox start

  最終行に一行追加しました。[user-name]は適切なユーザー名を入れてください。

 可能であればOS再起動をして動作確認をしてみます。

 もしくは、cronだけ再起動

/etc/init.d/cron restart
$ /usr/local/sbin/dropbox status
最新の状態

 再起動後、ステータスが「最新の状態」であればOKです。

最後にひとこと

 いつまで家のサーバーとDropboxが同期を保ってくれるのか長い時間様子を見る必要がありますが、大丈夫そうならバックアップの保存先として利用する予定です。

スポンサー リンク

こちらの記事もどうぞ

“CUI環境のDebian 64bit版でDropboxを使う” への2件の返信

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です