\r\n\r\n

Linuxでrcloneを使用してgoogleドライバをバックアップする方法

googledriveの公式Linuxクライアントはまだありませんが、rcloneユーティリティを使って、コマンドラインから直接googledriveにバックアップすることができます。

googledriveの公式Linuxクライアントはまだありませんが、rcloneユーティリティを使ってコマンドラインから直接googledriveにバックアップすることができます。この方法を紹介します。

linuxのgoogleドライブはどこにあるのでしょうか?

2012年にLinuxのサポートが "coming soon "と約束されているにもかかわらず、GoogleがGoogleDriveのネイティブLinuxクライアントを作成する気配はない。InSync、overGrive、ODriveなどの非公式なサードパーティソリューションがあり、GNOMEのFilesなど、Google Driveとの統合を可能にするファイルブラウザもある。

サードパーティアプリケーションは商用製品であり、直接購入または購読が必要です。これらはよく機能し、費用もあまりかかりません。実際、overGriveには、限られた機能を無料で提供するフリー版があります。

しかし、コマンドラインからバックアップを作成・実行したい場合はどうすればよいのでしょうか。あるいは、その機能をスクリプトに統合する?これはすべて、rcloneという素晴らしいアプリケーションのおかげです。実際、rcloneを使用すると、40以上の異なるクラウドソリューションにファイルをバックアップ、ダウンロード、同期することができます。まるでクラウド上の同期のようです。

rcloneのインストール

デフォルトでは、Linuxコンピュータにrcloneはほぼ間違いなくインストールされません。幸いなことに、すべてのディストリビューションで実行可能なインストールスクリプトがあります。インストールにはcurlを使用します。この記事の調査に使用したパソコンでは、Fedora 31とManjaro 18.1.0にはcurlが既にインストールされていますが、Ubuntu 18.04 LTSにはインストールする必要があります。

Ubuntuの場合、以下のコマンドを実行してインストールします。

sudo apt-get install curl

curlをインストールした後、以下のコマンドでrcloneをインストールします。

curl https://rclone.org/install.sh | sudo bash

rcloneのインストールが完了すると、成功のメッセージが表示されます。

これにより、Linuxコンピュータにrcloneプログラムが既にインストールされています。次に、インストール作業を実行し、Google Driveにアクセスするためのrcloneを検証します。

リモート接続の作成

遠隔地のクラウドサービスに接続することを、rcloneの世界では「リモート」と呼んでいます。Google Drive用に作成する必要があります。以下のコマンドでrcloneの設定処理を開始します。

rclone config

設定作業には多くの問題がありますが、がっかりしないでください。多くの問題は、デフォルト値のままで、「Enter」キーを押すだけで受け入れ可能です

rcloneは、リモートコントロールが設定されていないことを教えてくれます。n "を押し、"Enter "を押すと、新しいリモコンが作成されます。名前を入力するように促されます。私たちは「Googleドライブ」と呼んでいますが、呼び方は何でもいいんです。

ロングメニューでは、リモート接続を作成するストレージの種類を選択することができます。

リストをスクロールして、Googleドライブのエントリーを見つけ、その番号をメモします。

この例では、13番であることがわかります。ストレージの種類としてこれを入力し、"Enter "キーを押します。

Google AppsのクライアントIDの入力を求められます。「Enter」キーを押して、デフォルトを受け入れます。

その後、Google Appsクライアントのパスワードを入力するよう促されます。

ここでも「Enter」キーを押すだけで、Google Drive上で実行した場合のrcloneのスコープを聞かれます。"1 "を押し、"Enter "を押す

ルートフォルダーのID」は、"Enter "キーを押すだけです。

Service Account Credentials "のプロンプトで、"Enter "を押します。

Edit advanced configuration "プロンプトで、"Enter "を押すだけ。"Use automatic configuration "メニューで、"y "を押し、"Enter "を押すだけ。

これにより、rcloneがGoogle Driveと通信し、ブラウザが起動し、rcloneにGoogle Driveと対話するための権限を付与することができます。

ブラウザのウィンドウで、使用するGoogleアカウントをクリックします。

許可」ボタンをクリックして、rcloneがGoogle Driveにアクセスすることを許可します。

ブラウザーを閉じて、「ターミナル」ウィンドウに戻ることができます。

Configure this as a team drive "のプロンプトで "n "を入力し、"Enter "キーを押します。

"はい、編集、削除 "メニューに "y "と入力し、"Enter "キーを押す

最後のメニューで、"q "と入力し、"Enter "キーを押します。

バックアップスクリプト

rcloneアプリは非常に機能が豊富です。それはそれでいいのですが、選択肢が多いということです。これから紹介するコマンドは、ローカルコンピュータからGoogle Driveにファイルをコピーするものです。これは、クラウドへの一方向のコピーであり、Google Driveとローカルコンピュータ間の双方向の同期ではありません(rcloneで可能)。基本的なオフサイトバックアップとして利用しています。

