サーバーとクラウドストレージ間でファイルを同期するためのコマンドラインインターフェイスを使用して、CentOS8LinuxサーバーにDropboxヘッドレスをインストールする手順を学びます。
Dropboxは、Windows、Linux、macOS、Android、iOS用のクライアントアプリケーションを提供して、クラウドとローカルデバイス間でファイルを同期する人気のクラウドサービスです。ただし、グラフィカルユーザーインターフェースを備えていないコマンドラインサーバーを使用している場合でも、サーバーとクラウド間でファイルを同期するためのDropboxクラウドストレージのメリットを享受できます。このチュートリアルでは、GUIを使用せずにCLIインターフェイスのみを使用してCentOS8/7サーバーでこれを行う方法を示します。
CentOS8サーバーのコマンドラインにDropBoxヘッドレスをインストールする
SSHサーバーを起動します
デフォルトでは、OpenSSHサーバーはCentOS 8 Linuxにすでに存在するため、インストールする必要はありません。ただし、そうでない場合は、次のコマンドを使用して取得します。sudo dnf install openssh-server
SSHサーバーを起動するには、そうでない場合、コマンドはsudo systemctl start sshd
です。
Dropboxのインストール中に、このクラウドサービスで使用しているログインアカウントへのリンクが提供され、ブラウザが必要になるため、SSHを使用しています。したがって、CentOS 8 CLIサーバーから、それをコピーして他のシステムのブラウザで使用するのは簡単ではありません。したがって、SSHを使用してCLIサーバーにアクセスするには、GUI Linuxデスクトップでコマンドターミナルを起動するか、Windowsでコマンドプロンプトを起動することをお勧めします。ここでは、WindowsでMobaXtermを使用して、SSH経由でCLIサーバーにアクセスしています。
他のLinuxまたはウィンドウシステムを使用している場合は、コマンドターミナルを開き、次の構文を使用します。
sshユーザー名 @ server-ip
たとえば、CentOS 8サーバーのIPが192.168.0.105で、ユーザー名がrootの場合、SSHにアクセスするためのコマンドは次のようになります。
ssh[メール保護]
システムの更新
サーバーにアクセスできるようになったら、既存のパッケージを更新して、すべてが最新であることを確認します。
sudo dnf update
または、更新したくない場合は、次のコマンドを使用してリポジトリキャッシュを再構築します。
sudo dnf makecache
Wgetのインストール
さらに進んでCentos8または7にヘッドレスドロップボックスをインストールする前に、まず、getWgetツールでコマンドラインを使用してパッケージをダウンロードします。
sudo dnf install wget
ヘッドレスDropboxデーモンをダウンロードして解凍します
次に、以下のコマンドをコピーして貼り付けます。これにより、Dropboxデーモンのアーカイブフォルダーがサーバーにダウンロードされるだけでなく、サーバーのホームディレクトリにある「dropbox-dist」(隠しフォルダー)フォルダーに抽出されます。
cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -
Dropboxデーモンを実行する
ダウンロードした後、デーモンを実行してヘッドレスDropboxサービスを開始します。このサービスは、ファイルを同期するためのフォルダーをホームディレクトリに作成するだけでなく、アカウントにログインするためにブラウザーに貼り付ける必要のあるリンクも提供します。
~/.dropbox-dist/dropboxd
注:次のようなエラーが発生した場合:
ImportError: libXxf86vm.so.1: cannot open shared object file: No such file or directory !! dropbox: fatal python exception: ['Traceback (most recent call last):\n', ' File "dropbox/client/main.pyc", line 264, in <module>\n', ' File "dropbox/foundation/navigation_service/factory.pyc", line 22, in <module>\n', ' File "dropbox/foundation/navigation_service/navigation_service_impl.pyc", line 57, in <module>\n', ' File "dropbox/foundation/html_views/electron/manager_factory.pyc", line 14, in <module>\n', ' File "dropbox/foundation/html_views/local/common/manager.pyc", line 33, in <module>\n', ' File "dropbox/client/features/model_registry.pyc", line 13, in <module>\n', ' File "dropbox/client/features/generated_models.pyc", line 308, in <module>\n', ' File "dropbox/client/features/previews/view_anchor.pyc", line 106, in <module>\n', ' File "<_bootstrap_overrides>", line 153, in load_module\n', ' ImportError: libXxf86vm.so.1: cannot open shared object file: No such file or directory\n'] (error 3)
それなら心配しないでください。サーバーで見つからなかったライブラリ名をコピーしてインストールするだけです。このようなエラーは、異なるライブラリ名で複数回発生する可能性があります。毎回コピーして、エラーが解決するまでインストールしてください。 たとえば、 上記のエラーで、システムで使用できないlibXxf86vmというライブラリを取得しました。したがって、インストールするには、名前をコピーして dnf install
dnfインストールlibXxf86vm
アカウント接続リンクをコピー
デーモンを実行すると、リンクが提供され、それをコピーします。コマンドが停止する場合は、リンクを再度コピーした後、~/.dropbox-dist/dropboxd
を使用してコマンドを実行します。
ブラウザを開いてこのリンクを貼り付けると、ドロップボックスはあなたの資格情報を要求し、次にサーバーまたはPCをそれにリンクする許可を求めます。そうしてください。
完了すると、SSH経由でCentOS8または7サーバーを操作しているコマンドラインインターフェイスで同じことが点滅します。
Dropboxシステムサービスを作成する
デフォルトでは、このヘッドレスクラウドクライアントはシステムブートでは実行されず、デーモンがユーザーによって手動で実行されるまで、そのサービスは存続します。したがって、Dropboxデーモンのバックグラウンドでアクティブな状態を維持するシステムサービスを作成する必要があります。そのために、GitHubですでに利用可能なSystemdサービスファイルを使用します。
このファイルの内容は次のとおりです。
[Unit] Description=Dropbox as a system service After=local-fs.target network.target [Service] Type=simple ExecStart=/usr/bin/env "/home/%i/.dropbox-dist/dropboxd" Restart=on-failure RestartSec=1 User=%i [Install] WantedBy=multi-user.target
ダウンロードしてSystemdディレクトリに保存するには、以下のコマンドを実行します。
sudo wget -O /etc/systemd/system/[email protected] https://raw.githubusercontent.com/joeroback/dropbox/master/dropbox%40.service
次に、DropBoxヘッドレスシステムサービスを有効にして開始します
ブートレベルでサービスを有効にするコマンドは次のとおりです:
sudo systemctl enable [email protected]$(whoami)
同じことを開始するには
sudo systemctl start [email protected]$(whoami)
ステータスを確認します:
sudo systemctl status [email protected]$(whoami)
アクセス同期フォルダ
これで、Dropboxフォルダー内に作成されたファイルとフォルダーはすべて、自動的にクラウドに同期されます。その逆も同様です。
yopruホームディレクトリの下に作成されたこのフォルダにアクセスするには、次のように入力します。
cd ~/Dropbox
Ubuntuを使用していて、その中で上記のチュートリアルを実行したい場合は、「Ubuntu20.04LTSにDropboxGUIまたはヘッドレスをインストールする方法
」を参照してください。