
GUIなしで稼働しているLinuxサーバーにDropboxアカウントを同期する必要がある時が来るかもしれません。その時は、いくつかのスクリプトを使えば簡単に同期できるので、きっと助かるでしょう。
CentOS 7のヘッドレスサーバーでDropboxを起動して実行する手順を解説します。すべてコマンドラインで行いますので、入力する準備をしておいてください。
参照: すべての管理者が習得すべき最初の5つのLinuxコマンドラインアプリ
ユーザーにsudo権限を与える
Dropboxのインストールに進む前に、ユーザーにsudo権限を付与する必要があります。CentOSの初期状態では、ユーザーにsudo権限は付与されませんので、手動で設定する必要があります。以下の手順に従ってください。
- ターミナルから (ヘッドレスなので、サーバーへのシェルをセキュアにする必要があります)、suコマンドを使用してルート権限を取得します。
- コマンドgpasswd -a USER wheelを発行します( USER はsudo 権限を必要とする実際のユーザーの名前です)。
これでユーザーは sudo コマンドを使用できるようになりました。 exitコマンドで su ユーザープロンプトを終了し、作業の準備をしてください。
参照: Linus Torvalds がお気に入りのプログラミング用ラップトップを公開 (ZDNet)
ダウンロード、解凍、インストール
まず最初に、公式Dropboxクライアントをダウンロードする必要があります。ダウンロードするには、ターミナルウィンドウを開き、以下のコマンドを実行します(ユーザーのホームディレクトリから)。
curl -Lo dropbox-linux-x86_64.tar.gz https://www.dropbox.com/download?plat=lnx.x86_64
ファイルがダウンロードされたら、コマンドtar xvzf dropbox-linux-x86_64.tar.gzを使用して、ユーザーのホーム ディレクトリに解凍します。
Dropboxをアカウントにリンクするには、コマンド ~ /.dropbox-dist/dropboxdを実行します。注: dropboxdコマンドを実行するユーザーのホームディレクトリに、Dropboxアカウントのコンテンツが同期されます。
このコマンドを初めて実行すると(GUIなしでDropboxを実行しているため)、リンクが表示されます。そのリンクをブラウザにコピー&ペーストし、新しいアカウントを作成するか、(プロンプトが表示されたら)既存のアカウントにログインしてサーバーを追加します。Dropboxはユーザーのホームディレクトリ(サーバー上)に同期フォルダを自動的に作成するので、ほぼ準備完了です。
Dropbox の制御
残念ながら、ダウンロードしたDropboxクライアントにはサービスを制御する機能がありません。そのため、いくつか注意すべき点があります。
まず、Dropbox をサービスとして実行するように設定します。そのためには、以下の手順を実行してください。
- GitHub の内容を使用して、dropbox.serviceというスクリプトを作成します。
- sudo mv dropbox.service /etc/systemd/system/コマンドでそのファイルを移動します。
- GitHub の内容を使用して、dropboxというスクリプトを作成します。
- sudo mv dropbox /etc/init.dコマンドでそのファイルを移動します。
- sudo chmod +x /etc/systemd/system/dropbox.service /etc/init.d/dropboxコマンドを使用して、これらのスクリプトに実行権限を付与します。
次に、 nano /etc/sysconfig/dropboxコマンドを使用して、次の内容の新しいファイルを作成する必要があります ( USER は、Dropbox アカウントに同期する Dropbox アカウント ユーザーではなく、システム ユーザーの実際の名前です)。
DROPBOX_USERS=”ユーザー”
そのファイルを保存して閉じます。
sudo systemctl daemon-reloadコマンドで systemd をリロードし、 sudo systemctl start dropboxコマンドで Dropbox を起動します。起動時に Dropbox が確実に実行されるようにするには、 sudo systemctl enable dropboxコマンドを実行してください。
さて、Dropboxのコマンドラインインターフェースに実際にアクセスする必要があります。そのためには、以下のコマンドでPythonスクリプトをダウンロードしてください。
カール -LO https://www.dropbox.com/download?dl=packages/dropbox.py
chmod +x dropbox.pyコマンドを使用して、そのファイルに実行権限を付与します。
この時点で、 ./ dropbox.py statusコマンドを実行して、Dropbox が実行中かどうかを確認できます。Dropbox CLI で使用できるコマンドオプションは次のとおりです。
- ステータスDropboxD の現在のステータスを取得します
- Dropboxの帯域幅制限を設定する
- 助けを得る
- puburl Dropbox パブリックフォルダ内のファイルのパブリック URL を取得します
- 停止停止 Dropbox
- Dropboxが実行中かどうかを表示します
- Dropboxを起動する
- filestatus 1つまたは複数のファイルの現在の同期ステータスを取得します。
- ls は現在の同期ステータスとともにディレクトリの内容を一覧表示します
- 自動起動Dropboxを再起動すると自動的に起動します
- 同期からディレクトリを除外する
- lansyncはLAN同期を有効/無効にします
- sharelink Dropbox内のファイルの共有リンクを取得する
- プロキシDropbox のプロキシ設定
Dropbox がヘッドレス Linux サーバーと同期を開始しました。必要なファイルを Dropbox アカウントにドロップするだけで、ヘッドレス サーバーに同期され、すぐにアクセスできます。