テキストエディタに入力(またはコピー&ペースト)して、コンピュータに保存してください。私たちはgbk.shと呼んでいますが、あなたが好きなように呼ぶことができます。

#!/bin/bash /usr/bin/rclone copy --update --verbose --transfers 30 --checkers 8 --contimeout 60s --timeout 300s --retries 3 --low-level-retries 10 --stats 1s "/home/dave/Documents" "google-drive:LinuxDocs"

パラメータの意味は次のとおりです。

  • コピー:ローカルコンピュータからリモートストレージにファイルをコピーし、リモートストレージに既に存在するファイルをスキップします。
  • -Update: ローカルコンピューター上のファイルよりも新しい時刻に変更されたリモートストレージ上のファイルをスキップします。
  • -verbose: 転送された各ファイルに関する情報を提供します。
  • -転送量 30:並列にコピーするファイル数を設定します。
  • -チェッカー8:いくつの「チェッカー」を並列に実行するか。チェッカーボードグリッドで進行中の転送を監視する。
  • -contimeout 60s: 接続タイムアウト。rclone がリモートストレージへの接続を試行する時間を設定します。
  • -タイムアウト 300 秒:この時間内に通信がアイドル状態になった場合、通信が切断されたと見なし、接続を切断します。
  • -再試行3:エラーが多い場合、コピー操作全体が再スタートされます。
  • -低レベル再試行 10:低レベル再試行は、単一のHTTPリクエストのような失敗した操作を繰り返すことを試みます。この値は、再試行の数の制限を設定します。
  • -stats 1s:rclone は転送されたファイルの統計情報を提供します。これは統計情報の更新頻度を1秒に設定します。
  • "/home/dave/Documents": リモートストレージにコピーしたいローカルディレクトリです。
  • "Google-drive: LinuxDocs": リモートストレージ内の対象ディレクトリ。google drive "は、rcloneの設定シーケンスでこのリモート接続に指定した名前であることに注意してください。また、リモートストレージ名とディレクトリ名を区切るコロン「:」に注意してください。サブディレクトリは、通常の「/」フォワードスラッシュで区切られます。ターゲットディレクトリが存在しない場合は、作成されます。

これらの値の一部はデフォルトですが、議論できるようにここに記載しました。こうすることで、値を変更する必要がある場合、どのパラメータを調整すればよいかがわかります。

以下のコマンドで、スクリプトを実行可能な状態にします。

chmod +x gbk.sh

バックアップスクリプトの実行

バックアップスクリプトは、ドキュメントフォルダをGoogle Driveにコピーします。ドキュメント」フォルダの中に、楽譜一式があります。

以下のコマンドで、バックアップスクリプトを起動することができます。

./gbk.sh

統計情報を1秒ごとに更新すること(--stats 1s)と、詳細な情報を出力すること(--verbose)をお願いしました。画面出力が多いのは当然といえば当然です。新機能の詳細出力をオンにすることで、問題を発見しやすくなることがよくあります。うまくいっていると感じたら、出力を下げればいいのです。

最終的には、60個のファイルがエラーなく転送されたことを示すサマリーが表示されます。

それでは、私たちのGoogle Driveで、クラウドストレージがどうなっているのか見てみましょう。

LinuxDocs」ディレクトリが作成されたので、期待できそうです。ダブルクリックして中を確認すると、すべてのファイルがGoogle Driveに転送されていることがわかります。

rcloneを使用してgoogle drive上のファイルを表示する

ターミナルウィンドウからrclone:を使って、Google Drive上のフォルダを表示することができます。

rclone ls google-drive:/LinuxDocs

氷山の一角

このようなレプリケーションをコマンドラインから直接実行できるのはありがたいですね。クラウドストレージの利用をスクリプトに統合し、バックアップスクリプトの実行をcronでスケジュールすることができます。

rcloneは非常に豊富なコマンドを備えており、そのドキュメントと素晴らしいウェブサイトをチェックすることをお勧めします。ここでは、まだ表面しか見ていませんが、少し読んで、rcloneで遊んでみると、その努力の何倍もの報酬が得られるでしょう。

技術的に言えば、これは本当の意味でのバックアップではありません。ファイルやデータのオフサイトリモートコピーであることは間違いないのですが、あくまでファイルのコピーに過ぎません。バージョン管理など、真のバックアップソリューションが提供する機能はありません。

そのため、rcloneは他のバックアップ技術と併用してください。既存のバックアップの仕組みのもう一つの層として、rcloneは自宅やオフィスから地理的に離れた場所にデータを保存する簡単な方法です。これはきっと、いいことなんだろう。

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