rclone syncのドライランを実行する
sync --dry-runでrcloneの一方向ミラーをプレビューし、転送と削除の予定を確認してから実際のコマンドを実行します。
最終確認日
スクリーンショットは英語版の画面です。
rclone syncは2番目のパスを1番目のパスに合わせます。コピー先にしかないファイルは削除される場合があるため、毎回方向を確認し、同じパスの組み合わせをプレビューしてください。--dry-runを使うと、rcloneはコピー、置き換え、削除を実行せず、予定された処理を表示します。

--dry-runを外す前に削除予定をすべて確認してください。スクリーンショットを実物大で開く。フォークを使わずにrcloneを設定する
現在のrcloneリリースにはdosyaバックエンドが含まれています。dosya専用のフォークはインストールしないでください。標準の設定コマンドを実行します:
rclone config
選んだ方向に必要な権限を持つAPIキーを作成してください。アップロードと削除が行われる可能性のあるクラウドのコピー先には、フルアクセスと対応するワークスペースのロール権限が必要です。ローカルへのダウンロードのみに使うクラウドのコピー元には読み取り専用を使えます。キーをターミナルの履歴や共有ログに残さないでください。
新しいリモートを作成し、dosyaと名付けて、ストレージプロバイダーの一覧からdosyaを選択してください。入力を求められたら、対象のワークスペースIDとAPIキーを入力します。ミラーを計画する前にネイティブのリモートを確認してください:
rclone lsf dosya:
プロバイダー一覧にdosyaがない場合は、rcloneを更新するか、dosyaのrcloneドキュメントに記載された標準S3バックエンドを代替として設定してください:
rclone config create dosya s3 \
provider=Other \
access_key_id=dos_your_access_key \
secret_access_key=your_secret_access_key \
endpoint=https://api.dosya.dev/s3 \
region=us-east-1
rclone lsf dosya:WORKSPACE_ID
以降のコマンドはネイティブパスdosya:/mirror-checkを使います。代替S3ではワークスペースIDがバケットになるため、dosya:WORKSPACE_ID/mirror-checkを使ってください。
手順
-
rclone configを実行し、組み込みのdosyaプロバイダーを選択して、rclone lsf dosya:が動作することを確認してください。プロバイダーがない場合は代替S3を設定し、代わりにdosya:WORKSPACE_IDを一覧表示してください。 -
./sample-sourceのような内容の分かる小さなローカルのコピー元と、dosya:/mirror-checkのような分離されたクラウドのコピー先を作成してください。コピー先に既にあるものはすべてバックアップしてください。 -
ローカルのコピー元と
dosya:のコピー先を再帰的に一覧表示し、出力を保存してください:rclone lsf ./sample-source --recursive rclone lsf dosya:/mirror-check --recursive -
詳細な操作行を表示してプレビューを実行してください:
rclone sync ./sample-source dosya:/mirror-check --dry-run --progress -vv -
コピー、置き換え、削除の対象として表示されたパスをすべて確認してください。Skipped copy as —dry-run is setはシミュレーションであることを示します。コピー先にしかないファイルを残す必要がある場合は、停止して
rclone copyを使うか、そのファイルをミラーの外に移動してください。 -
フィルター、コピー元の内容、カレントフォルダー、コピー先を変更した場合は、プレビューを再実行してください。2回目の確認後に限り、
--dry-runを自分で外して実際のコマンドを実行してください:rclone sync ./sample-source dosya:/mirror-check --progress -vv

dosya:プロバイダーが含まれます。古いビルドの一覧にない場合もS3ゲートウェイを使えます。スクリーンショットを実物大で開く。削除と復元のルール
コピー元が空または誤っていると、コピー先のすべての項目が削除候補になります。フィルターもミラーの対象を変更します。--delete-excludedは除外されたコピー先の内容の削除を許可します。rcloneは通常、転送エラー後のコピー先の削除を避けますが、--ignore-errorsはその保護を緩めます。原因不明の予定を回避するために、どちらのフラグも追加しないでください。
パスを逆にするとリスクが変わります。このコマンドはローカルフォルダーをdosyaに合わせ、ローカルにしかないファイルを削除する場合があります:
rclone sync dosya:/mirror-check ./sample-download --dry-run --progress -vv
dosyaはコンピューターからのみ削除されたデータを復元できません。その方向での実行を承認する前に、独立したローカルバックアップを保持してください。ネイティブのdosya:コピー先への実際の同期では、削除対象の各項目が2回削除されます。最初のリクエストでdosyaのゴミ箱に移動し、2回目でストレージを解放するために完全に削除します。このバックエンドで削除されたコピー先だけの項目はゴミ箱から復元できないため、実際のコマンドを承認する前に独立したコピーを保持してください。
ドライラン自体は何も書き込まないため、元に戻せます。実際のコマンドはトランザクションではありません。後でエラーが起きる前に転送が成功する場合があり、再試行しても以前の変更は元に戻りません。
実行結果を検証する
コマンドの終了ステータスを記録し、コピー先を再度一覧表示して、どちらも変更せずにバイトを比較してください:
echo $?
rclone lsf dosya:/mirror-check --recursive
rclone check ./sample-source dosya:/mirror-check --download
終了ステータス0は、コマンドが残りのエラーを報告しなかったことを意味します。ファイルが転送された証拠にはなりません。ゼロ以外の場合、一部の処理が成功した状態で残ることがあります。再試行する前にdosyaのフォルダーを調べ、保存した実行前の一覧と比較してください。ネイティブバックエンドで削除された項目は、既にゴミ箱から完全に削除されています。
期待される結果
ドライランは両方のツリーを変更せず、正確な一方向ミラーの予定を表示します。承認後に実際の同期を実行すると、コピー先だけの項目を意図的に削除することも含め、コピー先がコピー元と一致し、rclone checkで内容の差異が見つからなくなります。
関連ガイド
この記事は役に立ちましたか?
評価の結果を読み込んでいます…
投票すると、回答を変更できるように、必要な投票用Cookieが最長180日間保存されます。
質問と回答
このガイドの手順について質問できます。質問は確認後に公開されます。
公開の質問には、アカウントの詳細、認証情報、非公開ファイルを含めないでください。これらについては 非公開サポート をご利用ください。
質問を読み込んでいます…
dosyaアカウントにサインインすると、質問を投稿できます。