序章

このチュートリアルでは、Dropboxクライアントをインストールし、Ubuntu14.04サーバーでヘッドレスサービスとして実行するように構成する方法を示します。 これにより、サーバーがDropboxに接続できるようになり、Dropboxファイルのコピーをサーバー上で同期しておくことができます。

前提条件

スーパーユーザー権限(sudo)を持つ非rootユーザーが必要です。 これを設定するには、 Ubuntu 14.04を使用したサーバーの初期設定チュートリアルの少なくとも手順1〜3に従ってください。 このチュートリアルのすべてのコマンドは、この非rootユーザーとして実行されます。

準備ができたら、Dropboxクライアントをインストールします。

Dropboxクライアントをインストールします

Linux Dropboxクライアントの最新バージョンは、次のコマンドを使用してホームディレクトリにダウンロードできます。

  1. cd ~
  2. curl -Lo dropbox-linux-x86_64.tar.gz https://www.dropbox.com/download?plat=lnx.x86_64

これで、ホームディレクトリにdropbox-linux-x86_64.tar.gzというファイルが作成されます。

注: 32ビットディストリビューションを実行している場合は、代わりに次のコマンドを使用して32ビットLinuxクライアントをダウンロードしてください。

cd ~
curl -Lo dropbox-linux-x86.tar.gz https://www.dropbox.com/download?plat=lnx.x86

次に、次のコマンドを使用して、Dropboxアーカイブの内容を/opt/dropboxに抽出します。

sudo mkdir -p /opt/dropbox
sudo tar xzfv dropbox-linux-x86_64.tar.gz --strip 1 -C /opt/dropbox

これでDropboxクライアントがサーバー上にありますが、Dropboxアカウントにリンクする必要があります。

DropboxクライアントをDropboxアカウントにリンクするには、次のコマンドを実行します(Dropboxファイルを保存するホームディレクトリのユーザーとして)。

  1. /opt/dropbox/dropboxd

これにより、Dropboxクライアントがフォアグラウンドで起動するため、現時点では他のコマンドを入力できなくなります。 クライアントを初めて実行すると、次のような出力が表示されます。

Host ID Link:
This computer isn't linked to any Dropbox account... Please visit https://www.dropbox.com/cli_link_nonce?nonce=ac8d12e1f599137703d88f2949c265eb to link this device.

ローカルコンピューターのWebブラウザーで出力(上記の例で強調表示されている)のURLにアクセスします。

Dropboxにログインし(まだログインしていない場合)、接続ボタンをクリックします。

Dropbox Connect Prompt

Webブラウザーに成功メッセージが表示されたら、Ubuntuサーバーに次の出力が表示されます。

Link success output:
This computer is now linked to Dropbox. Welcome Sammy

これで、Dropboxアカウントがクライアントにリンクされました。 これで、ホームディレクトリに「Dropbox」というディレクトリができました。 これは、同期されたDropboxファイルを保存する場所です。

Ctrl-Cを押して、Dropboxの実行を今のところ終了します。

次のステップは、Dropboxがサービスとして実行されるようにいくつかのスクリプトを設定することです。これにより、クライアントが実行を継続するためにログインする必要がなくなります。

サービススクリプトを設定する

Dropboxをサービスとして開始するには、スクリプトを作成する必要があります。 手間を省くために、このコマンドを使用して/etc/init.d/dropboxにダウンロードできます。

  1. cd ~
  2. sudo curl -o /etc/init.d/dropbox https://gist.githubusercontent.com/thisismitch/d0133d91452585ae2adc/raw/699e7909bdae922201b8069fde3011bbf2062048/dropbox

次に、次のコマンドを使用してスクリプトを実行可能にします。

sudo chmod +x /etc/init.d/dropbox

スクリプトは、/etc/default/dropboxファイルにDropboxを実行するシステムユーザーのリストが含まれていることを想定しています。 ファイルを作成し、次のコマンドで編集できるように開きます。

  1. sudo nano /etc/default/dropbox

DROPBOX_USERSがシステムユーザー名と等しいことを指定する行を追加します。 たとえば、ユーザー名が「sammy」の場合、次のようになります。

/ etc / default / dropbox
DROPBOX_USERS="sammy"

Ctrl-xyEnterの順に押して、ファイルを保存して終了します。

これで、Dropboxをサービスとして開始する準備が整いました。 次のコマンドを実行して開始します。

  1. sudo service dropbox start

次に、次のコマンドを実行して、サーバーの起動時に開始するようにサービスを構成します。

  1. sudo update-rc.d dropbox defaults

