CentOS 7でDropbox Clientをサービスとしてインストールする方法

前書き

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

前提条件

スーパーユーザー特権( + sudo +)を持つ非rootユーザーが必要です。 これを設定するには、https://www.digitalocean.com/community/tutorials/initial-server-setup-with-centos-7 [CentOS 7での初期サーバー設定]チュートリアルの少なくとも手順1〜3に従ってください。 このチュートリアルのすべてのコマンドは、この非ルートユーザーとして実行されます。

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

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

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

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

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

次に、次のコマンドを使用して、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アカウントにリンクするには、次のコマンドを実行します(Dropboxファイルを保存するホームディレクトリを持つユーザーとして):

/opt/dropbox/dropboxd

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

Host ID Link:This computer isn't linked to any Dropbox account...
Please visit  to link this device.

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

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

image:https://assets.digitalocean.com/articles/dropbox/dropbox-connect.png [Dropbox Connect Prompt]

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

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

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

今のところDropboxの実行を終了するには、 `+ Ctrl-C +`を押します。

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

サービススクリプトのセットアップ

Dropboxをサービスとして起動するには、initスクリプトとSystemdユニットファイルを作成する必要があります。 トラブルを避けるために、次のコマンドを使用してダウンロードできます。

sudo curl -o /etc/init.d/dropbox https://gist.githubusercontent.com/thisismitch/6293d3f7f5fa37ca6eab/raw/2b326bf77368cbe5d01af21c623cd4dd75528c3d/dropbox
sudo curl -o /etc/systemd/system/dropbox.service https://gist.githubusercontent.com/thisismitch/6293d3f7f5fa37ca6eab/raw/99947e2ef986492fecbe1b7bfbaa303fefc42a62/dropbox.service

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

sudo chmod +x /etc/systemd/system/dropbox.service /etc/init.d/dropbox

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

sudo nano /etc/sysconfig/dropbox

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

/ etc / sysconfig / dropbox

DROPBOX_USERS=""
  • Ctrl-x y Enter *の順に押して、ファイルを保存して終了します。

Systemdデーモンをリロードして、ユニットファイルを使用できるようにします。

sudo systemctl daemon-reload

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

sudo systemctl start dropbox

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

sudo systemctl enable dropbox

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

Dropbox CLIをインストールする

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

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

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

これで、ホームディレクトリにDropbox CLIである `+ dropbox.py +`というファイルが作成されました。

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

chmod +x ~/dropbox.py

次に、ホームディレクトリで、Dropboxのインストールパスを指す `+ .dropbox-dist `というシンボリックリンクを作成します。 これは、Dropbox CLIがDropboxインストールを含むために `〜/ .dropbox-dist +`を期待するために必要です。

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

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

~/dropbox.py

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

Dropbox CLIの使用方法

オプションを使用せずにCLIを実行すると、使用方法が出力されることに注意してください。

Dropboxのステータスを確認したい場合は、 `+ status +`コマンドを使用します:

~/dropbox.py status

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

Output:Up to date

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

~/dropbox.py lansync n

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

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

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

~/dropbox.py exclude list

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

追加のDropboxアカウントをリンクする方法

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

複数のDropboxアカウントをサーバーにリンクすることが可能です。 ただし、リンクするDropboxアカウントごとに追加のシステムユーザーが必要になります。 CentOSサーバーにユーザーを追加する方法がわからない場合は、このチュートリアルに従ってください:https://www.digitalocean.com/community/tutorials/how-to-add-and-delete-users-on-a-centos -7-server [CentOSでユーザーを追加および削除する方法]。

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

`+ / opt / dropbox / dropboxd +`を実行します。 以前と同様に、これはDropboxアカウントをサーバーにリンクするURLを出力します。

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

次に、 `+ / etc / default / dropbox +`を編集します:

sudo nano /etc/default/dropbox

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

/ etc / default / dropbox

DROPBOX_USERS=""

ファイルを保存して終了するには、「+ Ctrl-x 」、「 y 」、「 Enter +」の順に押します。

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

sudo service dropbox restart

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

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

Dropboxアカウントのリンクを解除する方法

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

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

sudo service dropbox stop

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

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

sudo rm -r ~//Dropbox

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

sudo service dropbox start

最後に、アクセスを完全に制限する場合は、https://www.dropbox.com/account#security [Dropbox Account Security page]にアクセスして、リンクされたデバイスを削除できます。

結論

これで、Dropboxクライアントがサーバーにインストールされ、実行されました。 これで、サーバーがDropboxアカウントにリンクされ、同期されるはずです。