これで、Dropboxクライアントがサービスとして実行され、サーバーの起動時に自動的に起動します。

DropboxCLIをインストールします

Dropboxには、Dropboxクライアントを構成できるようにインストールできるコマンドラインインターフェイス(CLI)も含まれています。

ホームディレクトリにダウンロードするには、次のコマンドを実行します。

cd ~
curl -LO https://www.dropbox.com/download?dl=packages/dropbox.py

これで、ホームディレクトリにdropbox.pyというファイル(Dropbox CLI)が作成されます。

次のコマンドを使用して実行可能にします。

chmod +x ~/dropbox.py

次に、ホームディレクトリで、Dropboxのインストールパスを指す.dropbox-distという名前のシンボリックリンクを作成します。 これが必要なのは、DropboxCLIが~/.dropbox-distにDropboxのインストールが含まれていることを想定しているためです。

  1. ln -s /opt/dropbox ~/.dropbox-dist

これで、次のコマンドを使用して、ホームディレクトリからDropboxCLIを実行できます。

  1. ~/dropbox.py

これにより、基本的なヘルプページが印刷されます。 次のサブセクションでは、DropboxCLIを使用していくつかの基本的なことを行う方法について説明します。

DropboxCLIの使用方法

オプションなしでCLIを実行し、使用方法を印刷することを忘れないでください。

ドロップボックスのステータスを確認する場合は、statusコマンドを使用してください。

  1. ~/dropbox.py status

すべてのファイルが同期されている場合は、次のメッセージが表示されます。

Output:
Up to date

また、これを使用して、LAN上の関連ファイルを同期しようとする自動LAN同期機能をオフにすることもできます。

  1. ~/dropbox.py lansync n

もう1つの便利なコマンドはexcludeです。 これにより、サーバー上で同期してはならないファイルとディレクトリを指定できます。 たとえば、サーバーがDropboxからphotosディレクトリをダウンロードしないようにする場合は、次のコマンドを実行できます。

  1. ~/dropbox.py exclude add ~/Dropbox/photos

次に、次のコマンドを使用して、サーバーから除外されているファイルとディレクトリを確認できます。

  1. ~/dropbox.py exclude list

CLIを自由に試して、他に何ができるかを確認してください。

より多くのDropboxアカウントをリンクする場合は、このセクションに従ってください。

複数のDropboxアカウントをサーバーにリンクすることが可能です。 ただし、リンクするDropboxアカウントごとに追加のシステムユーザーが必要になります。 Ubuntuサーバーにユーザーを追加する方法がわからない場合は、次のチュートリアルに従ってください:Ubuntuでユーザーを追加および削除する方法

使用するシステムユーザーアカウントを取得したら、そのユーザーとしてサーバーにログインします。

/opt/dropbox/dropboxdを実行します。 以前と同様に、これにより、DropboxアカウントをサーバーにリンクするためのURLが出力されます。

サーバーにリンクするアカウントでDropboxにログインします。 次に、サーバーのURLにアクセスし、接続ボタンをクリックします。

次に、/etc/default/dropboxを編集します。

  1. sudo nano /etc/default/dropbox

新しいシステムユーザーをDropboxユーザーのリストに追加します。 たとえば、Dropboxを実行している2人のシステムユーザー「sammy」と「ben」がある場合、次のようになります。

/ etc / default / dropbox
DROPBOX_USERS="sammy ben"

Ctrl-xyEnterの順に押して、ファイルを保存して終了します。

次に、Dropboxサービスを再起動します。

  1. sudo service dropbox restart

これで、サーバーが複数のDropboxアカウントにリンクされました。

新しいユーザーでCLIを使用するには、必ず Install DropboxCLIセクションを新しいユーザーとして再度実行してください。

Dropboxアカウントのリンクを解除する場合は、次の手順に従います。

まず、サービスを停止します。

  1. sudo service dropbox stop

次に、/etc/defaults/dropboxを編集して、リストからユーザーを削除します。

次に、ユーザーのDropboxディレクトリを削除します。 例えば:

  1. sudo rm -r ~/ben/Dropbox

次に、サーバーに他のDropboxアカウントがリンクされている場合は、Dropboxクライアントを再起動します。

  1. sudo service dropbox start

最後に、アクセスを完全に制限したい場合は、 Dropboxアカウントのセキュリティページに移動して、リンクされているデバイスを削除できます。

結論

これで、Dropboxクライアントがサーバーにインストールされ、実行されます。 これで、サーバーがDropboxアカウントにリンクおよび同期されます。